|
|
Log in / Subscribe / Register

Ex-Microsoftie: Free Software Will Kill Redmond (ComputerWorld)

Ex-Microsoftie: Free Software Will Kill Redmond (ComputerWorld)

Posted May 22, 2009 15:14 UTC (Fri) by drag (guest, #31333)
In reply to: Ex-Microsoftie: Free Software Will Kill Redmond (ComputerWorld) by macson_g
Parent article: Ex-Microsoftie: Free Software Will Kill Redmond (ComputerWorld)

> I'm starting to suspect that all Linux advocates, including myself, are living in a land of illusion. We can see technical superiority of Free software when it exists, but we refuse to see areas where Linux and Free software generally sux when compared to MS.

I know I can see some of it pretty easily.

Stuff like:

Lack of easy binary compatibility between Linux distributions. It's stupid to have multiple operating systems that are essentially running all the same exact code, with very close to the same versions of that code, released close to the same date, require radically different packaging systems and have different dependency issues.

Especially since it almost works pretty good. If you go and look at software like Opera...
http://www.opera.com/browser/download/

They actually use the same deb package for most of the Ubuntu versions. Only the very old version is different, which uses a different C++ ABI. And the RPMs provided for Fedora and other Linux distributions are in the same boat. All using the same packages except for very old stuff.

And if you look _INSIDE_ those packages Opera is using the SAME BINARIES for Fedora and Ubuntu and CentOS and everything else, again except for the oldest versions using a different C++ ABI.

But yet Opera provides a dazzling array of packages, because that is what they have to do to make it "easy".

I know that a lot of 'ProFreeSoftware' guys figure that is only a issue for proprietary software and that packaging systems can take care of it. Of course they don't realize that it still hurts Free software and makes life miserable for both open source developers and companies as well as end users that really do care about open source.

Why? Because of two reasons:

1. Every distribution has to repackage it's own software. It's not efficient and it's not distributed. Essentially all the work that Debian has to do is completely wasted and Fedora users and developers can't benefit from it in anyway.

And the sad part is that the majority of binaries are going to mostly work on both systems. Not perfectly, but besides relatively minor technical reasons it has mostly to do massively with usability reasons.

Something as stupid as not being able to agree on a versioning standard for software packages causes huge headaches. Headaches that are only avoided because of the huge effort that distributions pour into re-doing the same mind-bendingly tedious work that every other distribution must do. All this time and effort just getting packages to work rather then fixing bugs and that sort of thing.

2. The developers of the software are much better qualified to make packages then downstream distro-makers. They have their tested environments and prefered configurations and all that stuff. It's unlikely that any of that will be really well documented.

If distributions could get their act together and work out some relatively small details then as part of the development of software upstream authors could simple build the packages as part of their normal compiling.

Instead of:
./configure
make
make install

Type dance it would be something like:
./configure
make
make rpm

What is needed then is simply nice tools for automating the creation of packages and dependencies, and to get those tools integrated into the popular build systems that everybody tends to use.

It's really quite poor form for people compiling software to simply have the contents dumped all over the file system, and tools for monitoring the installs and building gimped up versions of rpm or deb packages are difficult to use and have relatively low success rate.

Plus any time that any end user is expected to use any developer tools at all just to do something as mundane as installing software is HUGE DESKTOP FAIL.

Did I say a couple? Here is one more:

3. Because having distributions re-packaging software and recreating all the work that everybody else already had done at some point in the past is a very inefficient way to do things.... and the fact that users are going to be unable to cope with using developer tools to do something as basic as installing software... means that new software goes under the radar.

If people release new software and it doesn't get the attention of one of the guys working with one of the popular distributions then it's not going to get packaged.

And since users are going to be so dependent on package management tools to be able to locate and install the software they need then unless it's packaged and provided as part of the distribution then that new software is going to be invisible to them.

And if Linux ever took off as a popular desktop environment then you'll see a explosion in little tools and and programs all over the place. Both commercial and open source.

There is no way in hell that the system which is just barely capable of keeping up with software development now on the desktop... is going to be able to keep up with something that is very popular.

With Windows you have .exe files and MSI files and that sort of thing.
It's not expected that Microsoft goes and puts all the work into packaging the massive amount of software aviable to end users.

Of course this means that users are sumbitted to horrindous amounts of bullshit software.

But with Linux distributions they should still do the package management systems... it's just that instead of getting source tarballs from upstream then should be getting binary and source rpm's from upstream which they test and make sure is decent before adding to their extended repositories.

And distributions should be accepting the same packages. It's not good that each distribution has to use a very-slighty-different-but-functionally-identical software all the freaking time.

================================

Another example of why Linux sucks on the desktop:

In a small business to medium business environment is were Linux is most likely to gain traction in the first place. Why? Because they are cost sensitive and tend to have IT support of some merit.

So lets examine the experiences of company A vs company B:

Company A wants to use Microsoft Windows on it's desktop and has 60 employees.

Company B is the same, but they want to use Ubuntu.

Company A:

* Install Small business server.

As part of small business server they have:
- Active Directory
- Exchange Server
- IIS Web server
- Sharepoint
- domain servers, etc etc.

* Install Windows XP Pro or Vista business in their desktops. During the install point them at your domain.

The admin then has to add users to the domain and then head out to some Microsoft knowledge base articles and figure out what Group policies he needs to apply to get the right configuration for the desktops if that is at all needed.

* Install Microsoft Office.

So you get email, groupware, central management of users, central management of desktop configuration, web-based collaberation tools, and lots and lots and lots of other features.

Windows business is pre-configured to integrate into the active directory environment. It's dead simple and a is well documented. So that a person with minimal computer experience can go down to the book store and get enough information in a evening to get it working pretty well.

Now compare that with Ubuntu:

* Install Ubuntu server.

With that you get... what? Apache? Unconfigured Samba?

* Install Ubuntu desktop.

Now anybody tell me what is the best way to get it configured to work together?

Email server, webmail server, calendering, SSL encryption, LDAP services, Kerberos services, WEb-based collaberation tools...

What is the best configuration engine to use to manage desktops?

Puppet? CFengine? How else is the best way to impliment group policy for Ubuntu?

I don't even think that you can come close to matching what SBS can do for you by default.

And don't F-ing tell me that your going to stick passwords into OpenLDAP or use Samba's NTML method of replicating a windows directory service. Those things are CRIPPLED in their capabilities and provide a MUCH MUCH MUCH weaker level of security then what you get out of Kerberos, which is what Microsoft uses. If you think that your simply wrong, and due to legal requirements is not even possible in depending on what sort of business your in.

And to get even get close is going to require a massive amount of knowledge about how Kerberos works, what GSSAPI is, figuring out what network services are allowed to exist, and how to tie them into a LDAP server and use Kerberos for authentication. If you think that PAM can help in some way with that.. FAIL. PAM can't be effectively used with Kerberos for anything network-oriented. It's worthless to even try and can lead to huge gaping security holes.

Then you have to deal with SSL certificates.. I mean your not going to allow your users to transmitt their documents over the network in plain text, right? So for web-based collaberation you're not just tasked with getting LDAP and Kerberos integrated, you have to get SSL working to, with proper certs and everything.

Email must be tied into kerberos also. Doing passwords over LDAP is miserable and error prone, so it's a security risk. Sending passwords to the IMAP server in plain text is fail. SSL-encrypted tunnels will probably work ok, but users are going to be pissed about having to re-enter their passwords all the time. The alternative is to store passwords on people's desktops by clicking 'remember password' and such.. but doing that is a security risk and is weaker then what people get from Outlook or whatever integrated into AD whose cach'd credentials are only effective for a few hours.

So only a tiny fraction of email clients would even be able to work in whatever configuration you'd choose to use and they are probably not going to be your first choice in usable software.

Once you get that done then you have to start with Samba...

AND THEN.. you have to figure out how to integrate Windows into all of that f-ing mess. Why? Becuase any business is going to run into times when they will have to deal with Windows-only software. Either if it's for doing Fedex billing or dealing with documents from customers that require MS Office for compatibility, or the thousands of other small bits of functionality that businesses need on occasion that only exist for Windows.

So then you have to do rdesktop or setup a Windows desktops for a few people, and make it friendly, and give all the same features that AD provides, etc etc.

It is simply beyond the capabilities of businesses to even deliver a 20% the same functionality that they get from Microsoft SBS or a real AD domain.

There is simply no comparison for Linux on the desktop. It's just insane how neglected and poorly designed all the open source side of things is, and just how massive of a mismatch that the Linux desktop is for most businesses.


The LWN site is currently under high scraper load, so comment display has been suppressed for anonymous users. If you are a human, you may read the comments by clicking the button below:

Note: you can avoid this step in the future by logging into your LWN account.


Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds