XFree86 Politics
Pivot writes "Keith Packard wants to fork the XFree86 effort. 'It has been brought to the attention of the XFree86 Core Team that one of its members, Keith Packard, has been actively (but privately) seeking out support for a fork of XFree86 that would be led by himself. He is also in the process of forming a by-invitation-only group of vested interests to discuss privately concerns he has about XFree86 and the future of X. He has consistently refused to even disclose these concerns within the context of the XFree86 Core Team, which makes his membership of that team unviable. As a consequence, Keith Packard is no longer a member of the XFree86 Core Team.' The XFree86 team is trying to become more open, to combat the fork. Keith is a capable developer, having worked on FontConfig, Xft, the X render extension etc. Meanwhile, All is not good in how XFree86 drivers are being developed. Anyone remember the GGI initiative a few years back, and the uproar it caused?"
Keith Packard is also more than aware of similiar problems. You don't start talking about a fork unless you have serious reasons to think that your fork would be better. Just forking for the sake of it just splits the developer base, and the new fork usually gets bad press and poor support. I don't think Keith Packard is stupid, and Mike Harris would seem to give some very good reasons why a fork might be required.
I'd rather not see a fork of XFree86, but if they can't solve their problems quickly then they may find their hand forced by a fork. That won't be pretty.
I think XFree86 needs a good fork. It seems to suffer from a sort of PHP-Nuke meglomania. Vendor support is massively important; if ATI is nice enough to supply patches to add support for their latest cards and latest features, it would help linux and unix in general to be nice enough to check in the patches ASAP. If vendors look upon Xfree86 as worthless to support drivers for because of inability to delegate responsibility, then X and linux in general will never reach the usability levels that we strive for.
That being said, forks are dangerous and should only be done by talented contributing people with people skills. Keith Packard is a good coder, I hope he's as good with politics.
Gnuyen
I've read Mike Harris' log entry and I agree with many of the points he brought up.
... if XFree86 wants to be more open, why did they remove Keith Packard from the core team in the first place? I know he has contributed in XFree86 that is beneficial but still, despite that he wants to fork off his own XFree86 tree, does the people at XFree86 require to know what he (Keith) intends to do with it?
But the thing is
~ Old Warriors Society
Oh and BTW from http://www.xfree86.org/developer.html
I don't know if Mike's quote from that page is old or just innaccurate.
It sounds like XFree could use some new blood. It's too bad there aren't just more active developers as it would help to steer it in the right direction. The Linux kernel is a good example of a piece of software which is ultimately controlled by Linus' inner circle, but which is really driven by the hundreds (thousands?) of other people who hack on it and release their own trees, etc. Maybe writing GUI code is boring by comparison, or something.
-73, de n1ywb
www.n1ywb.com
XFree is old, should be rewrited from scratch, but the problem is the time. XFree works in a lot of architectures, and a lot of different hardware. Out there there are good alternatives (from a "design" point of view) like DirectFB but they run just on few hardware, and, usually, only 1 architecture. So, the problem is, XFree is too big to make forking a good idea, i think people should just make current X better without any fork. We need some standard for direct hardware access (like DRI) and concentrate work on them. Just an opinion...
Keith better be damned sure _why_ he's forking
That is almost certainly why he has been "privatly" talking to people about a possible fork. He isn't stupid, and there is no way you could fork a project like XFree86 without both internal and public backing of some sort.
Now that XFree86 Core has got its panties in a bunch and thrown Keith out, it has probably made the posibility of a fork even more likely. After all, Keithe has been one of the main drivers behing recent XFree86 development, he is passionate enough about XFree86, he has the skills to lead a fork, and he is unlikely to want to move onto something else. There is also the opurtunity to solve a lot of the internal development problems that XFree86 seems to suffer, which would be a good thing.
Now having said that, I hope that Keithe does not fork XFree86. Its a big project, and could simply cause a fabulous split in the developer base. That would be very, very, very bad.
...is one that constantly seeks out new talent and includes their efforts in the project. One thing I've learned about managing (FSVO) an open source project is that the worst thing you can do is to ignore people's contributions. Heck, if Mike's diary entry is still the state of affairs, there are more people with commit access to the Hercules CVS repository than there are XFree86, a project that's probably two orders of magnitude bigger!
No wonder people are getting frustrated. Perhaps a fork is in the best interests of the XFree86 project.
I'd be interested to hear Keith's side of the story, especially his concerns. If they're correct, though, and he's only willing to discuss them with a handpicked developer community, I doubt we'll hear anything useful.
Disinfect the GNU General Public Virus!
The binaries for XFree86 are over 70MB in size, what on earth are they putting in there? Maybe it is time to fork this project or start again from scratch and apply modern design techniques. How about modularising the engine? Why do you have to download every driver for every stinking card out there when you only have 1 video card in your machine? This thing's bigger than early versions of Windows, and it's only a display driver. With a modular design the individual companies could produce their own driver which could simply drop into the main X engine. That would free up the developers from worrying about approving all the patches from each of the major vendors, and they could concentrate on writing some useful core software.
All those moments will be lost in time, like tears in rain.
The whole strength of the open source concept is that the many hands in a community can make complex problems shallow. If forks can't happen, then a monopoly on the supply of software develops. However, within there already seems a situation in which the threat of a fork is forcing a previously partially closed community to consider how to open up more.
Don't forget that forks are considered by Linus to be essential elements of a successful project. They allow the opportunity for alternative approaches to be tried, and if successful to be adopted. The trick in the kernel is that Linus recognises this and is prepared to merge again when a fork shows its worth
This hasn't worked through yet - it may well be that the threat that it might happen allows the situation to improve such that the natural progression is to bring the two sides together again. This is an opportunity not a threat and we should encourage it
The degree of modularity that would allow vendors to plug in binary drivers would lead to vendors no longer cooperating at all in providing open source drivers.
Some would say that this goes against the spirit that XFree86 is being developed under, and would lead to the project eventually falling into becoming fairly proprietary.
I am not saying this is good or bad, but there's a political agenda behind the licensing tactic of many Open Source projects. That's how it works.
Sure there is: the hooks just aren't in the kernel. And that's the point: the kernel is not designed as a set of software components that people can assemble into a system, it's a monolithic piece of software that often needs to be patched in order to support some new piece of hardware or functionality.
And how many of them have ACPI or FireWire?
Most of the new ones have ACPI. In fact, my two year old desktop has ACPI. I suspect the majority of new laptops being shipped can't be suspended under Linux, even though the code has been donated by Intel a long time ago and works.
Linux is so much more stable than Windows because Linus is so picky and doesn't just cobble stuff into the kernel before it's ready.
This isn't about Windows vs. Linux. The Windows kernel seems to suffer from the same problem, although for Windows, they at least have figured out how to make third party drivers work a bit better. But just because everybody suffers doesn't mean that there isn't a problem.
Linus is doing a great job at what he is doing. But there is only so much any group of developers can do with a software system that is millions of lines of code and for which new components are often distributed as patches. We will have to move to a different architecture at some point; the only question is when and how.
The window resize issue is a known one, and due mostly to a bug in the "smart" scheduling algorithm XFree uses, rather than any inherant slowness of X or XFree.
The lagging of the window contents behind the borders is likewise known, havoc pennington has been playing with XSYNC lately to try and reduce that issue.
What we actually need is a replacement for X11, redesigned from the ...), which is a shame, but it's
ground up, with compatability libs to allow normal, window-bound
X11 apps to work on it. We'd lose existing "special" apps (window
managers, screensavers, panels,
what needs to be done to allow for future improvements.
Don't get me wrong, I mostly like XFree... but the design is
(gradually) reaching the end of its useful lifespan. There are a
number of improvements I'd like to see that are fairly impractical
for a design based on X11. Resizing windows is nice, but I also
want to be able to scale them. (This implies that bitmapped fonts
should die, among other things.) Being able to grab a bitmap of
the desktop and use it as a window background is one thing, but
I really want a full alpha channel for every window (controlled
by the application for each widget in the window, or for each
pixel in an image canvas widget) plus an overall opacity setting
(controlled by the user) for the whole window. And so on.
Cut that out, or I will ship you to Norilsk in a box.
On the other hand, the fact that it's there and you know it's over 2 years old and hasn't been fixed is a vast improvement on not tracking it at all, which seems to be the problem.
Several cases. Personally, I use the network transparency of X daily, to use GUI apps that are being run on more than one computer *without* disturbing the desktop on said computers (and in fact, one of them isn't even running its own X server). I find this feature very useful, and something VNC and its ilk does not replace.
Also, X over a network is quite a bit faster than VNC.
Oolite: Elite-like game. For Mac, Linux and Windows
g4dget is correct. That is also the reason why Linux is faster than Windows- you are running one program rather than several that hook into each other. But what Windows loses in speed it makes up for in flexibility. Its a trade off, and each made their decision. Since Unix (and hence Linux) is essentially a server OS, graphics display are not its core concern- networking performance is.
The Windows kernel seems to suffer from the same problem, although for Windows, they at least have figured out how to make third party drivers work a bit better.
Well, for the most part. You still get flaky implimentation. For example, until its influx of 3dfx people, ATI really sucked ass with both hardware and software (and drivers). Now they unified their drivers like nVidia, and are getting some pretty stable performance: they still arent near stability of nVidia tho- nVidia cards are like a tank.
But aside from all that stuff, there are some good some bad with other graphics drivers, especially the farther down the food chain you go. But thats the whole thing- it IS possible to make rock solid third party drivers for Windows, its just some companies generally dont have people skilled enough to do so, or else the product itself is unstable.
Manipulate the moderator system! Mod someone as "overrated" today.
Keith has come by PSU (I mean Portland State, not Penn.) several times to lecture in Bart Massey's AI classes. I haven't met him, but I do know some of the people involved in some of this "new X stuff." My girlfriend even had lunch with him once. Several of the people I work with were involved in pre-XFree86 X development and have nothing but good things to say about him.
My take on this is, Keith has some pretty radical ideas for changing X. At least, radical in the eyes of the XFree86 "core team." I've seen him on the lists defending his opinions, and he does so maturely and patiently, even when people don't agree with him. I think he's just given up trying to convince the XFree86 team, but he doesn't see that as any reason to abandon his development. Why shouldn't he make a fork if that's what he wants? If XFree86 didn't want this, they should have never made the source open.
For this perceived treachery, the core team whines and boots him out. Pretty stupid considering he was making considerable headway with Xrender, the only major advance in the basic graphical functionality of X in many years (excluding hardware acceleration).
I'm gonna go out on a limb and say that if Keith is successful in what he's doing, there will be plenty of people running his stuff in the future, and XFree86 might become much less relevant.
It says that someone realized VNC/rdesktop style screenscraping is easier to implement, and wrote a GUI to control it.
In other news, it's also easier to write a note with a pencil on a piece of paper than it is to log into a computer, log into a discussion site, and type the note in. There are times when each is the more appropriate choice, depending on the task at hand.
"Nothing was broken, and it's been fixed." -- Jon Carroll
just forking for the sake of it just splits the developer base, and the new fork usually gets bad press and poor support.
:-(
I think I'm going to cry. Keith has done the most amazing stuff -- Xft, the modern font architecture -- all the really good features that I've played with recently. If he splits off, XFree86 is going to take a very serious hit.
Please, please, *PLEASE* try to work this out with Keith, XFree core. If you need to maintain more stability, think about a more unstable devel versions, or even a second "really unstable" devel tree that patches can at least enter the tree. Anything, just don't end up hating each other and refusing to share your code with each other.
Either side of such a fork would have a much weaker team. We need XFree86 so much right now, with 3d becoming important to mainstream Linux users. I appreciate all that the XFree folks have done, and asking for more seems ungrateful -- but please try to work it out without ultimatums. *Please*. The mplayer folks hang together, even though A'rpi's abrasive, because he's a really great coder, and everyone would be worse off if he wasn't involved.
Man. I feel almost as bad as when Bungie was purchased by Microsoft. The world *needs* Keith and XFree core being friends, not adversaries.
This and a war in Iraq, and it isn't even 1:00 yet. What a awful day.
May we never see th