The open-source world as I see it

Hi kids! Did you miss me ?

I experienced a few hours of downtime last night, as a result of some minor tweaking on my server. Actually I just added a 2nd IP address, simple right ? Well how is it that a friggin’ wizard like me, can crash a server with something trivial like adding an IP address ? Red Hat Linux, that’s how.

Now I’m usually the one to praise Linux for its hacker appeal and broad configurability, but I’m also quick to point out its big nasty flaws. There are zillions of version of Linux, each with its own peculiarities. There is Ubuntu, which is rather well polished and user-friendly. There is Debian, which is kind of like a K-car… old, ugly but reliable. Red Hat (and CentOS) which is like Debian but more current and driven by marketing. And of course my personal favorite Gentoo, a real do-it-yourself kind of Linux that panders to the obsessive tweaker in me.

With so many different Linux distributions, it seems no one can agree on a standard, consistent configuration. At home I run Debian on an older machine, and Gentoo on the new ones, but my server runs on CentOS, which is a spinoff of Red Hat. I pretty much have to treat them as 3 completely different operating systems. Installing software is different, the settings are in different locations, and of course they each have their unique quirks. On some of them, upgrading is trivial… for others its nearly impossible.

Let’s imagine you’re the tech support for a group of 30 users, and they’re all running Windows. Some are running XP, 2000, Vista, even Windows 98. There are some differences between them all, but they all pretty much work the same way, and if you tell one user to open up the Display Settings in the Control Panel, it’s going to be pretty much the same no matter which version of Windows they have. To do the same in Linux, you have to know exactly where this particular distribution keeps its config files, and hope they’re named the same as everyone else’s (they don’t have to be). Then once you find it, it might be written in some very clever but confusing way, or it might be split up into dozens of little pieces here and there “to keep things manageable”. Heck I still don’t know how to properly set up my video card and I’ve been using various flavors of Linux for over a decade.

So the thing with Linux distributions is someone needs to clean it up and package it into a cohesive product that works out-of-the-box. Ubuntu has come a long way toward that goal, but under the thin veneer it’s still a mess of text files, sneaky scripts and a configuration system that’s just a pile of glorified batch files. Does it really have to be that messy ? Do we really need a million ways to do everything ? Am I going to have to release a new distro myself ? 😛

Both comments and pings are currently closed.

