LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Distributions (http://www.linuxquestions.org/questions/linux-distributions-5/)
-   -   Distro For Development Workstation? (http://www.linuxquestions.org/questions/linux-distributions-5/distro-for-development-workstation-4175444051/)

madcow2021 01-03-2013 08:19 PM

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.

kbp 01-03-2013 08:34 PM

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.

madcow2021 01-03-2013 08:38 PM

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.

kbp 01-03-2013 08:42 PM

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).

madcow2021 01-03-2013 08:59 PM

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.

kbp 01-03-2013 09:46 PM

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.

madcow2021 01-03-2013 09:49 PM

So RHEL/CentOS would be a good bet?

wigry 01-04-2013 04:16 AM

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.

kbp 01-04-2013 06:49 AM

Quote:

So RHEL/CentOS would be a good bet?
.. no, I wouldn't use a server distro on a pc, chances are half your hardware wouldn't work - if you like the RH family then try Fedora.

madcow2021 01-04-2013 11:00 AM

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?

wigry 01-04-2013 11:13 AM

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)

madcow2021 01-04-2013 11:57 AM

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.

wigry 01-04-2013 12:17 PM

Yes the package management is the thing that sets Slackware apart from all the rest. You either love or hate it.

michaelk 01-04-2013 12:19 PM

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).

Valery Reznic 01-04-2013 03:35 PM

Quote:

Originally Posted by madcow2021 (Post 4862476)
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.

How you are going to distribute your whatever your developed?
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


All times are GMT -5. The time now is 10:27 PM.