View Single Post
Old 26th May 2009
TerryP's Avatar
TerryP TerryP is offline
Arp Constable
 
Join Date: May 2008
Location: USofA
Posts: 1,547
Default

Well, I might sound like a jerk, but I think I will open my mouth.


In my opinion, if you're not working on X.Org, then shut up -- whining or bitching about a program rarely makes it better. Unlike *some* things that may irk you, X.Org for the most part has source code available. Don't like it, then hack on it, or pay someone to hack on it for you, and if that is still not good enough, shove off to another program or put up with it.

Running a computer is *not* a democracy! That is why we have a kernel in charge and more general forms of control in place above it . If software was democratic there would be no client/server architectures, only peer to peer. It is the X.Org folk who have a right to say in what way things go with /their/ implementation of it. If they wanted to do so, they could say fuck you all: we will only support the Amiga 500 !!!


That is how I feel about listening to this discourse, and just about every discussion of its nature.



The only time I had to modify xorg.conf because of an update was to get my mouse cursor working again; after learning about the 3 fingered salutes being defaulted off, I was annoyed that I never heard about it until afterwards because it can be handy in a pinch, but also aligned myself to the idea, that it should probably have been defaulted as it is now, 20 years ago. Not my project, not my say.


For portability, what can be expected of it?


Portable code can be written in any language, and in my experience there is no portable high level language with more non-portable code written in it then there is with C. Standard C is the most portable anything that I have ever seen: and as much pain as it can be to live with, since doing _anything fun_ in C, is essentially non portable in comparison to the language standard itself! I also commend the insane level of meticulous thought that must have went into standardizing C, which is also probably one of the least 'standardized' languages in use...

No matter what you go, what you do, something like X.Org will be either NON PORTABLE or NON FUN. The question is how much of it has to be that bitch to port along for the ride.


If you don't believe me, just look at C99 and tell me where I can find a standard library function emulating FreeBSD system call number 136 on any platform, even ones that don't guarantee a hard drive!



The thing that I wonder, is *how* much of X.Org must be ported to be useful. Do we have to port each driver to the kernel, do we have to port some library, do we have to port every single part of the X server? Dealing with the innards of graphics cards is pretty damn unportable stuff in its own right, let along dealing with kernel specifics, unless you want to standardize both, in which case you would likely have to end up with something half as portable as standard C or as portable as sound APIs (or if you like, as portable as x86 sepcifics), and about as useful as Dartmouth BASIC from the 1960s on modern computers!


I know what I would like to see, from the perspective of a programmer: drivers that use as few bits of the native kernel directly, and instead utilizes code that glues the relevant features of the system into the X Windows System at the appropriate levels where they are needed: so you don't have to directly port every single driver to each kernel, anymore then you should technically have to port xeyes to each X11 implementation. And I would actually consider it an unfortunate design decision if X.Org didn't do this at some level of hardware access, at least for the PC architecture.


But as I don't write the code and as I don't have the skill nor the time to acquire it, nor the bearded mentor to iron it into me, I leave X.Org to being X.Org, and accept it for what it is: a massive body of code that I could never do myself -- short of spending a couple of life times doing it. And also as a body of software that in the long run, makes my life more easier then it does harder.



If this offends anyone or requires moderation, sorry !
__________________
My Journal

Thou shalt check the array bounds of all strings (indeed, all arrays), for surely where thou typest ``foo'' someone someday shall type ``supercalifragilisticexpialidocious''.

Last edited by TerryP; 26th May 2009 at 05:20 AM.
Reply With Quote