Linux standard deviation impedes developers
Summary
Topics
They're right, of course. The nasty flip side of all the diversity is thatall the distributions pose a blurred target for Linux developers.
Commercial software vendors have a legitimate beef with the currentstate of Linux. There are three ways to build an application that runs onmultiple distributions of Linux, none of them particularly smooth.
You can write versions specific to each distribution you want to support.But then each version must be tested separately on systems running the targetdistribution. Marketing and distribution might also vary amongdistributions. In any case, you're stuck with multiple versions of yourproduct to support. Gee, didn't you already go through this grief withUnix?
You can limit yourself to the one distribution whose target market isclosest in demographics to the one you want to reach. But no matter which oneyou choose, you exclude part of your potential market. Plus, you'll beangrily accused of helping to splinter the community.
Or you can shrug off the differences between distributions and invent yourown installation system that works on all of them. Your applications mustcome with all the libraries and required tools, just in case yourpurchasers' distributions don't have them.
Developers have tried each of these routes, and none has proven to beparticularly appealing. Each has significant pitfalls of both cost andreputation within the community.
There are many reasons you don't see a lot of commercial applicationsoftware for Linux, but I have to put the lack of a single portingstandard near the top. In my view, it even impedes the progress of opensource software. The effort spent porting code and packages to multipledistributions is effort that could -- and should -- be spent making thepackages themselves better.
Commercial Linux application vendors want what some Linux folk covet,others fear, and others simply ignore -- standards. Those who wantstandards rarely care where they come from as long as they're wellunderstood and specify what needs to be standardized.
Here are some of the things that application suppliers need to see naileddown.
- File placement Applications shouldn't have to spend much effortlooking to see where a specific Linux system keeps its program libraries,configurations, and other important files.
- Software installation method Right now we have three mainpackaging formats -- RPM, DEB, and TGZ, each of which has its advocates. If you build an RPM package on one distribution andsuccessfully install it on a different RPM-using distribution, consideryourself lucky.
- System versions Especially as key components such asglibc and gcc continue to progress, it's important for adeveloper to know what facilities are available on the target system. Developers shouldn?t have to guess at what levels of services are availableon the platform running the software.
- Menu placement Without needing to get involved in GNOME/KDEdisputes, an application vendor should be able to specify once howand where to add programs to users' menus.
In two weeks I'll examine some of the ways the Linux world can balance itsvaluable diversity with the desired standardization. Why two weeks insteadof the usual one? Next time in this space, we'll have a look at what'shappening with open source at Germany's huge How important are Linux standards to you? Tell Evan in the TalkBack below.
Talkback - Tell Us What You Think
The best of ZDNet, delivered
ZDNet Newsletters
Get the best of ZDNet delivered straight to your inbox




