This blog is devoted to nonconstructive criticism, bashing, and other things that, being neither answers nor questions, are evidently unwelcome anywhere else in Linux Questions.
Why Linux is and always will be at 1% of desktops
Posted 12-11-2009 at 05:10 PM by AGer
Simple. It is its nature. Let me tell you how a Windows user sees it.
Linux is a toy for developers who rely on somebody else to package their produce for users. Unfortunately, humanity does not have enough man power to do that. For example, consider Ruby coming to Windows.
It used to be simple - I download the Ruby source, compile it, and see how good the language is. Next day I find out that gem does not work - no zlib found at compile time. I add zlib, recompile Ruby, and install some gems. Next I run over more dependencies, none that simple, and give up. Naturally, I remember that C# is just a couple of clicks away and works without problems, but this is not a culture clash yet.
Ruby installer enters. It is good. Really good, by whatever standards, Windows or not. The dependencies are there. The installation is simple. Most (many?) gems can be built. Rails installs like a charm. With my favorite test, it works 15% faster than the VS9 compiled Ruby. Life is good, FOSS is heaven sent? NO.
In the Windows world, one likes GUI. There are many GUIs for Ruby, all easy on Linux, where the corresponding packages are preinstalled. On Windows, I have to install some kit yourself. More so, if I have a client, I must sell yet another installation to him, as if the Ruby installation is not enough. Oh, sorry, I do not always have to. Some kits are readily available as a gem, like wxruby-ruby19. It apparently works, but how to make it show native Windows 7 buttons? So silent Google is, let's take another one.
Shoooes. Wonderful little thing that can be great. Be it not packaged as a toy, I could use it.
GTK. Download, unpack, use. Perfect (is it the exception to confirm the rule?). Now, the last piece - Ruby binding - ruby-gtk2-0.19.3. Let me try to compile it: the headers are there but not found - move them; the def files are there but not used - fix Makefile; unnecessary and missing libraries are referenced, some twice(!) - more fixing Makefile. Now it compiles but does not work - there are no def files for some libs. Show stopper, no desire to pick all functions from C by hand. Evidently, the developers do not have such desire either. The very fine Ruby Installer just removed a veil from the ugly FOSS face?
Wait, why not just tell gcc to export all symbols? Google brags about variants of --export-all-symbols, but no one works, and the official gcc docs do not know even that. This makes me think about the compiler, and NOW it is culture clash. I find this in another blog:
It is about gcc 3.4.5(!), the latest one MSYS considers stable. The same people who ask me to say GNU/Linux call this wonderful tool cross-platform. I would better believe they are alien sent saboteurs trying to hinder the advancement of mankind with poisoned compilers, than say GNU/Linux once again.
Now I see I did not fully understand WHY it takes several people many months to create working Ruby Installer. Or WHY there is no distro on Distrowatch that has all interesting things current.
Windows user in me runs back to C#. Ruby user in me runs back to Linux. Both crying.
Those who think FOSS developers do not routinely release unwashed code may order slackbuilds by length and see what it takes to make common things work.
Most interestingly, all this ado may be about nothing. Having FFI it should be possible just generate bindings automatically to virtually everything.
It is a Catch-22 situation. Without distribution maintainers we will have no Linux. With distribution maintainers, we will never discipline developers. 1% forever!
Linux is a toy for developers who rely on somebody else to package their produce for users. Unfortunately, humanity does not have enough man power to do that. For example, consider Ruby coming to Windows.
It used to be simple - I download the Ruby source, compile it, and see how good the language is. Next day I find out that gem does not work - no zlib found at compile time. I add zlib, recompile Ruby, and install some gems. Next I run over more dependencies, none that simple, and give up. Naturally, I remember that C# is just a couple of clicks away and works without problems, but this is not a culture clash yet.
Ruby installer enters. It is good. Really good, by whatever standards, Windows or not. The dependencies are there. The installation is simple. Most (many?) gems can be built. Rails installs like a charm. With my favorite test, it works 15% faster than the VS9 compiled Ruby. Life is good, FOSS is heaven sent? NO.
In the Windows world, one likes GUI. There are many GUIs for Ruby, all easy on Linux, where the corresponding packages are preinstalled. On Windows, I have to install some kit yourself. More so, if I have a client, I must sell yet another installation to him, as if the Ruby installation is not enough. Oh, sorry, I do not always have to. Some kits are readily available as a gem, like wxruby-ruby19. It apparently works, but how to make it show native Windows 7 buttons? So silent Google is, let's take another one.
Shoooes. Wonderful little thing that can be great. Be it not packaged as a toy, I could use it.
GTK. Download, unpack, use. Perfect (is it the exception to confirm the rule?). Now, the last piece - Ruby binding - ruby-gtk2-0.19.3. Let me try to compile it: the headers are there but not found - move them; the def files are there but not used - fix Makefile; unnecessary and missing libraries are referenced, some twice(!) - more fixing Makefile. Now it compiles but does not work - there are no def files for some libs. Show stopper, no desire to pick all functions from C by hand. Evidently, the developers do not have such desire either. The very fine Ruby Installer just removed a veil from the ugly FOSS face?
Wait, why not just tell gcc to export all symbols? Google brags about variants of --export-all-symbols, but no one works, and the official gcc docs do not know even that. This makes me think about the compiler, and NOW it is culture clash. I find this in another blog:
Code:
As a newly-inducted Disgruntled Vista User (though only having installed it in order to be familiar with it and provide support for other people), I've ended up appreciating Brian Dessent's set of patched-for-Vista GCC 3.4.5 drivers. Unfortunately, G77, GCJ and GNAT versions are lacking; moreover, the tarball isn't hosted with the MinGW project and is hard to find without asking on the mailing list and counting on someone in the know to reply. There is a fairly steady trickle of posters on the Code::Blocks forums who have trouble running GCC in Vista because they aren't even aware of the need for a fixed version.
Now I see I did not fully understand WHY it takes several people many months to create working Ruby Installer. Or WHY there is no distro on Distrowatch that has all interesting things current.
Windows user in me runs back to C#. Ruby user in me runs back to Linux. Both crying.
Those who think FOSS developers do not routinely release unwashed code may order slackbuilds by length and see what it takes to make common things work.
Most interestingly, all this ado may be about nothing. Having FFI it should be possible just generate bindings automatically to virtually everything.
It is a Catch-22 situation. Without distribution maintainers we will have no Linux. With distribution maintainers, we will never discipline developers. 1% forever!
Total Comments 2
Comments
-
only with title i agree. partially. it isn't a desktop system mostly... with some workarounds of a skilled user system may come nice for unexperienced user...
it's just my opinion linux is not a desktop OS.
/* comment or not? */
/*
what of .NET and other epic failure(won't mention windows itself): did someone ever release a software working fast there? go ahead make me some graphical engine on it! lolwut? too slow? well then try building me a kernel! some operating system that will work on old Pentium 1. lolwut? it won't boot? eh, perhaps it requires 128M^x ram, yes? or needs 2core+ CPU? gates of hell! assembler ftw.
.NET is a thingy without a future. what will you do when windows is gone, uh? will you feel yourself happy spent damn much time learning and coding that sh*t? i guess no.
*/
finally...
yes, linux is not a user system right now. from what i saw on GUI in debian lenny i can say one word: "sh*t!!!"(it isn't any stable). it's GUI that unexperienced user can possibly use is a fail. epic fail. any beginner user will say that.
linux is more of server operating system. i'm a developer and sysadmin. i personally don't really care about GUI. most of my work except for browsing and chatting on jabber i do on console. and i'm feeling good with it.
of course maybe other linux distros can be more user-friendly... i didn't try them because not really interested.
again it's just my thoughts and experience.
linux will spread in some time. it needs time. and your help.
Quote:Without distribution maintainers we will have no Linux.
linux needs developers. developers that might improve/add some core features that are unstable/unimplemented by now or developers that will build a user-system, ones that will create stable GUI apps, components and other thingies. you can be the one who will help. personally i plan to dedicate years of my life improving linux in future.
the main thing is: if you don't like something: you either don't use it or you improve/replace it.
the second way is better.Posted 12-11-2009 at 06:02 PM by Web31337 -
Quote:what of .NET and other epic failure(won't mention windows itself): did someone ever release a software working fast there? go ahead make me some graphical engine on it! lolwut? too slow? well then try building me a kernel! some operating system that will work on old Pentium 1. lolwut? it won't boot? eh, perhaps it requires 128M^x ram, yes? or needs 2core+ CPU? gates of hell! assembler ftw.
.NET is a thingy without a future. what will you do when windows is gone, uh? will you feel yourself happy spent damn much time learning and coding that sh*t? i guess no.
Paint .NET requires 29 Megs of memory; GIMP - 43. Paint .NET starts in Virtual Box about 3 times faster then GIMP on XFCE. So, what looks like sh*t?
If Windows dies in foreseeable future, it will take Microsoft with it, I hope. .NET will be liberated, get the same status as Java and replace it in no time. If Windows does not die in the foreseeable future, what's the problem?
I guess .NET, Java, and all wannabees share one huge mistake, possibly purposely implanted. Managed code removes an object when nobody references it. Good. Now I want to get rid of an object and tell everyone that references it to stop doing so. No way.
Quote:no, you're wrong. without distribution maintainers we will still have linux. a linux that will be used by web-eleet: hackers and sysadmins, the ones that really want to know more or just need stability required to serve something heavyPosted 12-12-2009 at 03:34 AM by AGer