It seems as though every year or two some hack comes along to recommend a single package management solution. This time we have the talking heads suggesting a single app store API. I think all of this ridiculous.
First, not everyone agrees on what a single package management solution should be. You have your Gentoo/Lunar/SourceMage/Crux crowd who believe that the user should have ultimate power with his/her packages and whatnot. On the other side, we have the Ubuntu/Debian crowd who believe that the almighty packagers and package maintainers should have complete control. You have your troglodytes over in the Slackware group who haven't even realized that dependency resolution exists (I'm of that crowd actually). How in the world can we ever conceive of a world with only one option?
Second, the whole idea of a Linux app store is revolting. In what universe do the talking heads live? If it is indeed our own universe, they should all be fired. At first, you say to yourself that this is just for Linux n00bz and the casual market. This app store thing is not for those of us who have self respect and can make our own decisions regarding software. However, before long, most major distributions will be using this app store. Over time, developers will urge the talking heads to come up with a universal package management system. This will greatly reduce development costs and time to market. All in all, this sounds great. But at the point where we have a single package management system, why would I choose Ubuntu over Debian or Fedora? Why would I choose either of them over Mandriva? I get the same packages, the same security vulnerabilities, and the same kernel config. Why do I care?
Linux is about choice. Linux is neither about conformity or corporate interest. If I wanted those things, I could easily have chosen Windows or OSX. I did not choose those platforms. Most of the companies I know of that use Linux, do so because it's easier to develop and maintain in-house solutions on Linux. I know of very few companies who have chosen Linux for other reasons. For them, the app store would be useless as well.
I think it's time that our talking heads realize who their market really is. I think it is time for them to urge innovation within their own distributions, and quit trying to reconcile their differences. After all, they do compete against one another.
If you're talking about AppStream, you're deeply misinformed. The idea is just to use the same UI and the same metadata (screenshots, reviews, ratings, icons and package name). Each distribution will still package their own packages.
ReplyDeleteA common interface would be great, and entirely optional.
ReplyDeleteChoice means choice for the common stuff, and choice for the uncommon stuff. An App store may finally get Linux the attention it needs from the mainstream developers and make our platform of choice a viable desktop contender in a MS run corporate world.
Just remember, and "App Store" is just a buzz word for a package manager. With that definition, you could call Synaptic an "App Store".
@Marco,
ReplyDeletePlease read the whole post. I understand what you said very well, and I mention that this will lead to a unified package manager. I never said that it was such a thing.
@stobbsm,
You are right that it may get our platform some attention... I am just not sure that this is a direction we ought to be going. It leads to some nasty nasty things.
The idea is a great idea, but the actual execution should be interesting. You are always going to have your different Linux fan. The fact of the matter is that going to a single place to find all the program you're going to want or need. The repos are still going to be maintained for each distro, and such. IF you're source code guy that likes to inspect, compile, and install you still have that choice. I think that this is a stpe in the right direction for the different distros to get a common theme going. This will also help with getting more mainstream software onto Linux.
ReplyDelete"At first, you say to yourself that this is just for Linux n00bz and the casual market. This app store thing is not for those of us who have self respect and can make our own decisions regarding software."
ReplyDeleteNo, it I tell myself this move is good for me, and I have been using linux since 2001, and on a daily basis for the last three years.
You don't want it, fine, don't get in the way of the rest of us.
I think its a great idea, imagine if android phones from each vendor needed their own app store since each vendor uses a different packaging system for their apps, do you think they would be able to attract as many developers or companies interested in android?
ReplyDeleteBut that is where we r with linux right now, even though depending on which numbers u look at linux users r close to those of mac, not very many vendors put out linux apps even though they will support both mac and windoz.
Even for open source developers this is a problem as most of them will release their apps for one or two distros and everyone else has to compile the source if u have a different distro.
I have been using linux for the last 5 years and I would consider myself an intermediate user but I have been burned several times with compiled apps that wont uninstall to the point now that my first preference, is using packaged apps or building the package for myself instead of compiling it.
Of-course it does raise a security issue since now u have the potential of having one piece of malware that can run on several different distros, but the benefits of the system far out way the cons for me and since not all distros are participating in this issue if someone feels the risks are too much they can always use a distro that does not support the unified app system that's why we have choice.
Personally, I don't think it will work. Different distros come with different versions of different packages, with different kernel versions running beneath them. A lot of the major distros have custom-tailored packages now, as well. Many distros have different file hierarchies. To even have unified metadata and a unified interface would be difficult, and I'm pretty sure the idea will just blow up in the hangar. I mean, what widget set would be used to make this unified package manager? What would CLI-addicts like Ford do?
ReplyDeleteIf the idea doesn't burn out, then yes. There will be a final, unified Linux, and the unique freedoms that Linux operators enjoy will cease to exist. At that point, I'm going to recommend that we put on our robes and Nike shoes, and break out the fruit punch, because the end will be upon us. =P
Microsoft .doc exists for decades before the FOSS movement decide on ODF and then subsequently pitch a fit that MS doesn't want to use a standard unilaterally imposed on them by people with almost no traction in the office app department.
ReplyDeleteMicrosoft add their own additions to the HTML spec, modifying it to suit there needs over the years (AJAX was MS) and again the FOSS brigade pitch a fit about 'standards compliance' and what not.
Yet the FOSS community cant even decide on a standard format for software among what is essentially the same stack (Linux Kernel, Gnu toolkit, KDE/Gnome DE) and it's praised as 'choice' and 'diversity'. Riiigghhhhttt.
Seriously, this crap should have been sorted out a decade ago but geek pride, NIH syndrome and elitism rule the day. Here's a quick cheat sheet:
Multiple standards are _bad_
Multiple implementations of standards are _good_
The fact that every distro has to maintain and update its own repo is a spectacular waste of time. How each distro chooses to install and act upon a standard package format would be fine, multiple formats are not fine. More examples:
Multiple proprietary phone chargers = bad.
Multiple implementations of compatible phone chargers = good.
Multiple types of hard drive/device mounting brackets = bad.
Multiple types of hard drive/device using compatible mounts = good.
Multiple types of incompatible ebook formats = bad.
Multiple types of ebook readers and stores using a compatible format = good.
So to clarify:
Multiple different types of package formats = bad.
Multiple different distros which give you the _choice_ on package formats = good.
Seriously, this crap needs to be sorted out. If you want to sit in the elitist corner and insist on things being hard because you are a masochist then that is fine but don't act like in any way this situation is good, and if you do then shut up the next time Big Software(tm) pervert some standard for their own ends.
"All in all, this sounds great. But at the point where we have a single package management system, why would I choose Ubuntu over Debian or Fedora? Why would I choose either of them over Mandriva? I get the same packages, the same security vulnerabilities, and the same kernel config. Why do I care?"
ReplyDeleteSo, let me get this straight. If Microsoft were to release Windows-A, Windows-B, Windows-C, Windows-D and Windows-E, which were all almost exactly alike - except that the software was all designed to be incompatible - this would be a good thing?
If the only difference is the package management then why on earth are you celebrating the differences?
When I was young my sisters would always buy a bulk pack of cheap biros for school, where I would prefer to buy one really nice pen. After all you can only use one pen at once. But that one pen will write properly (and better) on all paper.
Enjoy your stack of cheap biros.
@dcl,
ReplyDeleteYou're wrong. Standards are great because there are so many to choose from. Power adapters? Bad example. Voltage and amperage differences abound, and I don't know about you, but I don't want my laptop dying. The reason for power adapter differences are in the design of the machine using the power adapters. Package formats? They are suited to your purposes. Repositories? Security patches and such on packages, as well as development cycles differ. Having multiple repositories helps solve the issue. At the end of the day, the plurality of Linux ensures that a bug in one package or version of a package, or even in a distribution doesn't affect everyone. Also, stacks aren't as universal as you think. Init systems vary, package managers and system administration tools vary, things as simple as text editors vary. You really need to do some research as you have no fucking clue as to about what you're speaking. As far as celebrating the differences, I hate all of the mainstream distributions due to their glaring similarities. The thing that is still decent is the level of care taken in package management as regards the intended audience. Ubuntu has a wide array of software in their repositories, and it's all fairly up to date stuff. Debian has a wide array and it's all tried and true stuff. Fedora has less but it's more up to date than Ubuntu, and often has more security patches. Mandriva is a walled garden for their users, where within that garden things work beautifully well. openSUSE is an RPM system that behaves in many ways like Debian, but has a more approachable front with more customization options, and most packages are close to vanilla (which is a whole 'nother gamut of variation between distribution's package management scheme). The thing I was pointing out was a decent thing to mention due to the impact that package management has on the overall system. Go back to MS or Apple and leave the Linux community alone.
@dcl:
ReplyDeleteI don't think you understood what was being said here. In fact, I'm not sure I understood what you spouted off in your misunderstanding.
"So to clarify:
Multiple different types of package formats = bad.
Multiple different distros which give you the _choice_ on package formats = good."
You can't have a choice on package formats without having multiple formats to choose from.
I find it absurd that you believe that some small group of unknown individuals should be determining what the standards are, instead of letting standards develop organically. That's what drove me away from other operating systems. There is little room for evolution through competition when a hard standard is set.
For example, many people are dissatisfied with the switch to 16:9 as the "standard" aspect ratio. That standard did not develop organically. It was set by a guy who drew some rectangles within some other rectangles, and decided that it would be a good idea to make a display to be wider than the human field of vision. Do you read with your peripheral vision? I certainly don't. It seems like a standard set by somebody who doesn't do much reading/writing, or who gets off on the feeling of the scroll wheel rattling under his or her fingertips every couple of seconds while turning his or head side-to-side constantly.
What you're calling "elitism" is really preference. None of us are saying that our way is the best. We are saying that we don't want someone else telling us what the best way is. We want to observe, experiment, learn, and adapt our options until a majority of us find something that works well. Only time will determine that.
Dictators and oligarchies screw everything up as it is. We don't need them in the software world. Next, you'll be spouting off some rubbish about how our government needs to more heavily regulate firearms, healthcare, and business. gb2DPRK plzkthx.
@ford:
ReplyDeleteONE DISTRO, ONE USER BASE, ONE REPOSITORY
LOLOLOLOLOL
What I meant was with a standarization of package formats you could choose whatever software you liked. Without this you are forced to choose only what your distro provides unless you enjoy compiling from source etc. The situation is no better than Apple's App Store, where you only get what has been chosen and blessed by your distro maintainer rather than a true choice of everything available.
ReplyDeleteWith the repository system there are no reasons you cannot have all the benefits you outlined, but with compatible packages you could also use a common software source and installer if you desired. You get the choice of text editors because all your files are stored using the ASCII standard. You can get the choice of FTP or SSH clients because they all use a standard.
I've yet to hear a single technical reason why a package format cannot be standardized, that is some fundamental difference in requirements that, say, RPM users require which DEB cannot support. The only differences I can see fall under the 'for the sake of it' category. You're frankly deluded if you think this is a good thing.
"Next, you'll be spouting off some rubbish about how our government needs to more heavily regulate firearms, healthcare, and business. gb2DPRK plzkthx."
Stop piggybacking your moronic tea-party-esque views onto a legitimate technical discussion. I think the only metric America is #1 in is military spending (and dropping in everything else). Nobody in any other 1st world country wants their cities awash with guns or the removal of basic safety nets the most vulnerable are reliant upon. And wasn't it unregulated corporate greed that caused the global financial problems? Get back to your creationism lessons, imperialism and gay bashing.
Somebody's butthurt.
ReplyDeleteIt was simply a comparison, and you proved my statements about your mentality to be correct. You would rather let someone else make our decisions. That has nothing to do with "tea-party-esque" views.
Forced spiritual belief, imperialism, and gay bashing are still products of people with your mindset. All of that comes from people who believe that someone on a higher pay scale (often with less experience) knows more than they do, which is an idea that it looks like you can get behind.
You are a closed-minded, prejudiced individual, and I feel sad for you.
@dcl,
ReplyDeleteI cannot believe how close-minded you are. I also wouldn't be surprised if you were an American expatriot... it seems as though the left in this country are the only people who hate this country that much (outside perhaps Islamo-fascist terrorist groups). Freedom is not something that you can explain in many ways. It's rather simple. One person's rights stop where the next person's rights begin. Under such a model, I can own a firearm if I so choose, and should someone threaten my life I have the ability to defend my life. Take a knife to a gun fight and see how long you live. I also fail to see how other nations feel it is more humane to be beaten to within an inch of your life by a billyclub rather than have a single bullet hole to the knee.
"or the removal of basic safety nets the most vulnerable are reliant upon," forced charity much? So, I take it that you think it's OK to break into someone's home and proceed to take every valuable that the person has, and then distribute that evenly among everyone? You are wrong to assume a universal moral compass. In America, if you are unwilling to help yourself I have nothing for you. Much the same, if you cannot be bothered to contribute to the open source projects you enjoy, I cannot help you. If you simply wish to suck off the system that is your choice. If I want a package and it ain't there, I will go ahead and make it, and contribute to the repo.
I think you are jealous. Yes, America has the largest military spending. America also has the largest economy and highest government tax revenue. Naturally, while we spend alot on our military it represents a rather small portion of our expenditure (1/6 actually). 2/3 is spent on your beloved "safety nets". Like Linux, please learn more before commenting.
1) We are jealous of your freedoms. LOL.
ReplyDelete2) I live in a democracy. Guns are illegal through the will of the people just as certain weapons are illegal in America. Nobody here wants guns, no party stands on a pro-gun stance. We just don't want that crap. Sure your idea of 'freedom' is being able to murder half a dozen people in a few seconds - here not so much.
3) Why is the police, fire brigade, military, homeland security and everything else fine but the minute you want to add hospitals to that list it's as good as getting robbed at gunpoint? Again, it's a democracy and the will of the people.
Typical freetard. The unwavering belief that everything you say and believe is the absolute truth and anyone who says anything to the contrary is an idiot moron who should be insulted. Why do you think Linux still cant even break through 1%? Ahh, yes, it's everyone else who is wrong, obviously.
1) Granted, our freedoms are disappearing rapidly, it's because a lot of Americans have adopted your mindset- They believe that they are the government's responsibility, not their own.
ReplyDelete2) I live in a democratic republic. Just about any weapon you can imagine is legal here, as long as you have a permit for it. Also, my idea of freedom is not being able to murder half a dozen people in a few seconds, but being able to prevent myself from becoming a member of someone else's half dozen. Note that many of the awful tyrants who have come to power have made gun bans a top priority, shortly before dragging their "undesirables" out into the street and shooting them. (Side note: You are clearly not proficient with a firearm if you could only get half a dozen in a few seconds. Practice more.)
3) Our hospitals have had government subsidies forever. I don't even have a home most of the time, much less healthy living environments and medical care. I get medical treatment, without an organized, socialist healthcare system. And, instead of making someone else who needs their money as much as I do pay for it, I plan to pay it off myself.
Oh, the word "freetard." All that word tells me is that the person who is using it does not care for freedom, as long as convenience and security are falsely promised in exchange, be it in government or software.
Protip: Giving up your freedom doesn't get you anything, because anyone in a position to make decisions regarding your freedom didn't get there by "giving" anything to anyone.
@dcl,
ReplyDeleteIt's fine that we disagree. It's enjoyable to an extent. Your living in a democracy is most likely the reason for our disagreement. I live in a constitutional republic that was founded by men who hated, distrusted, and loathed government. They were taught to be this way by their treatment at the hands of the British. A nation, by the way, that like yours (could be yours) does not favor arms. As another sufferer of the British once said: "Among the many misdeeds of the British rule in India, history will look upon the act of depriving a whole nation of arms, as the blackest," (Mahatma Gandhi).
The American interpretation of freedom was formed by the reality of oppression. Our imperialistic elements were learned actions, once again, by our oppressors, the British. It is not, however, direct reproduction. In our imperial quests, we merely engage in trade. The freedom brought about by such trade may be construed as rabble rousing. Unlike other countries, we do not force nations to buy opium. We never conquered and subjugated swaths of people who were purposefully avoiding our governance (with the notable exception of the CSA).
Another point of note is that America as a whole doesn't necessarily agree that the governments (city, county, state, and federal) should have many of the institutions currently extent in American society. This is once due to our overwhelming hatred of government... due to oppression by the British. I am not even certain as to why we are allies with the British. Oh wait, we needed a launch point for World War I. Yeah...
You keep wanting to say that things ought to change in the Linux community. Overwhelmingly, Linux has become an American product. Richard Stallman (whether we like it or not) is American. Linus Torvalds moved here, and has been contemplating gaining American citizenship. Most of the major Linux distributions (with the exception of Ubuntu) are also American in origin. Why you keep wanting to change things is beyond me. The thwarting of central planning and control is uniquely Linux and uniquely American. If you want something like that, I advise that you look elsewhere.
Linux is about open collaboration over top-down empiricism, much like the American states when looking at congress, the Constitution, or the Electoral College (for Presidential elections). Linux is about taking a stand for what you want and believe in. Anyone can contribute, and any one can have a say in how things are done. The only time this is not allowed is when you seek to destroy the thing in question (whether it be Linux or America).
Essentially, you have come into our home (the Linux community) and done nothing but complain about it. You have said that almost every piece of our creation is bullocks. As a member of any other free nation in the world, you have denounced the hand that kept you free (USA: WW1, WW2, the Cold War, the War on Terror, countless lesser known operations).
You sir, seem to hate freedom.
Oh, and one more thing, dcl.
ReplyDeleteSUCCESSFULLY TROLLED LOLOLOLOLOLOLOLOLOLOLOLOLOLOL
u mad brah? y u mad tho?
"Essentially, you have come into our home (the Linux community) and done nothing but complain about it. You have said that almost every piece of our creation is bullocks."
ReplyDeleteIt's more that the Linux community has largely invaded every technical community on the internet to spread its 'M$ sucks' propaganda. If you guys were content with staying in your own little corner of the internet and being happy with your 1% that would be fine, but as long as you have evangelists intent on trying to foist this crap on people then the people have a right to speak out about it.
Anyway, why do you have a right to say you are 'in' the community and I am 'out'? Simply because I do not agree with you that a certain aspect of FOSS is the correct way to do it? Because I think that it can be better? So if I try Linux and find it doesn't fit my needs then I am not allowed to comment about it because I am not in the community? And why is here the community? I am pretty sure that you have not contributed anything significant.
The Linux, and free software community, has descended into monoculture where instead of being a place of lively debate it's a place of spite and exclusion based on groupthink, where dissenting views are attacked with the defenders unable to form a defense without getting personal.
This discussion is actually about standards compliance with me being on the side of standards, and you being on the side of proprietary implementations in which you are painting me as the 'freedom hater', despite the entire point of standards being to aid interoperability and choice. You've yet to provide a reason why a standard package format is bad except to state that it would make the proliferation of distros largely meaningless. Speaking as someone who has to deal with the results of such behavior in terms of people failing to agree on a standard and thus being forced to spend a significant amount of time duplicating work (rather than doing something meaningful) I find the fact that you are defending proprietary standards amusing - especially considering one of the most major complaints against MS is that they don't follow standards. It's hypocritical.
Shillelagh: Are you twelve? Trolling your own blog is pretty freaking sad.
IM TWELVE AND WHAT IS THIS
ReplyDeleteNo, I'm just bored, and you're amusing me with your ignorance on this subject. Also, you're the one that fed the troll. Who's twelve now?
Now having read more of what you've written, I understand where you're coming from. You're looking at Linux as the entire operating system, and not understanding why the community has not consolidated it into a singular, uniform entity. We're getting somewhere here.
Look, man. This isn't that hard to understand. Linux is not an operating system. Linux is a kernel. "Distributions" are different operating systems, built on the same kernel. File hierarchies are different from one distribution to the next, as are standard package formats and package sets. Even the base tool chains vary from one distribution to another. The package format also does depend upon the hierarchy. For example, you can't dump a Debian package straight into GoboLinux. It will break, because a lot of files will not go where they belong. GoboLinux also does something that other Linux distributions do not do. It allows the user to have multiple versions of the same package for the purpose of backwards compatibility.
The reason for the variety is the development of different features by different groups of developers. Over time, the very best of those features begin to merge in new distributions, or new versions of existing distributions. Instead of doing what "corporatards" like yourself do, where you just accept that each operating system has a few good features, we attempt to bring all of the good features and ideas together in our own projects.
We're not out for profit, we're out to make something that is actually enjoyable to use, and that can be made into whatever you want it to be. Linux was never intended to take over the market. It was intended to explore and learn the capabilities of the computer. The FOSS movement is not out for profit. The movement is out for the organic development of software and sharing of new ideas. While some distributions may be intended for the home/small office user, that is not the goal of the entire community. Some distributions are intended solely for the server market. Some distributions are intended solely for the hobbyist (the person you're calling the "elitist") and are in no way feature-complete. That's the beauty of the idea. If you don't like one, you can go to another. Standardizing package formats would force the majority of distributions to be the same, only allowing a variety in the packages themselves. Even if we were to standardize a package format, the packages would not be compatible between distributions unless the distributions themselves were also standardized through and through. The file hierarchy, the libraries, the tool chains, the package/kernel versions, and the base package sets would all have to be completely uniform, destroying the diversity in choices that we enjoy.
"No, I'm just bored, and you're amusing me with your ignorance on this subject. Also, you're the one that fed the troll. Who's twelve now?"
ReplyDeleteTrolling is immature and infantile, and it's express purpose is to purposefully destroy any rational conversation. The fact that you are doing this on your own blog is incredibly infantile. What else is trolling here? What's the point in taking anything seriously if this blog is run by self confessed trolls?
"Look, man. This isn't that hard to understand. Linux is not an operating system. Linux is a kernel. "Distributions" are different operating systems, built on the same kernel."
Everyone knows what Linux is. This blog itself regularly refers to the whole stack as 'Linux'. Everyone uses this terminology. _everyone_. Why is it only when the debate concerns the quality of Linux Captain Obvious inevitably appears, pulls back his shirt and declares 'Linux is just a kernel', acting smug and superior that they can out-pedant everyone else.
"For example, you can't dump a Debian package straight into GoboLinux. It will break, because a lot of files will not go where they belong."
That's because there are no standard in file system layouts, file locations or anything else. This is a problem, and no your answer and is akin to MS saying 'We need to have a proprietary version of HTML/ODF/CSS to get the technologies we need working'. It's hypocrisy.
"We're not out for profit, we're out to make something that is actually enjoyable to use, and that can be made into whatever you want it to be. Linux was never intended to take over the market."
It's not 'we'. Did you write Linux? Who gives you the right to speak on behalf of all the Linux developers? Are you friends with any of them? Are you on anyone's payroll? Did you clear these opinions with Canonical, Red Hat and the myriad of other companies based on Linux? Or are you just speaking out your ass pretending that you somehow have the weight of the community behind you and thus you're right?
You are what's wrong with Linux. Anyone who see's a problem is seen as a problem and attacked while the few that do use it huddle together reassuring themselves that a fragmented clone of a relic of the 70's is somehow the epitome of OS development. I think it can be improved so I am the enemy? How does that even make sense?
But you are probably 'trolling'. You are so funny, enjoy your quality 'blog'.
No, that was not additional trolling. I quite honestly decided I would try to get through to you one more time. The problem is, you're about as dense as they come, and your ignorance is growing old quickly. The only response I have for people like you is to make fun, because there's no such thing as reasoning with your type. I can type, "Each distribution is a different operating system," until my fingers fall off, and you will repeatedly reply with, "That is the problem. They all need to be the same." You probably believe that there should be one universal operating system, with the only variations existing in the user's choice of applications. I'm willing to bet you're a Mac user. If you're not, you should be. In my experience, the whole philosophy behind OS X is extremely labored (and arguably limited) customization and strict uniformity for the purpose of the user's convenience.
ReplyDeleteI did not write Linux. Linus Torvalds wrote Linux, and he did it without the intention of scoring a profit, as noted in every piece of literature I've read about Linux. While segments of the community may be out for a profit (which I did not deny) the community at large is not. Go talk to Red Hat and Canonical, and ask them if they would like to standardize their systems and eliminate all of the obvious differences between their products. I'm sure Red Hat will have a stern middle finger ready for you, and Canonical will have two of them.
If you don't like what's going on in the world of operating systems, do something about it. Make a Linux distribution with your desired standards, and push it. If it really is a good idea, people will adopt it. That's what the rest of the developers are doing. That is the spirit of the FOSS movement. Clearly, a lot of the bigger groups of developers have already tried that and the community rejected their attempts due to perceived shortcomings in the philosophies and products pushed by those groups.
The reason your "problem" hasn't been solved is, a good solution has not been found. In the meantime, there are a slew of options available as each of many groups and individuals try to come up with their own solutions.
I think it's amazing that you can cry about these problems, and cannot come up with a good proposal for a solution. What you're asking for is the elimination of everyone's attempts at creating good products, and their replacement with a single product that appeals to everyone. One simply cannot generate an idea or product that will appeal to every human being, and asking any of us to settle for less than what we're looking for, for the sole purpose of your convenience, goes against everything a free-spirited person should stand for.
Paint me a picture of my ideal operating system, perfected with complete convenience and uniformity. Please. If you get it right, I'll shut up. If you manage to paint a picture of something that would be ideal for both you and me at the same time, I'll pay you. I feel comfortable saying that, not having a penny to my name.
First, I am not a troll. I am the owner of the blog. I write most of the posts. Shillelagh is a contributor to this blog. He trolled you, and I allow almost all discussions. The only time that I will step in is if something is offensive to a majority readership.
ReplyDeleteI think you both raise good points, but I have to take the side of Shillelagh here.
The idea here is simple. Open source software will never adhere to overall standardization because people LIKE different things. The nature of open source software is that any idea can and will be tried by someone somewhere. The truth is inevitable.
The fear is that the kernel developers might sign on to standards such as those you propose. This could make it increasingly difficult to implement alternatives. In the end, a new kernel would emerge and the community of open source operating system advocates would have to start over... again.
Here is a standard that I propose: a source based package management system, highly portable in nature, with a vast repository. Oh wait, there's portage, and portage is that very thing. We also have zero install and a few other failed attempts at universal package management.
The FHS exists and is not adhered to either. The LSB exists and is not adhered to either.
Some people also enjoy the opportunity to tweak package compile settings to get different features enabled/disabled, or to increase the application's performance. For them, binary package management is not adequate. Others dislike automatic dependency resolution.
At the end of the day, standardization on the level which you propose, is impossible anyway. To create a single package management system would require a high level of heavy lifting and an immense number of maintainers (read monetary cost). If I install a package that runs as a daemon, it requires the ability to add itself to the init system. Init systems vary widely. This package may need access to multiple other files and that would require a standardized FH. Neither of those are good ideas.
SysV is tried and true and thus Slackware uses it. Slackware is popular on servers and mainframes where a slow system load time is acceptable. Upstart is insanely speedy. It's used on Ubuntu which aims at the home and small office crowd. GoboLinux has proven that alternative FHs are sometimes nice. I admire some of the advantages to the Gobo design, but many do not. Some find that the vast number of symlinks create a management nightmare. So they will never like such a setup. The most that you could hope for is a small number of standards adherent distributions.
We do not speak for the Linux community at large. We would never presume to do so. However, the sentiments of the community are well known. It is also true that Linus's own sentiments are well known.
On the terms of whether or not I contribute to the Linux community, I have. I have helped with documentation, bug reports, some patch submissions, and a few pieces of original code. None of these were very large contributions, but they are things that I thought needed fixing.
You say that we are what is wrong with Linux. I say the reverse. If you don't like the way things are, change them. You are always free to fork the code base, change it to meet your standards, and compete in the Linux community. Simply saying that all of the other distributions need to adhere to those standards is the imposition of will on others. This robs them of some of the essential freedoms that FOSS espouses.
So do you not believe in the value of standards and standards compliance? As I said dealing with the mess that is standards proliferation in the web development world is no fun for anyone.
ReplyDeleteWhat about ODF? Do you not think it is then unfair that MS are pressured to adopt a compatible standard so that other applications can get a fairer shot at the marketshare? Would you not find a problem with Microsoft 'improving' protocols to break compatibility with Samba? Again, what about ActiveX?
Just about everyone agrees that open standards are a good idea and valuable - just look at the immense pressure on MS to conform for the good of everyone. Sure nobody has to follow standards and are free to do what they want but to deny their value is being incredibly short sighted. There is a significant difference in the implementation of a standard and the definition of a standard, one adds value and freedom the other removes it.
Personally, I don't deny the value of standards, and I now understand where you're coming from. If you asked me five years ago, I would have agreed with you. Then, I noticed that some standards are really terrible (in my opinion) and I would rather choose a different standard. However, other people still prefer those standards. I just don't believe that we should only have one standard per category.
ReplyDeleteFor example, in my opinion, the XPS document format is awful. PDF is an acceptable balance of weight and features. PS is probably my favorite, but it isn't as popular. Often, I print documents to PS files for my own use, but I print files to PDF for distribution. I'm sure that there are people who would disagree with me. No one standard fits everyone's needs, and to demand a single standard hurts those whose needs are not met by that standard.
"Do you not think it is then unfair...?"
Who's pressuring MS to adopt a compatible standard? If it's a government or standards organization, I feel that it's wrong. If it's their own user base, I don't see a problem. If MS doesn't comply, they will lose users. That's what organic development and the free market are about.
If Microsoft breaks compatibility with Samba, the Samba team will fix it. Microsoft didn't set out to be compatible with their competitors. Samba set out to create compatibility. It is the Samba developers' responsibility to maintain that compatibility. The same goes for Oracle's office suites. If Microsoft Office is not compatible with OpenOffice, that is not Microsoft's problem. However, as demand changes, so will Microsoft's user base.
In the case of package formats, different package formats also meet different needs. Binary packages are nice for people with a lot of bandwidth, who may or may not have a lot of local processing power. However, source package formats require less bandwidth do download, relying upon local processing power to handle the workload. Also, binary packages only work on systems that comply with the standards associated with the package's format. On the contrary, source packages can be compiled to work in virtually any environment, provided that the dependencies are met.
To provide an example, people in rural areas often rely upon satellite internet connections, which are heavily limited. Those people have no other option. However, they often do have up-to-date hardware, as the computer itself still serves an important role in their homes. A clear solution for those people is source-based package management, as the majority of the weight is on the local machine as opposed to the internet connection.
Continuing with that example, a university student living on a campus in a major city is most likely accessing the internet through a ridiculously broad connection provided by the university, allowing for very rapid downloads. University students tend to have less money, and often have less powerful machines. In this situation, a binary package format would be ideal. This example shows that at least two standards would be required in order to best meet the needs of a diverse user base.
Some standards are necessary, and I understand that. I just don't believe that each category should have a single, forced standard. If anything, a commonly accepted standard should develop, but no authority should dictate it. This alienates many users who have differing tastes and needs.
I am not asking anyone to adopt my personal standards, but simply to respect my choice by not crying out for someone to eliminate my options. I was not initially disrespecting your opinion, but in essence, I felt like your opinion was that my opinion should never be heard, for the greater good.
You have implied that my way of doing things, regardless of what my way is, is inherently wrong and must be stomped out to make room for some unknown, superior method. Do you understand why I am bothered and offended by that?
@dcl,
ReplyDelete"So do you not believe in the value of standards and standards compliance?"
Personally, no.
"What about ODF?"
MS can do what they wish. They are a company. They have freedoms to make whatever others are willing to pay for. If they want to move to ODF they are free to do so. If they do not wish to then they do not need to.
"Would you not find a problem with Microsoft 'improving' protocols to break compatibility with Samba? Again, what about ActiveX?"
Wouldn't bother me in the slightest, though they may wish to notify Apple, since Apple uses Samba to do networking with Windows and the two companies make a lot off of one another. ActiveX? Whatever.
Once again, there are so many standards that it seems ridiculous to say that any of them do any good for anyone. People will use what they wish, regardless of standards. People will fork code just to avoid standards (I have done this actually). Web standards are a great idea. I can agree with the theoretical standard web platform. Your problem is that I doubt Chrome, Firefox, IE, and Opera want to implement any kind of standards. They are going to sit and enjoy their rendering differences as those differences help users decide upon their web browsers.
You're not aware than MS is being basically forced into compliance with regards to SMB (And other tech) by the EU under threats of massive fines? The fact that SMB works so well is in large due to legal pressure on MS to _not_ break compatibility. As such I can connect to my CentOS fileserver from my iMac or W7 machine without issue. If MS had their way this would simply not be possible. Breaking SMB only really hurts Linux/OSX. At the moment I have choice, and if SMB broke I'd probably have to focus more on Windows.
ReplyDeleteAs for browsers, you miss the point entirely. With your 'standards melee' situation you love so much it _removes_ choice. Want to use a banking site that relies on IE's standards? You've got to use IE. That is in no way choice and having to keep multiple different browser versions/operating systems around goes against the very point of standards and openness.
I choose Firefox for it's plugins, others choose Chrome for it's speed and UI. Having to choose IE because it's the only one that the sites will even work in isn't choice.
As for the point above about the free market self correcting proprietary and divisive standards, well, the free market simply doesn't apply to FOSS with your whole original rant being against kowtowing to the needs of the masses. If nobody is paying for the software then if people actually use it or not is entirely irrelevant - as witnessed by the sub 1% marketshare with no significant growth in over a decade. I say I have a problem (as do others) and the common reply from people such as yourself is 'f**k off if you don't like it, you don't have to use it'. Hardly capitalism in action.
It is possible to innovate and compete while still holding standards as important. Firefox got to where it is now despite MS. I actually make a point of charging clients extra if they want IE6 compatibility - where on earth is the elusive benefit in them paying more to let people who (through again 'proprietary standards') are locked into IE6?
You may think that standards compliance is pointless and a joke but stop pretending you speak on behalf of the FOSS community in this regard as it is largely people from the open source movement that pioneered the demand for open standards.
@dcl,
ReplyDeleteI really wasn't all that aware of the EU move against MS regarding SMB. It's not shocking though. The EU just has it out for MS imho.
Look, I am not saying that I do not see where it is nice. What I am saying is that standards hardly change anything among a group of individuals who ritualistically fragment everything anyway.
@dcl:
ReplyDeleteI didn't know the EU was doing that either, although it doesn't surprise me. The whole thing's a nasty mess, in my opinion. Let me bring this back to the basic points, if you will, to make sure that I understand what's going on here. Read through, and correct me where I'm wrong.
Based on what you said, it sounds like you would like to see a single package format for all Linux distributions. You are aware that it would require all distributions to be exactly the same, varying only in what packages are added after the base is established.
Ford and I both feel that forcing that type of standard would eliminate the organic development of the software, since some type of software overlord would have to dictate what passes standards and what doesn't.
I can agree that the convenience provided by standards is nice. I, however, do not want to surrender the freedom to customize my system in exchange for that convenience. If I assemble my own Linux-based operating system, I do not want to be forced to build it to someone else's standards, and I want to have options on which packages I use and how I build my file hierarchy. I want to be able to choose my init system. I want all of that to be my choice.
On the subject of online banking, I don't use it. I never have, and I probably never will. However, if a bank refuses to support browsers other than IE for their online banking service, once again, it's their decision to give up the customers who went for a bank with a more universally functional web site.
I just keep getting that, while I want the freedom to choose, you want freedom from having to choose.
"I just keep getting that, while I want the freedom to choose, you want freedom from having to choose."
ReplyDeleteNo, as with the browser example I want the freedom to choose, not having you choose for me. At the moment if I pick Ubuntu then I am entirely limited to the packages and support it provides, same with CentOS, Suse etc. I can buy any Android phone and use (almost) any app. What you are suggesting is each device would have its own 'standards' and be unable to run the apps of any other. And you are calling this 'choice'. If the Nexus One only ran Nexus One software and the Hero only ran Hero software somehow people would be better off? They would have more choice?!?
Unless you roll your own distro from scratch then you don't get this choice either, someone made the decision for you and now you are stuck with it. It's not your decision on file hierarchy, package managers or init system, it's theirs.
A package is just a bunch of files and a manifest. Technically the package shouldn't be running any scripts (from a security point of view), instead it should be up to the OS to act on the manifest. The init system should be irrelevant as the package should notify the OS of the daemon it wants started and the OS should handle the installation - same with file placements. Windows have had a standardized package format for over 15 years. OSX has had one for at least a decade. Sure there are corner case apps (mainly system utils) that are version specific but these take up a negligible fraction of the share.
You can also (shock horror!) allow packages based on modifications of the standard (such as the custom CSS rules) so while universal packages will run you could still create platform specific extensions to leverage the individual benefits of the platform.
Look at your beloved compile from source. Everyone settles on the C standard, various library and API standards and as a result you can choose to compile almost any source you wish. I know if I write a program in C it'll compile on any valid C compiler. Having multiple different C compilers where the base functions are all slightly differently named or where the regex implementations are all slightly different isn't choice.
In a nutshell multiple standards open up the choices for the developer at the cost of limiting choices for the end user. If you don't give a crap about end users that is fine, but stop pretending that locking them into a small shard of the ecosystem through deliberate incompatibilities is giving them choice. What about the ASCII table? It's a standard. Why don't you fragment that to enable even more 'choice' for end users as they find even txt files are no longer compatible? Why not even just go the whole hog and adopt a middle-endian byte order to properly give your users the 'choice' that they deserve?
@dcl,
ReplyDeleteI would agree with you on this, but the problem is that on any of these platforms of which you speak people are free to compile the applications that are not in repositories. People are free to port away. Usually, this is as simple as "./configure && make && make install". I am sorry but if that is too much to do, people are lazy. It isn't much to work with two different package managers here, RPM/DEB. There are other distributions that do things differently, but for the most part people are using one of those two. Typically, they are using one of those two with APT. Where are the differences really? This is especially poignant considering tools like alien which will install RPMs on a DEB machine anyway.
"Where are the differences really?"
ReplyDeleteIndeed. It appears your idea of choice is to make things different enough to be a nuisance, but not quite different enough to actually give any practical benefits. Plus calling "./configure && make && make install" simple shows a massive lack of respect for usability and end users in general.
Not really. Who uses rpm or dpkg commands? The same people who would use configuremakemakeinstall. The end user, if even aware of a command line, would use apt, aptitude, synaptic, or something similar. For the packager, a few different commands and you have your RPM/DEB rolled up, and ready for sale. Where is the nuisance? The real issue becomes trying to get people to develop for the platform at all, and that has very little to do with package management differences, and far more to do with audio and video. We have a defacto standard of X11. We even have a defacto standard of GTK (seeing as mozilla uses it and it is therefore always available). With Audio we have alsa (which barring OSS4 distributions, is also a defacto standard). The reason these things present a road block for people is beyond me, but they are often the reasons given. Which toolkit? Which sound system? blah blah blah.
ReplyDeleteThe more important reason that people do not develop for Linux is that it is small to the point of not mattering, and that using certain FOSS code can lead to a legal nightmare for development firms.