Ask Slashdot: What Is the Best Distro For Linux Lessons?
MBtronics writes "I work at an embedded hardware/software company and we are currently moving all our products for Windows CE to Linux. Our core development team already uses their favorite distro for development, but the rest of the developers are still working on Windows. We are going to give a series of Linux lessons (from 'what is Linux' to installing, using and developing) for everybody in the company who is interested (including non-developers). They will be allowed to choose their own distro, but we will certainly get requests for recommendations. My question to the Slashdot crowd: what distro (and window manager) do you think is the best to teach Linux to the generic public? We are currently thinking of Ubuntu, Fedora or Mint."
Ubuntu is the most common, with the most online forums and such... I would recommend that one.
I think it would be openSUSE... #germanophilia
WARNING! This girl exceeds the MAXIMUM SAFE standards established by the FDA for BRATTINESS
Why would you teach a different distro than the one you currently run internally?
...but why ask a question you already know the answer to? Those are the three I would have picked, and likely for the same reasons. Further, if you are doing lessons, then make sure it is distros you are familiar with enough to help and not fumble around.
Silence is a state of mime.
Slackware for the win!
Chaos maximizes locally around me.
Slackware is great if you want to learn how Linux works - not how one specific distribution does things for you.
Alex, I'll take keybindings not used by Emacs for $400....
If you're bringing people over from the Windows world, please encourage KDE. It's a pretty good take on the "taskbar w/ a start button" GUI-style and will be immediately familiar to most folks. One word of advice: "Classic Menu Style" for the launcher will help keep things much more traditional.
I went to eat some animal crackers and the box said, "Do not eat if seal is broken." I opened the box and sure enough..
If you're trying to teach them to use Linux for general purposes, I'd go with Mint. It passes the Aunt Tilly test with flying colors in my experience.
If you're trying to teach them about Linux and how stuff works, Slackware or Arch would be the choice.
upon the advice of my lawyer, i have no sig at this time
If you are paying for their time, a question I would ask is do you want to solve problems once, or over and over with all the permutations of each of your distros and versions?
I would recommend against Fedora unless you want to do fresh installs at least once a year (twice a year to follow each release). I would recommend CentOS (7-10 year install length).
Whichever you go with, I would standardize on a single distro. Then when you run into an issue you solve it once, and not corner cases that each distro have.
It really is like learning/deploying/testing 3-4 flavors of Windows all at once (Win2000, WinXP, Vista, Win7) and that's not even introducing 32bit vs. 64bit issues, and actual distro version differences (EL5.x vs. 6.x, etc.).
Let people dink and learn the Linux distro of their own choice on their own time. Just my two cents.
If you get paid by the hour, then Gentoo is the way to go. Pro-tip: use the slowest machine.
It really depends on what you're teaching. If you want to teach them an enterprise product, then RHEL/CentOS/Fedora. If you want to teach them a desktop product, then Ubuntu. I know this probably wouldn't be for the poster, but for others who felt comfortable with Windows and would just want to learn basic Linux commands, dare I commit heresy here, might I suggest Cygwin?
How much time do you have to invest in this project, and how deep does their knowledge need to be?
I learned more from doing a slackware install (back in about '98 or so) then from all my experience with other Linux installs. I've heard people say similar things about Gentoo/Portage, so YMMV, but a distro that more or less forces people to do things by hand will both teach them, and teach them respect for, the system. You mention two systems that use apt, and one that uses rpm... Pick one architecture, your IT staff will thank you later.
You may simply want to give them an up-to-date Ubuntu (or Mint) that has several window manager/desktop environments installed, and let them experience the different UI flavors available... assuming that your company hasn't made the decision already. As someone else not-so-shallowly pointed out, you should have made a decision already, so train them on the distro your core dev team is using! Seriously, there are major support implications of allowing joe user to run off the flavor-of-the-month they just downloaded on a whim from distrowatch...
I'd go with CentOS.
It's not primarily a mainstream desktop Linux distro but you're in a work environment dealing with a embedded Windows -> Linux transition, so it doesn't matter. For this reason you don't have to deal with the bullshit UI fucking around that seems to be going on in the Linux ecosystem right now, plus it's a very stable and clean distro given its relationship with RHEL. It's our distro of choice for our VME single-board computers.
I despise Linux on the desktop at home but at work, for our embedded work, I haven't found anything that works better or more reliably (and still remains free).
I remember when Linux was good... too...
I think it depends on exactly what you want to teach your general public. If you want to go down and dirty with installation & good documentation then maybe something like "gentoo" (or it's derivatives).
Otherwise if you just want to familiarize them with a basic gui interface similar to what they're used to and also simple maybe try something like Lubuntu or Xubuntu? Ubuntu's Unity may be too radical a departure for this (yet).
Mint is cool but stability might be a concern depending on the flavor especially if you want the old-school gnome paradigm.
Just my 2 cents..
Maybe it's not the kind of answer you were expecting, but FreeBSD is great example for teaching how operating systems work. It's not very different from Linux but is very simple and clean despite doing little to hide its inner workings.
"They will be allowed to choose their own distro,"
don't do that, it's going to be a nightmare.
The Kruger Dunning explains most post on
None.
You don't administer the machines as everyone uses their favorite distro, it is not your responsibility.
If you give developers a choice for platform, anything will do as long as they accomplish what they are hired for. Linux distros are a matter of taste, each with benefits and downsides. Choosing is part of the experience.
A mis-mash of various distros inhouse will make backups and other admin tasks more complicated. Choose a distro+version and then mandate its use throughout the company. Backups, package management, user management are all different between distos.
If you are putting your products on a specific type of linux (embedded), then use a close relative of it.
I do not recommend Ubuntu variants for learning. Fedora would be better. Dont forget to learn about GPL if you are embedding!
I prefer Ubuntu, but cut my teeth on Debian. You can't beat Debian's package manager, which continues to be used by Ubuntu and other distros in some form or another.
I am literally 3000 tokens away from the chaotic crossbow --Stephen
I use Edubuntu. Of course I realize that I'm talking about a classroom with kids, and that probably isn't your situation. But the amount of learning utilities and games with Edubuntu can't be beat anywhere else that I've found.
if you learn to use Debian you learn Debian, if you learn to use Fedora you learn Fedora, but if you learn to use Slackware you learn Linux
Politics is Treachery, Religion is Brainwashing
based on my current experience:
at least three linux flavours, at least two BSD flavours, and add in an additional 'classic' UNIX, like Solaris, IRIX, AIX, True64 or HP/UX, and don't forget OS-X.
focus on the differences, not on the similarities. Genetic differentiation is what counts, not the similarities.
'Distro-agnosicm' is what counts.
Notice the "X" in front. Not Ubuntu - but Xubuntu. The US resembles Windows more than any other. It's highly customizable too, and you don't need to do a bunch of command line hacks to make it happen.
This is the million dollar question, but also comes with a price tag. If you want support, then you want Redhat. Support includes more than you would get with Mickeysoft for much less money.
RHEL gets you a few other things besides a check book full of support. There are far more experts with Redhat than any other distro (at least in the US). This means if you can't afford, or don't want to pay Redhat you can still find help. Good luck finding that "Gentoo" or "Slackware" expert when something breaks, or good luck affording them since he's booked by some other schlep that went with that brand.
Lets face a simple fact. At home, you can use what ever you want. Who cares about down time, bugs, learning curves, etc... none of that matters. When it comes to business, you need to have something with a support chain. You also need a fall guy when the shit hits the fan.
At work, we strictly run RHEL. Kickstarts include the full KDE suite, desk top is changed to KDE and KDE's Kiosk features are used to manage the desktops and give a common look and feel. RHEL will include everything you want from the standard linux stack, though you may have to get both a desktop and server set of media.
-The wise argue that there are few absolutes, the fool argues that there are no probabilities.
I agree with you -- just tweaking with a small amount of aditional advice.
I use Ubuntu and TinyCore at work, and Debian with KDE at home.
I think the real issue is not the distro, so much, as desktop environment. Gnome is for people who really aren't too familiar with Linux, IMO. It hides much of the complexity/functionality to provide a simplified interface. KDE provides a lot more control, at the expense of simplicity.
Ironically, in the local LUG I belong to http://mhvlug.org/ the majority of the knowledgable people in the group use Ubuntu and Gnome, and I seem to be the only KDE user as well as the only Debian user. Even stranger, several core people in the group are switching to Unity. We're having a "Desktop Shootout" meeting this Wednesday (March 7), and the current Desktop Environments to be discussed are KDE, Unity, Cinnamon (Gnome2 shell on top of Gnome3, which is what Linux Mint 12 uses), and fvwm.
There's others, like Unity (which I despise).
Still with you there. ;-)
I'm not conversant with most of them, so, unlike many of my brethren here, I'll refrain from commenting on them.
Of the two, I prefer KDE. I can set a system up the way I want it to work easily enough.
This is the point where I have a suggestion: when you tell others about KDE4, tell them to turn off the Strigi searching in the "Desktop Search" in System Settings. The 6+ background "nepomukservices" processes that start searching through the user's home directory make KDE4 immediately very sluggish and is what pushes a lot of people away from KDE4 and drop it as an option, because "it makes my computer run like shit." KDE4 is really a wonderful environment to work in, and I'd like to see more people be able to find that out and experience it for themselves without the burden Strigi puts on them by default.
At work we use Ubuntu/Gnome. I do not like it at all - clumsy in the way it handles multiple desktops, for one thing.
I haven't yet tried Gnome3... I should probably go do that. When I've had to use Gnome2 I was able to deal with it and found it at least usable.
That said, if you do want to go KDE, Ubuntu seems to be moving away from KDE, so you may not want to go Ubuntu.
Now, as to distro, Debian has a reputation for being stodgy, and never releasing anything in a timely manner. OTOH, their stable releases are rock solid. IIRC, Ubuntu has a direct relationship with Debian's unstable version.
Finally, I prefer Debian's attitude towards separating free as-in-beer software from free-as-in-speech software. It matters to me, it may not matter to you.
When it comes to Debian Stable I think everything above is correct.
However for Debian Sid, i.e. Debian Wheezy/Unstable, Debian "releases" new packages about every 4 hours. And when running "Debian Unstable", you get the power and support of Debian at the same time as getting something 6 months newer than Ubuntu. Hard to beat. ;-) If you ever want to try running Debian Sid/Unstable sometime, I suggest adding the "apt-listbugs" package, which will warn you of impending doom at update/upgrade time if someone has filed a high severity bug on a package you're about to install. :-)
The qestion shoud be something like, "What distro would you use to teach (x)..?" What you are going to teach and the criteria for teaching it are more important than the software version.
If you are going to teach Linux administration, I would suggest OpenSuse, Debian, RedHat or Fedora. If you want glitch-free production systems, use something that has universal appeal and stay away from Ubuntu and Mint. (My experience is that they change too much from one release to another, administration tools are not standard, and, although installing some things like LAMP is a snap on Mint, advanced administration takes too much time. My list consists of distros I would never use again because I have work to do and I'd rather not spend a lot of time looking for the exotic configurations that make my distro work. (Top of the list: Ubuntu and CentOS, followed by Mint, Debian Mint and Fedora.) I prefer Debian, but I would go with RHE or OpenSuse without crying. I do development work on multiple hybrid systems that may require computer-machine interfaces, but you should match your requirements to your audience' needs.
"The mind works quicker than you think!"
I'd like to throw Arch Linux in the mix because I haven't seen it mentioned yet... Arch brings in the best mix between easy to use, being vanilla, great performance and being modular and customizable...
- rolling release
- simple, fast, yet powerfull enough package manager
- building packages from source with one command, then installing them with one command
- very modular: you only get what you want and what are absolute dependencies for what you want
- pretty vanilla configuration files, file system layout and such
- you have to learn some to get up to speed with it though... that is: standard shell usage, standard configuration files and... hm.. that's it