5 Responses to “The open-source world as I see it”

  1. JD says:

    Yes, i’m commenting again…My first comment was on your sort-of bashing of Debian…Debian running Etch or newer is perfectly pretty, new and stable as hell, hell, you can even run Beryl if you’d like (if you’re one of those Beryl fanboys, go to Ubuntu). Aso for the RH being updated more often than Debian comment…my simple answer is don’t run stable…packages are only out-of-date on stable…i’ve NEVER had a problem with Debian Testing and new packages hit pretty frequently. Also, with Ubuntu being a mess of config files…that’s completely false, for most users the only 2 conf files they MIGHT be messing with is their xorg.conf and their sources.list…if that…People like you and me are power users and we wanna customize our bash prompts, fonts, conky, etc, the list goes on…most people don’t care about that stuff…they’re not moving to linux because they want to customize stuff to their heart’s content, they’re moving to have a better/faster/more stable/more secure OS than windows and that’s what Ubuntu pretty much gives them…Setting up an Ubuntu system from scratch is just as easy (if not easier) than setting up Windows from scratch. Also, for the million ways to do everything…i’m kind of on the fence about this…i love this theory in use in linux, but i hate the fact (for example) that there are 50 small window managers and they all compete and have different features…i always think in stiuations like that, all the devs of all the different WM’s need to get together, make one REALLY good one and be done…but choice is a good thing and that’s something MS doesn’t give you…but linux does.

  2. Billco says:

    Choice is good, but in this case all the choices kinda suck, at least a little bit. I personally dread X because it’s either Gnome or KDE, and I hate them both. Maybe it’s because I’ve hardly written any system-level code in almost a decade, but I really don’t understand why I need to install 500mb worth of crap just to get a program launcher and taskbar.

    I feel the big two “desktop environments” are trying too hard to emulate Windows, bloatware included. For example, I don’t give a rat’s ass about built-in browsers like Konqueror and whatever Gnome uses, because I use Firefox. I also don’t need their idea of a word processor or spreadsheet, firstly because I use my Windows PC for that, and secondly if I really wanted to do office work, I’d use OOo or StarOffice and do it properly. This application glut results in a big bundle of mediocre apps that I never use. How many Windows users even know of Wordpad, Paint or Calc ? No, they use MS Word, Photoshop/PSP and a real calculator. I’d much rather see the KDE/Gnome folks focus on just one thing and do it exceptionally well, than spread their efforts across a whole mess of apps everybody loves to hate.

    Beryl/Compiz is cute, and surprisingly it works mostly well with its default configuration, something you don’t see too often in the Linux world. I can appreciate Beryl because it does exactly one thing: eye-candy! It doesn’t claim to be an operating system, all it does is decorate your windows and it tries not to get in your way.

    In short, I think the whole free-software/open-source movement needs a little less diversity, and more concentrated quality. We’ve got millions of people using these programs on a daily basis, many of them technically advanced and knowledgeable. I’m sure we could put our heads together and come up with something decent.

  3. JD says:

    I do agree with you that KDE and Gnome are getting bloated, but remember, if you’re willing to lose a few metapackages, you can remove all the stuff you don’t want…and lately for me at least, it’s rare to see a distro with gOffice/Koffice and almost every distro within the past 2 years uses Firefox as the main browser. Also, if you don’t like the bloated-ness of KDE and Gnome, you always have XFCE, IceWM or Fluxbox, i just prefer Gnome because to me it’s more comfortable to use everyday. On Windows (myself at least) i used Wordpad and calc all the time because there’s nothing additional to install, they’re fast and they work for what i do. If i was a author, a professional artist or a engineer, i wouldn’t use them, but i’m not any of those things, so i do because they’re on every windows system i have to use and they’re decent tools…As for Beryl/Compiz, i like it, i like how Linux is trying to become pretty, but i’ll take functional over pretty any day especially when pretty gives me a performance hit. I agree that the OSS world needs a little less diversity and more quality, and this is one thing i hate…the Gnome vs. KDE and vi vs. emacs wars get nowhere…What these groups SHOULD do is work together to make one GREAT desktop environment/editor and share the wealth/profit. I think it’s not a fact of argument however, i think it’s a fact of all these people saying “I want this feature and nothing has it or is getting it…so i’ll make my own app to do it” and that’s what makes choosing so difficult, people are not listening to the users as much as they should, they’re only listening to the devs which i believe is one of the inherent problems in software in general, not just linux….wow, this was one hell of a rant…whee!

  4. Billco says:

    Many apps exist solely to scratch one person’s itch. Hell, if I didn’t have a million other things to do, I’d probably be spawning enough spinoffs of my own to get my own Freshmeat category :) It’s tricky to draw the line. On one hand we’re talking about mostly volunteer projects, so it’s hard to justify giving the developers flak for being OCD about useless features. On the other hand, we’re seeing tons of effort spent in what appears to be the wrong places, building ever more complicated apps that result in less time getting actual work done, and more time reading the manuals and trying to find what permutation of quotes and semicolons will get the config file to parse properly.

    I often scratch my head, wondering why I have to work with such clumsy software. My favorite headache is DNS. God I had Bind/Named… You’d think it would be a simple affair to take a domain name, and look up its corresponding numeric address, but someone decided it would be best to use an arcane, temperamental syntax where one misplaced period can ruin the whole Zone file.

    I remember back in the 80’s, you’d hear about how computers made some business owner’s life so much easier. I was just a couple years old at the time, already poking around an Atari 400, playing games and learning Basic Here we are 25 years later, and this fundamental building block of the modern internet is still a source of tension for a veteran hacker such as myself. What baffles me is that even as far back as 1991, when I was the prototypical high school nerd with my own DOS clone and BBS software that perhaps 5 people ever used, I was funneling a lot more effort into presentation and user-friendliness than just about every FOSS project I’ve ever used.

    I remember getting my hands on a copy of Slackware 2.0 way back in 1994. Actually installing it is something I never accomplished. I tried and tried, but it kept blasting me with dialogs for each and every package, obscure programs and libraries that were mostly alien to me. I read each and every description, consciously deciding whether I wanted them or not. I never ended up with a working system.

    Granted, things have improved since then, but I was so alienated by the OS that I wrote Linux off for years. It wasn’t until 2000 that a friend of mine came over and helped me through it. It was RedHat Linux 6.1, and god was it ever painful! I remember spending hours fishing for packages on RPMFind.net, switching back and forth between Netscape and the terminal for the depencies, which RPM would spit out one by one, such a horrible system.

    There was one year where I went through a couple dozen distros, trying them on one by one. Mandrake, Debian, I even humored my former employer and tried Corel Linux, which was ironically one of the few projects I never coded for, and sure enough it was a pain in the ass (chuckles).

    Maybe I’m biased here, as I’ve always defined software projects as black boxes: what goes in, and what needs to come out. I look at how people use the software, how they interact with the system, and I try my damnedest to connect their inputs to the desired outputs. Now most of the software commonly attributed to Linux is server stuff, and I understand the need for programmability and the use of text files, but maybe we could have two interfaces: one for computers to exchange information, and one for humans because we are NOT computers.

  5. JD says:

    See…i’m young (i’m only 22) so i don’t remember the early days of the internet and linux too much…up until about 2003 i never even really touched linux, then one of my teachers in high school recommended SuSe 8 to me and a friend of mine, so i copied all 5 or so CD’s, installed it and i was stuck…I didn’t know anything good to use…i thought the only way to burn cd’s was with cdroast via CLI, the only editors were vi and emacs, the only GUI was KDE or some other crappy ones and when something went wrong, or if lilo messed up or something like that, i had to reformat and start over from scratch cuz i didn’t know how to fix it…There was also no RPM support at this point and i didn’t know much linux cli so i didn’t really even know how to install rpm’s…This left a dry taste in my mouth about linux until around 2006 when a friend recommended Debian with it’s awesome apt, Gnome, K3b, nano and a few alternatives…so i installed it and he helped walk me through it and then i went off on my own and learned a lot and kind of became the linux guru i am now.