Alan Cox Quits As Linux TTY Maintainer — "I've Had Enough" 909
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 (Score:5, Insightful)
Thanks for all the hard work. Good luck to the next maintainer. Not much else to say.
No gratitude? (Score:5, Insightful)
Re:Interesting... (Score:4, Insightful)
That is why you have to have coding standards...
I'd also hope you never have 1 person in charge of 3M lines of code.
Re:No gratitude? (Score:5, Insightful)
Because the slashdot crowd is composed mostly of whiner douche-bags. The rest of us are masochists so far as I can tell.
After getting my head ripped off for mentioning that I liked operator overloading the other day, I'm trying to figure out why I still post here. I dunno if the crowd is getting nastier or now that I'm far removed from being a teenager, I see how bad it always was. I can't have a reasonable discussion on this site anymore without some asshat hijacking it and turning it into a flame fest.
Not diplomatic (Score:4, Insightful)
This could have been handled much better via a private message (or phone call) than in a public forum.
Open-Source developers are jerks (Score:2, Insightful)
I maintained an open-source project for several years. Open-source developers are jerks. They never accept it when their code just isn't going in. I know they're all smart and I get really good contributions, but sometimes you aren't meeting the need. The overwhelming majority of open-source developers I have encountered are just that: jerks.
Re:Linus (Score:5, Insightful)
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.
Re:so much for a "benevolent dictatorship" (Score:3, Insightful)
Re:so much for a "benevolent dictatorship" (Score:3, Insightful)
Benevolent or not, a dictatorship is a dictatorship. It can be a great way to get things done (really, I think clearly establishing leadership is essential for establishing a coherent direction for a project...) but of course people won't always be happy under such circumstances.
Re:Linus (Score:5, Insightful)
You forgot to use the word "inversely" in that statement.
Re:Open-Source developers are jerks (Score:5, Insightful)
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.
Re:Linus (Score:5, Insightful)
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.
Re:Linus (Score:5, Insightful)
Bullshit. The best programmers don't know if they're awesome. They just think everyone else is stupid.
Re:Open-Source developers are jerks (Score:4, Insightful)
I find the same behavior from programmers of closed source applications too. Any bug or question is taken personally or they run with a bad decision forever because doing otherwise would admit fault. I have the most respect for the rare developer that changes his/her stance and does the right thing in the end. Typical developers are very defensive and need a lot of ego stroking to get useful work out of them.
Rarely the diplomate (Score:5, Insightful)
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.
Re:No gratitude? (Score:2, Insightful)
Because the Internet is composed mostly of whiner douche-bags.
FTFY.
Re:Open-Source developers are jerks (Score:4, Insightful)
Sometimes is works the other way. How many times have good developers been beaten-down by inferior, more senior, co-workers who think a "code review" session is really a "watch me brilliantly rewrite your code in front of you" session?
Re:No gratitude? (Score:5, Insightful)
Ha. Yes. You did indeed fix that for me.
(And I got modded insightful for my own whining? WTF?)
Re:Linus (Score:3, Insightful)
Re:Not diplomatic (Score:3, Insightful)
This could have been handled much better via a private message (or phone call) than in a public forum.
No I disagree. Doing this in public means everyone understands exactly what's going on. No room for misunderstandings.
And thanks Alan for all your hard work for Linux over the years.
Re:*It happens (Score:3, Insightful)
Re:No gratitude? (Score:3, Insightful)
Re:Linus (Score:3, Insightful)
your statement still means that great programmers give everyone else a hard time
Alright, I'll rephrase: great programmers think they're slightly above average, and they don't understand why other people can't solve problems that easily.
They won't say "use this algorithm because I'm the greatest". They'll say "use this because it's 20% faster and only uses half the memory". And if they're wrong, they're smart enough to realize it.
Re:Interesting... (Score:2, Insightful)
It's possible that Alan was the only one who knew anything about the TTY code and how it worked, but I'd doubt it. I'd be really surprised if the new maintainer comes into the role cold.
The tty layer in Linux is really old. Not all of it, of course, but I would guess it's one of the oldest bits left in Linux. It doesn't need to be high performance, so noone has rewritten it for that. It is a bit brittle in general, and it interacts with e.g. hundreds of serial port drivers on almost as many architectures. Also, lots of applications use it, some of them with a long history on their own. POSIX and the Single Unix Specification have tried to standardize it all, but there's just too much ancient history.
In other words, slowly rewriting it as Alan was doing it WILL break things (which users will notice) and most of the improvement is just in prettier code and therefore less work for the kernel maintainers (which users won't notice). It will probably prevent the occasional OOPS as well, but those are pretty rare already.
Anyway, I'm not really a coder, I just read LKML.
Re:Rarely the diplomate (Score:4, Insightful)
Re:Open-Source developers are jerks (Score:3, Insightful)
I've run into this on closed source internal projects - the difference is you rarely see the emails in public. Most developers take crucial app breaking bugs as a personal affront to their skill or ability, where in reality its just the way things work in big projects. In other words - every product out there has loads of awful bugs, please get over yourself and help me fix them.
Re:No gratitude? (Score:3, Insightful)
I dunno if the crowd is getting nastier or now that I'm far removed from being a teenager, I see how bad it always was.
I had the same thoughts a while ago. There seems to be more to argue (rather than discuss) now, maybe it's the articles -- there are more about the environment, transport, politics and censorship than there were a few years ago [citation needed], where anything less than +4 isn't worth my time reading.
I can't have a reasonable discussion on this site anymore without some asshat hijacking it and turning it into a flame fest.
There's haven't been any reasonable discussions on the Internet since September (or so I'm told, I was 3 years too late).
Thank You (Score:5, Insightful)
Re:No gratitude? (Score:4, Insightful)
FTFBOY
So long and thanks for all the code. (Score:4, Insightful)
Overall I hope Alan finds a new project, I suspect that his experience could really help all sorts of userland code.
Coders are stubborn and dislike being told how to do anything. No shame in saying shove it when its time.
Storm
Re:Linus (Score:3, Insightful)
Re:Slashdotted - Google Cache the real links (Score:3, Insightful)
132.155.125.74.in-addr.arpa domain name pointer px-in-f132.google.com.
That said, who wants to bet we can find a google cache of goatse?
Re:Slashdotted - Google Cache the real links (Score:5, Insightful)
care."
You know what really gets on my nerves? When people say they no longer care, when in reality they do. If he really didn't care, he would have typed the first sentence and stopped.
Linux is a great product, and that is the result of the magnificent work of all the coders and contributers. But sometimes they just act like children.
Linus was right (Score:5, Insightful)
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.
Re:Thanks (Score:5, Insightful)
Re:Thanks (Score:5, Insightful)
Former Gentoo and Debian user here...same experience exactly, except I actually did contribute code from time to time (well, mostly bugfixes). The Gentoo maintainers were particularly rude, and you had to pretty much be rude right back to convince them that what you had done was correct. Totally draining experience.
In an offtopic note, I remember a sort of userland breaking point: I tried to drag and drop a jpg in a browser window (Firefox) to some photo editor. It didn't work. Macs and Windows have been able to do this since at least the mid-90s. I have no idea if you can drag an image from Firefox to the Gimp nowadays, and I don't care.
Re:Thanks (Score:1, Insightful)
Re:Linus (Score:4, Insightful)
A tested IQ of 151... and you think IQ is related to intelligence?
Re:Linus (Score:3, Insightful)
Basically, Linus' main role in Linux has been to initiate the project.
And manage it, that's huge. He still has the final say on any code that goes into the main line. Any serious kernel developer will have to at least tolerate him, which shapes the direction of Linux immensely.
Re:Slashdotted - Google Cache the real links (Score:5, Insightful)
Re:Linus (Score:3, Insightful)
I would go further than that and say that there's something about "having a relentless ego" that tends to work against "being great". Having some kind of an ego can help. It can make you more bold and assertive and willing to pursue your own good ideas even when others are unconvinced. On the other hand, being unwilling to acknowledge your own mistakes and shortcomings leaves you prone to repeat mistakes. Also, having such a large ego that you're prevented from working well with others often ends up with sub-standard output-- because let's face it, we generally can't do it alone, whatever "it" is.
In this example, Torvalds may be brilliant, but he certainly hasn't built Linux all by himself, and it's very unlikely that he could have built it himself. In order to produce the Linux kernel, he had to work with others. And he must not always be too awful to work with, or someone would have forked the kernel a long time ago.
Re:So long and thanks for all the code. (Score:5, Insightful)
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.
*cough* (Score:5, Insightful)
Solaris :)
Re:Thanks (Score:5, Insightful)
Re:Linus was right (Score:1, Insightful)
I do appreciate Linus being fierce on behalf of the kernel's downstream users, but has it been factually established that emacs code was not doing something broken and just "getting lucky" until now?
That was Alan's contention, and if true then it would be better to fix emacs than to keep the tty layer broken or crufty for emacs' lazy benefit.
At this point, I don't know who was actually right, but both had good intentions of one sort.
Re:Thanks (Score:3, Insightful)
I like the idea of owning a business, but at some point I'd probably hire somebody like that, and they'd probably take control over from me. Being willing to go out on a limb and take a stand with no fear of being proven wrong (even though you sometimes are) seems to be a job requirement for gathering a following.
Re:Not very responsible either (Score:4, Insightful)
It's not nothing. The TTY module has lost a very talented maintainer.
OTOH, it's definitely not the end of the world, either.
I ONCE wrote a serial driver for an RS232C port on a CP/M system. This is my only right to criticize. For such right as it gives... Alan deserves full credit for many years of irritating work with a stupid messy standard. And *I* only had to interface three devices. I think that was the project that convinced me to never again touch assembler.
Re:Slashdotted - Google Cache the real links (Score:3, Insightful)
"Please talk to the new tty maintainer whoever that ends up. I no longer care."
You know what really gets on my nerves? When people say they no longer care, when in reality they do. If he really didn't care, he would have typed the first sentence and stopped.
You know what I find entertaining? People who are smart enough to see through a fairly transparent dysfunctional coping mechanism, and then continue to let it bother them after they've encountered it for the nth time. "Hey, he really does care! He's *lying* to us..."
Re:Thanks (Score:2, Insightful)
It's not only IT - in the activity of parenting and marriage both my wife and I have seized opportunities to make dicks out of ourselves to each other. And just like this Cox/Torvalds incident, sometimes the way through isn't knowing whose right or wrong, it's acknowledging you were a dick and apologising.
It's basic social relationships at work here, not bugs in kernels. OSS groups are like relationships, and have their associated problems. Having a boss is in a way like having a full-time relationship councillor on board. Cox/Torvalds happened because nobody stood up and said "hey guys, come on". I don't care which of the two were right about the TTY bug, there was no way that needed to erupt into the argument that it did, yet time and time again it happens. Imagine what the FOSS world would have been by now if people could have swallowed their pride rather than pack their bags and spread the skills thinly by way of forking.
Re:Thanks (Score:4, Insightful)
That was an anecdote! no steps, no software versions, no expected result == no bug. let's be a little more formal:
Prerequsites:
Ubuntu Intrepid Ibex, default packages installed, all updates as of 2009-07-29 applied.
Steps to execute:
1> Open Firefox 3.0.12
2> Navigate to www.google.com
* Note the prominent Google logo
3> Open GIMP 2.6.6
4> Drag and drop the Google logo to the GIMP toolbox
Expected result:
1> GIMP establishes a connection to the remote server and downloads the image
2> GIMP opens the image for editing
Result:
PASS
Does this cover your needs, or are you just trolling?
Re:Linus (Score:4, Insightful)
Precisely!
http://www.newscientist.com/article/mg20227115.500-humans-prefer-cockiness-to-expertise.html [newscientist.com]
Thank you, Alan! (Score:3, Insightful)
If everyone contributed as much of their time as you have, the (open-source) world would be a better place.
Thank you.
both wrong (Score:5, Insightful)
Assuming what Linus said is true, about Alan blaming user land code for problems he was responsible for, then Alan was clearly in the wrong. However, Linus is wrong to have taken him to task in such a public forum. If he had any sense, he'd have done it privately, and Alan Cox would probably still be the maintainer. There's more to managing people than simply "being right".
Re:Thanks (Score:5, Insightful)
I can understand his frustration. I've walked-away as well from various clubs. You volunteer hundreds of hours of your time, without pay, and all you hear from the members is complaint-after-complaint-after-complaint.
You eventually reach a point where you say, "What am I doing this for? No one's appreciating it or saying thanks. I could be out having fun instead of this shit," and then you stop volunteering.
Re:Thanks (Score:1, Insightful)
Studies have shown that a significant fraction of managers (disproportionalely large compared to the general workforce) exhibit sociopathic/psychopathic tendencies. No reason the free software realm should be any different.
Re:Slashdotted - Google Cache the real links (Score:5, Insightful)
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...
Re:Linus (Score:3, Insightful)
Interesting. My information seems to be outdated then, and this invalidates most of my arguments.
Re:Linus (Score:3, Insightful)
Well said. About the only counterpoint is that a door which opens outward will tend to have hinges on the outside, making illegal entry easier.
Where I live, commercial establishments usually have outward opening doors for the safety of the large number of people that might need to exit in an emergency; whereas residential doors will have inward opening doors so that the hinges are not exposed.
Re:Thanks (Score:3, Insightful)
I don't waste time arguing with my manager.
I simply don't care enough about the project. For me work is just a means to acquire money so I can live comfortably, so I just do whatever the manager asks me to do, unless it's exceptionally stupid in which case I'll suggest an alternative action, but I still won't argue over it.
Re:Linus was right (Score:3, Insightful)
[quote]has it been factually established that emacs code was not doing something broken and just "getting lucky" until now?[/quote]
And it's irrelevant. The entire point is not to blame emacs. Yes, yes, technically speaking, it *might* be better to fix emacs, but the fact remains that the kernel broke a widely deployed application. It doesn't matter whose fault it is. And even if the emacs should be fixed, it can't be done over night. Sometimes the kernel has to bent over and keep buggy behavior if someone important actually depends on it. It's just the job of a kernel: to keep applications happy.
So Linus was frustrated because he wanted Alan to acknowledge the sentiment. But Alan kept arguing something totally irrelevant.
Re:Thanks (Score:5, Insightful)
I switched to *BSD 5-6 years ago, the reason being that the community was more relaxed and there was less politics. I've been really happy, the users are more informed and the developers are more eager to help out and less elitist. The best technical solution is chosen and there is way less "not invented here" attitude among the developers. The development is more structured and is not based on the opinions/goals of a single person.
Re:Thanks (Score:3, Insightful)
If I drag from app a to app b I expect the two apps to pass the data itself, in this case an image, NOT connect to a third party on the net. The only time I'd expect some other behavior is when app b isn't capable of handling the data, IE passing a pdf file to an mp3 player would be an ok reason for an error message.
Sorry if that's a pass then I'd rather have a fail the just passes the image across.
Mycroft
Re:Thanks (Score:5, Insightful)
The unstable ABI is the result of the kernel devs wanting for devices drivers to be in the source tree. The implication is that with a stable ABI, there would be no incentive to release source code and to include this code in the kernel.
Windows H/W support from my POV is abysmal, and that is even with MS' at-all-cost backward compatibility culture. Creative's SB Live drivers do not work at all in Vista. They work fine on all recent versions of Linux distros. Because Windows is so widely used, H/W manufactures have to make passable drivers in order to get their product sold. However, once they are finished with selling them, you get situations like these in which old devices are unsupported. Normally this is ok as the backward compatibility works, but it doesn't all the time.
From my point of view, the current Linux dev model for driver is the right way to go with the current state of things in the free software world. Having a stable ABI for kernel modules will fix some short term problems but cause long term ones in the dev model.
Interpersonal problems derail projects (Score:4, Insightful)
Re:No gratitude? (Score:3, Insightful)
That's an awful argument for not putting useful features into a language, because poor programmers will always write bad code, regardless of language. There's yet to be designed a language that protects you from writing bad code. Maybe one day there will be. The only protection from bad programmers is not to hire them.
What a language can do is provide features that allow good programmers to write good readable code.
There are certain things that you just expect to be implemented by certain operators, regardless of whether the underlying types are built into the language or not. Integer addition, Real addition, Complex addition, Set union, String catenation, List append. Internally we think of these things as "adding" and it's only natural to use the "+" operator for them.
Not only does operator overloading allow the programmer to implement code that maps naturally to out mental models, but it also allows more readable code to be written since it uses infix (operator) rather than prefix (function call) notation. How much easier it is to visualize the set expression (s + t) * (p + q) as opposed to Intersection(Union(s, t), Union(p, q)), or worse yet it's object orientated equivalent s.Union(t).Intersected(p.Union(q)).
The poster you relied to certainly has a point. The level of technical knowledge and experience of the average slashdotter has gone down the toilet in recent years. It used to be a mostly highly technical crowd, but now half the people here have never even programmed, or just done so for a year or two, yet have outspoken opinions on things they know nothing about.
Re:Open-Source developers are jerks (Score:5, Insightful)
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.
Re:Thanks (Score:3, Insightful)
So you spend about half your waking hours doing stuff you don't care about? Let us know how that strategy works out for you after 10 or 20 wasted years.
Re:Drag'n'drop (Score:5, Insightful)
"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.'
Re:Could anyone shed some light... (Score:1, Insightful)
so now that you've beggard the question. why does linux have a tty layer? /.ers have never seen a tty. why emulate them?
i'd bet 3/4 of
Re:Thanks (Score:4, Insightful)
He's only really talking about giving up maintainer of the TTY subsystem. Don't sweat it. He's not actually going away from working on the Linux kernel completely.
Re:Interesting... (Score:1, Insightful)
> Miles and meters? WTF?
You get the point - until it's specified, your guess is as good as mine.
Re:Linus (Score:3, Insightful)
...and also so that it's easier to break the door down from the outside in case of fire or police emergency. This is not a coincidence.
Re:Linus (Score:3, Insightful)
This story has stuck with me about how criticism of ideas and especially criticism of ones own ideas are the hallmarks of the very intelligent. That said...any idea of this kind is bound by the "tyranny of small sample"
You missed one point: Linus was right (Score:5, Insightful)
>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.
Re:Thanks (Score:2, Insightful)
The reason why you call it *BSD is precisely because of politics.
BSD vastly fragmented over personality conflicts, power struggles, etc.
In large part that allowed linux to jump to a dominant position.
Re:Drag'n'drop (Score:5, Insightful)
What drivel. Drag'n'Drop is the shortcut equivalent of 'Save File' in program 1, 'Open File' in program 2. It's a bunch of o' bytes. It makes absolutely no difference if the bytes come through the Drag'n'Drop route or through a file.
Re:Drag'n'drop (Score:5, Insightful)
Why didn't the promise of OO happen?
I wasn't around for it. But I'd say it's just another example of cargo cult programming [wikipedia.org].
It's much easier to say you're doing something, and maybe to observe some of the rituals, than to actually do the work. A lot of people working in OO languages don't even know what constitutes real OO. And I don't blame them; most intro Java books, for example, just give little snippets of procedural code with an occasional OO gloss.
You can see the same pattern happening today with Agile development. Some people get great results by deeply changing how they work. Others hear about it, adopt a fraction of it, and still see improvement. Then a lot of other people jump on the bandwagon, watering it down to the point where it's worthless, but in the meantime turning a big profit on certification, training, and consulting.
Then are you doing your job? (Score:3, Insightful)
Here's my theory....
I get paid WAY too much to just shut up and do stupid stuff. If they wanted someone who would just shut up they could find someone much cheaper.
So if my boss (or her boss, or her boss's boss) tells me to do something I think is stupid, I do my best to explain to them exactly what is wrong with that plan.
So I'll argue about it. I'll disagree with them. I'll be difficult. But the whole time I'm telling them I'm just being difficult because I think it's a bad plan, not because it's personal.
And there may be some reason I don't see that it's actually the right answer.
In any case, once I'm sure they've gotten the concept I'm trying to express, I let them decide - them being the boss - and I go do what they said. Sometimes they change their mind. Sometimes they tell me the reason it's the right answer. Occasionally they tell me that they agree, but their boss says do it.
Always fight the stupidity. Don't take the fight personally - but if you're in technology, the fight is part of your job.
Re:Thanks (Score:3, Insightful)
Why would it be any different in practicality? Complaining to a commercial entity ultimately means you're complaining to someone who is paid to field your complaint. The "smile and a nod" is what you get before they hang up and move on to fielding the next complaint, whereas nothing of consequence gets done. Not unless a lot of complaints roll in. With commercial entities, it's not about the seriousness of the issue, it's all about how many people complain in a given span of time, so if you're one of their few complainers, they'll write you off as a statistic and continue doing whatever it is they're doing (wrong) despite your better judgment.
Re:Thanks (Score:3, Insightful)
For values of everyone that exclude apple and many of the top machines in the netcraft uptime surveys...
Re:Thanks (Score:3, Insightful)
After 10 years, it is paying for my, my wife's and my daughter's entire lives, and will shortly pay for my newborn twins entire lives too.
I spend half my waking hours doing stuff I don't care about, and most of the rest of my waking hours doing stuff I care about but don't necessarily enjoy; changing nappies/diapers, trying to persuade a 3-year-old to go to bed, reading the same damned favourite fairy tale over and over again, pretending that I enjoy playing "Doctors" and being poked with plastic implements, unblocking the septic tank after my daughter emptied a whole bottle of anti-bacterial cleaner down it.
But then for a few hours a week I have moments which I enjoy more than anything else I could imagine. Taking my family to the safari park, that was amazing watching my daughter interact with a giraffe. A birthday party. Making sandcastles on the beach. A long boat trip. Playing with my daughter in the swimming pool.
Grow up. Not everyone wants to be a loner with no responsibilities for their entire life. Being the breadwinner for your family of dependants is the role of the vast majority of adult males in the world. Just because you and your small community of like-minded folk choose to do otherwise won't change that majority.
It's human psychology (Score:3, Insightful)
What I find interesting from a psychological perspective is the baseless optimism of the participants.
Do they think that in 1979 (or some specific date since) that Bill Gates stroked an imaginary 'Snidely Whiplash' mustachio and cackled over how he'd dominate the computer market and exploit people for his own wealth?
Do they really think that any corporate/government organization that represents the polar opposite to the Linux 'paradigm' - highly bureaucratic, stifling, top-down organizations - didn't START with a font of goodwill, like Linux?
What, precisely, did they think made their effort unique? Why did they actually think that Linux, as it becomes more relevant, wouldn't ALSO become a balkanized playground of ego, power, and territory-marking?
How many distros of Linux are there? And how many of them have forums filled with not just people who are talking about the postive aspects of this distro or that, but who display the fanboi-attack piranha behavior toward anyone that dares preferentially support some other distro?
Hey, I congratulate the guy for putting up with it as long as he did. He made a valiant effort, regardless of its futility.
But as far as what he was fighting? Q.E.D.
Re:Thanks (Score:5, Insightful)
>>>You just described why I mostly use commercial software. Because they take all my complaining with a smile and a nod and get to work.
Yeah well it's easy to smile when you're getting paid $2000 a week (or more with overtime). When you're not being paid as a volunteer for Linux or officer of a club, you start to wonder if there are better things you could be with your $0.00/hour payment. The answer is usually "yes" like laying on a beach, or watching TV, or partying with friends.
Heck even working at Walmart for $8/hour would be an improvement than listening to all the bitching club members/users. At least Walmart pays.
Re:Thanks (Score:4, Insightful)
It doesn't matter how smart you think you are, whether it's crunch time, or anything else -- if you're that rude at a real job, you should be fired.
Assholes like that give programmers a bad name. They're are also the reason that many companies have gotten in the habit of "hiding" their developers from the rest of the company and users.
Re:Thanks (Score:3, Insightful)
With commercial entities, it's not about the seriousness of the issue, it's all about how many people complain in a given span of time, so if you're one of their few complainers, they'll write you off as a statistic and continue doing whatever it is they're doing (wrong) despite your better judgment.
Umm, that really depends on how much money you've paid for the software/support agreement, doesn't it? When I worked in the insurance business I had a direct line of communication to the programmers who wrote our agency management software. When I found bugs I could report them directly to the people who could fix them and would usually have a patch by the end of business. I had similar experiences working with Cisco back when I worked in the ISP business, although you did have to navigate more bureaucracy with them to get the desired result.
Mind you, we paid tens of thousands of dollars for that software and those support contracts. You won't get that kind of response out of Microsoft when you find a bug in the copy of Office that you paid $120 for. But I still think it's disingenuous to claim that commercial entities don't care about the seriousness of the issue.
Re:Open-Source developers are jerks (Score:3, Insightful)
(Interestingly, you'll see the same thing if you try to lead / schedule raids or events in a game like WoW. Both situations involve herding cats to achieve a common goal in an environment where your members can easily walk away or not show up. There's a good bit of overlap in the people skills required to succeed.)
Re:Thanks (Score:2, Insightful)
I tend to respect and admire Linus, but his attitude reminds me too much of dealing with all the prima-donas I have to deal with on a regular basis. An entire project may hinge on you. You may be the most prolific, genius, brilliant, fantastic, productive person on the entire project or in an entire company. That does NOT excuse your behavior.
Don't get me wrong, I'm all for people who are succinct and simply don't have time for bullshit. That's not what we're talking about here, though. But rather than the dickhead responses a lot of coders have (not just toward people outside of coding, or their own project, but even directly to those that participate on a one-to-one basis with them), they could have a little tact. It doesn't take any additional energy or effort to accomplish and it keeps people from avoiding working with you. I would rather work alongside someone with 98% of your skill who has a better attitude.
For example, in this response on the same thread to someone who admits they are not terribly familiar with the internals of TTY but is clearly trying to contribute however they can, Linus responds as follows:
On Tue, 28 Jul 2009, OGAWA Hirofumi wrote:
> If I read that part of emacs correctly, it seems to be assuming the data
> was already sent to master side if the child process was exited.
That sounds like a rather obvious assumption.
(...)
So at what point do we just admit that the commit that caused all this was
a buggy pile of sh*t and just revert it?
Is it really too much to ask for someone like Linus to respond with something like "I agree" rather than insulting the guy for making what appeared to the almighty godly genius as "obvious"? What is to be gained by making someone else feel like a tool? All you've done is given them reason to pause next time they try to contribute and change their mind during that pause. They'll decide "why should I bother trying to help in anyway when even my best effort is going to be dismissed and possibly with a snide insult?". And then people like this complain that "not enough people contribute to this open source project". Of course not, because you aren't receptive to them and make them feel unwelcome! You don't have to coddle them at all, but for fuck's sake at least try to be decent.
Otherwise, you'll eventually not just keep new blood from trying to help out in whatever ways they're capable or willing, but you'll drive away long-standing contributors who have given a LOT to the project and the community. Like Alan Cox.
Hell, it's hard enough justifying tolerating that kind of treatment when you're paid well for it. Much less when you're volunteering your time and intellect. And as was demonstrated here, if you just spend all your time criticizing the process and the people and not contributing a lot to the resolution, people will get tired of your shit and drop the problem in your lap so they can move on.