Ideal Linux System for Newbies?
spiffyman asks: "In the next year, I'll begin advanced work in mathematics, and I'll also be upgrading my desktop box. In light of the advantages of Linux and FOSS in the area of science and mathematics, I want to convert from a Windows system to a dual-boot one with Linux. Primary tasks aside from math/logic activities will include learning intermediate programming, web maintenance, some computational linguistics (in Python), and LOTS of LaTeX work for my publishing activities. What do Slashdot readers recommend in terms of hardware, OS, software, and perhaps reading for a quasi-power Windows user (with no previous Linux experience) to convert to an all-Linux system?"
This answer shows why the question is nonsensical on its face. No one can tell you what distro is best for you. Everyone has a different personality. For me, Slackware is the ideal distro for a newbie. But then, I like to read up on any product before I use it. So I thought it was easy to install and now it is very easy to administrate. It has lower overhead from all of the bells and whistles that some of the other distros have included. There is no dependency hell that can be so frustrating to a newbie. If you stay away from the auto updaters and read the changelogs, you will never have a broken system. If you are like a lot of the Windows users that come over to Linux, however, you will probably be better served by one of the other distros. The majority of them want to run the installer CD and then just have everything be set up and work. Of course some of them become so frustrated the first time they run into a problem and have no idea on how to fix it, they run back to Windows. But good luck to you.
Forget everything you know about Windows. Linux is not Windows even if some of the GUI environments are starting to resemble aspects of them. Linux is closer to the Unix ideal of MANY MANY MANY tools that do one thing really well and need to be intertwined with other things to do more. As a non-programmer, I find Linux much easier to customize than Windows in terms of actually building new functionality. This is not something easily accomplished on Windows unless you want to get a Devel kit. In Linux it's practically a survival skill. Take a look through some of my Slashdot Journal Entries for examples of how I accomplished some interesting things with Linux that would have been nearly impossible with Windows.
-"...bad old ideas look confusingly fresh when they are packaged as technology" - Jaron Lanier (Digital Maoism on Edge.o
Try vmware first. It will let you run a virtual system in a window on top of windows, so you won't have to reformat your drive, or repartition, or do anything like that. It's a very inobtrusive way to get started.
The virtualization penalty in terms of performance is very slight, and you don't have to worry about drivers at all, which is huge, especially if you're new to linux, and haven't selected your hardware with linux in mind.
Which distro depends a lot on the specific apps you want to run. As you probably know, linux doesn't have universal installers the way windows does -- packages have to be rolled up for your specific distro. (They don't *have* to be, but it's a lot easier if they are.) I don't use TeX often, but I think it should be pretty widely avaialble on most distros. Python is ubiquitous, you won't have any trouble anywhere.
I tend to think of apt as the "killer app" of linux. You just ask for an applicaiton, and it downloads and installs automatically. Not all distros have it -- it's something that exists in distros that are part of the debian family tree. Ubuntu is a debian based distro, and so it has apt.
So Ubuntu is really the safe answer.
There's a fair amount of stuff that doesn't work out of the box in Ubuntu -- almost always for licensning reasons. Software to play multimedia files often falls into this category, and it's sort of a pain to get all of that set up, and things like flash for your web browser don't work out of the box either.
So my advice to you would be to do virtualization for your math stuff with unbuntu, and to stick to the host layer windows install for multimedia stuff. Once you know your way around linux, you can take the plunge and go all linux. But this way, you never have a machine that won't do whatever you need it to do.
SuSE is in disfavor now for political reasons (fights over licensing, and I'm pretty down on them myself), but if you want a really slick desktop, it's hard to beat. It's better for multimedia after the initial install, and it tends to work better out of the box generally. There are lots of little details that are handled better.
My main problems with SuSE are mostly ideological now, and those problems are severe enough that I wouldn't use it. So I don't want to downlplay the political stuff, it's real, and it's important, and I think that Novell is on the wrong side of it. But one of the reasons the fight with Novell is so painful is that very shortly before the problem emerged, they came out with what were pretty much the most beautiful linux desktops ever.
My other problem is the lack of apt, the package manager, which you really, really want, even if you don't realize it now. Life without apt can't really be called living.
Finally, if you're in a math department somewhere, ask around and see what other people are using. Because the single most valuable thing for you as a new user will be someone you can ask for help.
- a Linux host will perform better, will be more malware resistant and, perhaps, be more robust;
- if you are buying a brand new system, driver support may be better under Windows (Linux in a virtual machine will not care about the host hardware drivers);
- if you go 64-bit, Linux is the best choice of host OS.
As others have suggested, Ubuntu is a sound choice of Linux distribution. I am going to blow my karma by noting that SUSE Linux Enterprise Desktop is even better if you are willing to give Novell some money.Before Ubuntu, I tried Red Hat (this was pre-Fedora), SuSE, Debian, Knoppix, Gentoo (with the help of a friend who knew what he was doing), and Mandrake (as it was then known.) All of them had serious issues--mostly unrecognized hardware, but a couple couldn't even make it through installation (for example, Knoppix would hang no matter what I did.) I was a newbie, but I wasn't utterly helpless... I knew my way around a shell. With each distro, I spent several days troubleshooting the problem and got nowhere. I *wanted* to use Linux, but I simply couldn't afford to invest so much time making the basics work. There's a huge difference between a little tinkering in my spare time (which I was looking forward to) and trying to live without a functional network card.
And then, along came Ubuntu and EVERYTHING JUST WORKED. Obviously, your millage my vary (some people say that Ubuntu has given them nothing but headaches yet e.g. MEPIS is a dream) and I'm sure Ubuntu's improvements have since been incorporated in all of those other distros I tried, but Ubuntu's philosophy and their large community of helpful users has me sold. Virtually every single niggling little problem I had in 5.04 (the first Ubuntu release) has been resolved. I've installed Xubuntu on my mom's old laptop and she loves it (and unlike Windows, it's virtually maintainance-free.)
If you do encounter problems after installing Ubuntu, just check out ubuntuforums.org--I've installed it in half a dozen computers now, and virtually every problem I've ever encountered has been easily solved by following a step-by-step guide some kind soul has posted.
Ubuntu really is "Linux for Human Beings."
Well, that really depends on why the person is looking for a Linux system. If it's someone who's looking to get into desktop Unix (or just looking for an alternative to Windows) and doesn't realize that Linux isn't the only player in town, then it may be worth mentioning OS X or FreeBSD. At the moment, OS X is my current favorite desktop Unix in all respects except politics so I think it does deserve mention.
Now if the person needs to have something that works with existing hardware or specifically wants Linux for political reasons, then it's different and it's not worthwhile to mention other OSes.
If the submitter never tries linux, how would they supposed to find out when it *would* be better for them? I think the description shows clearly he has reason (working with latex and python, and the platform is popular in the field he is working more into).
If they have the time and resources to evaluate a platform, particularly one that enjoys fair popularity in their field, they should do so.
In fact, I would recommend delaying a Windows license purchase on the new system entirely, unless transitioning his existing license from his old desktop. Leave Windows on the older system and see if Linux can fit the bill more than he realizes. Windows is not free by any legal measure, so already there is benefit migrating to a free platform and save a fair chunk of money (even XP home OEM is 90 bucks right now)..
XML is like violence. If it doesn't solve the problem, use more.
I fail to see how having RPMs and DEBs available makes installation any easier for "most distros out there". Being a Slack user, perhaps you never noticed that new versions of libraries tend to be released every 2 to 4 months, and each distro tends to be compiled against the bleeding edge newest libraries available at that time. This generally causes an absolute ton of dependency hell at all levels. This is the exact reason why most commercial packages build against the enterprise distros, because their life cycles are counted in years instead of weeks. Having a precompiled rpm/deb in the distro repository helps, but it is far from an effective solution when it comes to newbies installing software, and it certainly doesn't make Linux a very friendly looking target for ISVs.
While rapid software evolution is the biggest strength to Linux based systems, it's ironic that it is also the absolute biggest downfall. After using Linux for over a decade on servers, and during that time even spending a 2 year stint of Linux as my only desktop OS, I can safely say that it isn't the distros' package system that's broken. Instead it's the complete lack of enforceable standards. If Linux wants to ever become a serious contender for the desktop OS throne, it will seriously need to standardize the versions of the core libraries. If you want to continue to maintain rapid development, deployment and deprecation, that's fine, but at the end of the day the distros should have a single version target for these libraries. The more bleeding edge versions can coexist on the same system right along side the legacy standards. The Linux Standard Base did a fair job at starting this, but as far as I can tell it's mostly fallen off the map, not to mention that it never went far enough.
I really hate to break the dream-bubble here guys, but we need a "Standard Linux Desktop" specification that fully defines the available libraries and their versions all the way from libc to gnome. Now I'm not saying that once you implement the standard you're done innovating, that's just stupid. What I'm saying is that a user should have a single super-package to install that brings their Linux installation into full compliance for a standard desktop specification. Multiple standard assemblies can be installed on a single machine, and would allow the use of older binaries on newer systems. In order to enforce this standard, the installation of gcc should use the latest standard assembly by default, switchable to older and custom assemblies through the use of command line switches.
Of course the biggest pain in the ass with all of this is getting all 9 million of the various distros to work together for 6 months to define these standards. Luckily we don't need to go that far. Simply getting RedHat and Debian to work together on it should be enough to affect the majority of machines out there.
Getting back on topic for the article: If you want to use a commercial package, use a distro that claims compatibility with RedHat Enterprise Linux. Otherwise pick a RHEL compatible or something based on Debian. Those are the easy picks that offer the broadest set of precompiled software that tends to work 75% of the time.
The ideal solution for a newbie comes pre-installed. The distribution does not matter that much. I anticipate that many readers will object, but I am convinced that it makes sense to introduce a working system. I started working with GNU/Linux when I was finishing the high school, back in 95. I did not start by making a clean install, but rather by playing around with whatever was installed at my dad's work. It just happened to be Slackware, but you know, since it was up and running, I could not care less. I was free to poke around a learn new things.
If you really are a newbie, the last thing you want to learn is how to test hardware configurations and patch the kernel just make your drivers work. This knowledge is very useful, but is rather irrelevant for someone who seeks a good introduction to how the new OS works. My advice: commandeer a geek friend of yours to set up a distribution of his choice and then run with it.
"This answer shows why the question is nonsensical on its face. No one can tell you what distro is best for you. Everyone has a different personality."
No, it's a good question. Your answer, however, leaves plenty to be desired.
My guess is that Linux "newbies" want a system that just works. They're probably coming from either a Windows or Mac perspective, and aren't particularly interested in what personalities distributions are tailed for.
Their first Linux distribution should be intuitive and and functional. They shouldn't have to read manuals to get it working, and how-to information should be readily available in the system.
All this crap about what "personalities" are right for particular distributions makes me want to strangle someone. It's a cop-out excuse for why no Linux distribution is particularly attractive yet. Make it work. Make it simple.
"Ask not what your country can do for you." --John F. Kennedy
No, your response shows why so much of the non-technically-savvy population won't take Linux seriously. This guy wants to switch from Windows to Linux--he's already decided, you don't even have to try to convince him!--and yet your response to his perfectly valid question is "Figure it out yourself, asshole, and stop asking retarded questions." Sure, everyone has their own needs and every distro fills its own niche. This guy gave a pretty good description his needs, and is trying to figure out what fits. Surprise--not everyone thinks that fucking around with various Linux distros is a good use of their time. Most people use computers for things OTHER THAN figuring out how computers work. It's like asking the waiter for a recommendation and being told, "Why don't you just get everything on the menu and see what you like?"
Agreed on all points. That's why I suggest the poster run Linux in VMWare instead of dual booting. Dual booting is a PITA if you need to switch back and forth. Besides, VMWare makes it easy to revert back to previous 'versions' if you mess up your *nix system while learning it. It also will allow him to try out a number of Linux distro's (as well as *BSDs if he feels like it) easily, so he can try out a variety to compare and play with to see what he really likes.