On Fri, 23 Mar 2007, Shlomi Fish wrote:
Seriously now - what can we do to get rid of the fact that a single
architecture controlls most of the market, and it sucks. Here's what. Why
is the x86 problem? That's why:
There is no 'x86' problem. There is a marketing/market driven spiral
called 'the PC industry'. It could have been a '68k' problem (and it
was, in embedded telecom, until recently), or something else. The
economical mechanism that unleashed a (then) substandard cpu and
architecture under a Name (IBM) onto an unprepared and uneducated market
would have worked the same way with something else. Of course it could
have been a something else that is 'better' from the engineering point
of view.
[SNIPPED]
I started reading it, but then noticed it was too long. Can you provide an
executive summary?
In a few lines:
Current cheap (and c**p engineering) PCs are a result of a political
decision made by IBM when they developed the PC based on x86, filtered
by 20 years of technology wars which tried to improve the x86. This led
to a commodity hardware platform that was able to run a hardware
preemptive OS with virtual memory in the eary 1990s (with the 386).
Current open source *nix derives from work done at universities in the
1970s and 1980s when *nix was developed initially. The OSS movement was
political in the beginning, but when the US government reversed its laws
which made work done at public expense freely available, and allowed
AT&T to close access to the *nix sources, the OSS movement became a need
for universities and students who could not afford or did not want to
deal with licenses.
These two items, commodity hardware and OSS elements (like the gcc
compiler and software suites) reached critical mass in the early 1990s
when the open source *nix on commodity hardware really took off.
So current *nix owes its exsitence (and leanness and cleanness) to its
origins. 'Removing' the x86 platform would remove most of the need for
OSS.
will make them non-free-software and not open source as a FOSS must be usable
for any use:
http://www.gnu.org/philosophy/free-sw.html
Please read the Vista EULA. Also IBM etc have sued companies before, for
running their products in emulators. Windows IS non-free software, and
by porting desirable OSS applications to it you are supporting Windows,
not OSS.
If you want to go this way and forbid that, go ahead. But people who use only
FOSS won't use your software, and the FSF will reject your software. Do you
really want to go there?
Read the GPL3 and what it means. It is possible than an interpretation
of the GPL3 will be that it may be illegal (or at least a gray zone) to
port GPL3 OSS to closed systems, like Windows. I do not agree with a lot
of things in GPL3 but I regard this particular element as a desirable
feature.
Now, don't get me wrong - I'm not saying you should not make use of the
techincal advantages of Linux and other Unixes when writing software. But:
1. Often you don't need to. (If your software only does text processing or
data proecssing, file system and TCP/IP, for example)
2. Often you can make sure the software still runs on Windows, only with some
limitations.
However, restricting your software to Linux alone by laziness, artificially
incopmatible code, or worse - licence restrictions - is stupid.
I am a stupid person who has witnessed dozens of people keep to windows
in despite of strange things they had to do to run the OSS applications
they had to run. They did it because there existed at least one
complicated, unreliable way to use the OSS application without switching
to it entirely, and after having seen and used the same OSS on a native
*nix system. If the complicated way would not have existed, then they
would have switched (they showed proficiency in using the native OSS
platform after a short time). This sums up more than 10 years of
doing this.
If you want to feed the opposition's sheep, you are free to do that. But
every time you do that there is one OSS desktop fewer.
What you are describing above is the exact opposite of what should
have happened. Those users need X and they are allowed to use their
legacy systems to use it BECAUSE X provides interoperability. That is
the WRONG kind of interoperability. The right way would have been to
have naturally forced most of the users to run OSS because they need
X. By porting OSS to Windows you are ensuring the survival of that
model, and the continuation of its revenue model.
Again, someone would have written an X server for Windows sooner or later.
There are now several of those including the free X.Org-port for cygwin,
which I've seen used extensively at my work.
While you make sure your software runs only Linux, there are many other
developers out there, and one of them could duplicate your efforts for
Windows. So why try to stop the water from flowing in the first place?
I am not the one who stops the water from flowing, but I will be the
last one to dig the bypass channel that removes water from 'my' river,
especially when there is not that much water to go around and the
competition is polluting my water heavily and deliberately anyway, and
you may have to point a gun at my head for me to dig in the first place.
My point is that it's hard to tell someone that he can switch to Linux where
he will find none of his familiar applications, and will be unable to open
his data. Most of the time, they simply won't switch as much as they hate
their windows.
However, if they've switched to use a lot of high-quality, portable FOSS on
Windows, then the switch would be trivial.
People do not switch. You have to make them. There must be a strong
incentive. I know at least one person who uses all OSS applications on
an ancient Windows version and refuses to switch because there is on
ActiveX control he uses to adjust pictures in a certain way for Ebay
sales. No amount of demonstrations with other graphics programs could
convince him. People are sheep and they buy m$ advertising, fud, and
stories. If you want to promote OSS you need to understand at least as
much consumer marketing and psychology as you understand coding.
Every time someone ports an OSS application to Windows, the life of the
Windows 'monopoly' (actually upgrading pyramid scheme) is prolonged.
Wrong.
Prove me wrong, after carefully reading what I wrote above.
OSS developers who do that are working directly against OSS. Every
time a necessary OSS database front end is made to work on Windows
the number of potential OSS desktops decreases. STOP DOING THAT.
You can convince a few people of this. But this is the "Let's make sure no-one
does this, because if someone does, then we're screwed". You're trying to
make sure all people on the planet agree with you. You're trying to build a
full consensus. However, if one person - just one - does this on his own and
it's his right according to the licences of the software, then your entire
co-operative non-activity collapses. Sorry, but such plans, *never* works.
You really don't understand. When you port OSS to Windows with full
features you DO NOT follow the native application level support, which
is that of NOT supplying the full feature set, keeping some for the
UPGRADE path. By simply FOLLOWING THE NATIVE MODEL you will help create
an incentive to UPGRADE TO FULL OSS. This is EXACTLY what everyone does
when writing software for Windows.
Every OSS developer who works to port a necessary OSS application to
Windows supports the Windows/PC upgrade spiral, and the pyramid scheme
revenue model, and directly opposes the development and user base
expansion of OSS users.
No he does not. He just makes sure that people can use his software on their
computers.
Yes, but this explanation gets old after a while, assuming that the
secondary goal of the developer is to increase OSS native platform
users.
I'll make it clear one more time: If anybody means by 'interoperability'
supporting the continuation of the Windows pyramid 'blood line', then me
and them do not speak the same language.
Wow! What bitterness. Peter, have some common sense: if someone is running
Windows on his machine, and has for a long time and you tell him: "Please
install Linux. It's a superior Operating System, but it cannot run any of
your applications or open any of your existing data." is he going to switch?
No, he's going to say: "Fine! Linux may be superior, but I want to use my
word processor, spreadsheet, web browser, etc. with the gigabytes of existing
data, so there's no way I'm switching.".
No, that's not the way it works. The way it works is, people need to do
a new task Z. They are offered the solution using OSS application ozz.
After a lot of whining about why it cannot be run on an ancient Windows
500MHz computer, they are shown a demo on a live boot system on the same
machine. They are happy. But with more whining and swearing that their
children are starving (typically in a Hertzlya Pituach villa), one
'temporarily' comes up with a solution that actually runs ozz using a
'temporary' dual boot arrangement involving a disk on key, a live cd,
and a minimum of 10 minutes of boot waiting time. And guess what, in
despite of regularly losing the live cd, they stay with that, because of
the irreplaceable 'solitaire' game. This is human nature. Clearly if the
'temporary' solution would not have been implemented, then either this
would have become a proper dual boot box, or a clean OSS box, or there
would have been another OSS on the network, doing ozz. The mistake is
the 'temportary' solution. Running X server on Windows to access the
'real' application on OSS is the wrong 'temporary' step. While doing
this is necessary sometimes, it must be clear at all times that
upgrading to full OSS desktop will bring large benefits immediately.
This must be made clear at every step. To the point of making a popup
window that opens every time X is started to remind users 'to upgrade to
OSS desktop' asap.
You cannot immediately revolve the way people use their computers. Incremental
transitions are a much better strategy. And like I said trying to convince
every developer on the planet that it is a bad idea to port software to
Windows is not going to work. I, for one, have concluded that it is a good
idea to port the software of myself and others there.
There are two kinds of incremental transitions: small and undisturbing
and large and disturbing. Switching platforms is of the second kind and
the incentive to do it (and the kick in the b**t to get it started) must
be proportionally large.
Port as much as you wish, but for your own good, make the native OSS
more feature-rich, faster, better optimized, and with a better UI. This
is easy because of the discrepancies between the respective platform's
technical performance. All I'm asking is, don't optimize the Windows
version more than the OSS version, and make it clear everywhere (in
documentation etc) that the OSS version is superior.
I can rant about how crappy Windows is all day, because it is crap. But I'd
rather convert Windows' users to Firefox, OpenOffice.org, Inkscape, GIMP,
etc. than preach to them about how Windows is bad and why they should not use
it. Some people also have to use non-free UNIXes like HP-UX or AIX, but they
can still use GNU software there and other software. Are you suggesting we
also prevent our software from running there?
Whenever you rant about crap consider that when you contribute to it you
contribute to crap. Crap with a silver spoon in it is still crap, and
now you have a dirty spoon people will remember as such, too. That would
be a waste of silver spoons.
Peter
=================================================================
To unsubscribe, send mail to [EMAIL PROTECTED] with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail [EMAIL PROTECTED]