Alan Cox Quits As Linux TTY Maintainer — "I've Had Enough"
The Slashdolt writes "After a stern criticism from Linus, the long-time kernel hacker Alan Cox has decided to walk away as the maintainer of the TTY subsystem of the Linux Kernel, stating '...I've had enough. If you think that problem is easy to fix you fix it. Have fun. I've zapped the tty merge queue so anyone with patches for the tty layer
can send them to the new maintainer.'" A response to a subsequent post on the list makes it quite clear that he is serious.
Thanks for all the hard work. Good luck to the next maintainer. Not much else to say.
Give me Classic Slashdot or give me death!
I see the tags 'butthurt' and 'whaaaaaaaaa', but no 'thanksforyourtime'. Why won't anyone show any gratitude for the years of work he's generously offered to the project?
I'm tired of that silly myth.
The best programmers I have met were nice people and they were very easy to get along with and work with.
You forgot to use the word "inversely" in that statement.
Kriston
The overwhelming majority of people I have encountered are jerks. That's nothing open source developers, or any kind of developer, has a monopoly on.
Give me Classic Slashdot or give me death!
I've worked with programmers, actors, and people in many other groups where some think they can get away with being a prima donna. I have yet to meet anyone who was in top form in their field that I had to work with who really did have that attitude. I know some are out there, but overall, those that want to do something right are too concerned about what they're doing to pump up their own ego. Generally the best are the ones that know more than others, but because of that, they realize how much they DON'T know and that tends to keep them from getting those ego highs.
Yes, indeed it could have been. But unfortunately that's Linus' modus operandi and we all know from long experience that while a great programmer, his ego is far too big to allow him to apologize publicly in the same fashion in which he slammed Alan. Quite unfortunate really since both are quite talented individuals.
You can't expect to publicly berate people and have them bow to your every demand and not have it backfire on you at some point.
Alan thank you for your contribution to the open source community!
As always.
The argument started when someone found the tty layer had a regression. Linus cares about regression deeply. His basic philosophy is old bug is better than new bug. If a fix introduces a new bug that breaks a real world application, then the fix should be reverted and a better fix should be worked out.
This ensures predictable behavior of an OS that you can actually rely on, and better release management.
Alan didn't think so. He thought his fix was too important to be backed out, although it introduced a regression. Linus was frustrated that he had to explain to Alan, a long time Linux hacker, about the rules. And that's where Alan got impatient too.
If Alan Cox wanted to work at Apple, it would take 1 phone call. Devs like him don't have problems getting hired. I don't know if he's been working on FreeBSD or not, but if so that isn't the reason.
I still have more fans than freaks. WTF is wrong with you people?
I sometimes wonder if it's the very public nature of Linux (and much open source) development that gives that creates this impression of everyone acting like children. I've heard plenty of people describing working environments (no matter the expertise) that sound exactly the same as this, it's just that no one outside the company will ever see it. It's kind of a software development soap opera...
When I was in college, I was in a volunteer group. I took a project leadership position, and I was warned that the people volunteering for us were unreliable and unpleasant to work with. Later I was pleasantly surprised to find that not to be the case. Of course people did mess up from time to time and sometimes people found themselves over-committed, but on balance I found the volunteers cheerful, eager and reliable as I could reasonably expect under the circumstances.
I found other project leaders would talk about *the same people* I worked with successfully as if they were totally unreliable. What was mystifying is that I am so *not* a nice guy. I'm not a *bad* guy, either, but I'm kind of gruff and impatient, and I don't mince words either.
So I watched how *they* managed volunteers, and compared to how *I* managed volunteers.
I'd say, "Can you do such and so on Saturday? You'll need to show up at noon and stay until four. You can? Good. Do you want to scare up some helpers or would you like to take care of that? Great, thanks. Give me a call if anything changes."
They'd say, "Look, we really, really need somebody to do such and so. I know you're *so* busy, and I really hate to ask you to do this, but nobody else can and we're desperate. Can you, PLEASE? Really? Are you *sure*? It'll be a disaster if nobody shows up so I really need to know for sure. Really? OK I know this is a HUGE sacrifice for you."
The conclusion I came to was that the other guys were trying way too hard to be nice, and so they were failing on an epic scale. It didn't even *occur* to me to try to be nice, and so I didn't commit any of their horrible mistakes.
I think the problem with the phony "nice" approach was it demonstrated lack of respect in so many ways. First of all their attitude practically radiated their lack of confidence in the volunteer. They assumed the volunteer didn't want to volunteer, and would volunteer just to shut them up (probably true) and then not show up (also often true). They assumed the volunteer would be swayed by flattery (you're so busy), guilt (it'll be a disaster if you don't show up), twisted pride (this is a job so horrible nobody but you would consent to do).
It's hard not to step on that disrespect third rail now and then, but these guys were jumping up and down on it from the get-go. It's ALWAYS a mistake. If you want a guy to leave, you should just say, "Sorry, this isn't working out. Let's move on." Getting snarky on them just means they'll stay and work like malcontents.
Linus's post is perfectly understandable. I don't think it shows towering ego and arrogance. We all get exasperated now and then. He's trying to be nice about it, but he just can't help himself. He's only human. It doesn't *matter* whether he's right or wrong, he let his exasperation show. When you're on the receiving end of that it comes across as disrespectful. Sometimes *trying* to express your exasperation *nicely* is even worse. It's patronizing.
One thing I learned is that people will do good work for no money before they'll do good work for no respect. And the best people won't work at all without respect.
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
"Once you can drag and drop one thing then you want to be able to drag and drop anything. In the case of arbitrary file formats not only must you implement code to check the incoming data stream (thus exposing yourself to all of the security considerations of "how many different ways can someone try to wax my process of checking the incoming data stream?") but you must consider that a data stream which is valid using one codec algorithm may cause a fault using another codec algorithm."
But isn't that precisely what object orientation was invented to solve? To find a way of unifying data transfer between absolutely everything, everywhere, by sending not raw data but objects which could then be queried to ask things like 'what kind of thing are you?' and 'give me your data in Format X, Y or Z which I can read'.
Drag and drop to me is one of the acid tests of 'do you actually have a functioning object model?' And pretty much every GUI OS, including Windows and OSX, fails this: drag and drop works in many places, if the developers have jumped through hoops to but not all; there's no way to universally query ANY object and do stuff with it. The only exception I can think of is, perhaps, Smalltalk/Squeak (the original OO system) with its direct-object-manipulation interface.
Why didn't the promise of OO happen? We got COM objects instead which seem to do almost precisely the opposite: be very brittle, add a whole layer of complexity, and only make sense inside huge frameworks which can't be split up into objects. C++ seems to be the anti-Smalltalk in almsot every way and yet it still gets to be called 'object oriented'. How did we allow such confusion of language?
I don't agree that the answer is 'drag and drop is far too complicated and you shouldn't be trying to do that'. We should say 'hey, this poses interesting questions about why our fundamental operating system models are, in 2009, still broken even by 1979 standards.'
You are not a brain: http://books.google.com/books?id=2oV61CeDx-YC
>Cox -> submits code which apparently caused a bug
>User -> Reports breakage
>Cox -> Can't replicate breakage and asks user for debug info so he can fix it.
>User -> Says they don't know what to debug for, but is willing to work with Cox.
Here they have found the bottom issue: emacs was expecting some reasonable behavior from the kernel: data delivery before notification of producer's termination. The behavior was broken.
>Linus -> Jumps in and calls Cox's code a buggy piece of shit before any debugging took place, and before it is established if the code is buggy or not.
Hello? The code broke a reasonable expectations of its users. Not buggy? That's technically is a DEFINITION of a bug.
>Cox -> Continues to troubleshoot the issue.
>Linus -> Flames Cox personally and says Cox is unwilling to work on the issue.
Cox was proposing some strange solutions.
>Cox -> Takes his ball and goes home, except in this case, it is OSS so he doesn't really take any ball with him. He just leaves.
Then they had a technical discussion, and it appeared that Linus was right.