Thursday, November 08, 2012

ending the cults of personality in free software

Free software has a history of creating and supporting cults of personality. Since it is a widespread human phenomenon, it is easy to understand how this happens. It is, however, unhelpful and destructive and we really ought to actively discourage it, starting by putting aside the current cults.

The most recent, though certainly not the only example, of this retrograde behavior was seen when Linus Torvalds started posting on Google+ about his recent sampling of various Free software desktop options. This made the rounds on various blogs, Slashdot, Linux Today, etc. Why do we care what Linus uses? Simply put: he's a super star in F/OSS and people hang on his every word as a result as if he's an oracle of all things technology. Spoiler alert: he's not.

His opinion on desktop software is as meaningful as his opinions on rocket ships, film production, oil recovery techniques, sociology, religious history, automobile engineering or any of the other topics he has no meaningful expertise in. Everyone will hold an opinion on things they use, such as cars or ships, and things they simply come into contact with, such as film and religion. Sharing our viewpoints is great and a necessary part of democratic discourse which can move societies along their evolutionary path. So opinions have value and can be hugely beneficial when mixed together with hundreds, thousands or even millions of other samples. The trick, however, is not letting those whose opinions are of no great value in terms of being based on greater understanding or access to relevant data become more important than other opinions in those discussions.

Linus is as likely to be "wrong" about desktop Linux as most others who use the desktop. I used quotation marks because he isn't really wrong at all: whatever his viewpoint de jour is reflects his viewpoint very clearly and may even be extrapolated to other people with similar needs and backgrounds. This should not be surprising. It's like saying Linus is as likely to be wrong about rocket ships as anyone else who is into rocket ships but not involved in their design and manufacture. Perhaps more so, even, if Linus isn't a big space enthusiast but only an occasional article reader and watcher of things NASA puts out press releases on.

When I first saw others commenting about his comments on Google+ about trying KDE Plasma, I shared the above sentiment, but in a more compact form. I don't care what Linus uses, at least not as an isolated data point: it is not useful information for one simple reason: it does not help us create the software the world needs.

Let's step to the side and consider this from a different angle: Imagine that someone made Linus' perfect desktop environment. Something that satisfied him entirely and which he could happily talk about whenever he felt like it. Would that environment be interesting and useful for the general public, or would it be something great for kernel developers and grumpy-heads like Linus? It could go either way, really, because (once again) the fact that Linus liked it would not be useful information when held in isolation by itself.

We could pick any other single individual on the planet who lacks the same amount of relevant experience and say the same thing. This is not a bash on Linus, it's an observation of something that Free software world does very poorly. It is not Linus' fault we pay more attention to him on such topics than we ought to; it's us who decide to pay attention to Linus on such topics. We can also decide not to. Even better, we could focus on amalgamations of well formed data sets and pay attention to those instead.

So why, then, do we pay so much attention and care at all what Linus says or thinks on these matters? There are very human reasons for why we do this, which the social scientists in the crowd can probably speak to rather better than I can, so that's a largely rhetorical question. I believe it is undeniable, however, that we risk the direction of Free software by building such cults of personality. It create incentives to acquiesce to what amounts to low-value personal opinion which leads to a meandering pattern of non-progress.

Of course, it goes even further than that. These cults of personality encourage others to mimic people like Linus when it comes to things like communication style. Due to the "we mimic which we admire" tendency in human, holding Linus aloft encourages people to adopt incorrigible asshat communication patterns online. Linus is not a role model for anything other than running very successful kernel (and similar) projects, yet he gets emulated by people who mistake the secret of his success with his communication style.

The cult of Linus is not the only center of a personality cult in Free software, to be certain. This episode was simply a good opportunity to say something about it. I could just as easily write a blog entry about the problems other cults of personality have caused in Free software. My years in the community have "blessed" me with a great big bag of personal experiences related to just about every single out-sized personality in Free software.

... which is the "big lesson" here: nobody is a messiah and we are all equally frail and imperfect. In more positive words: we are all equally infallible and perfect. So where can we derive leadership from, if not from luminescent personalities?

I don't believe Free software needs, or even benefits from, global leadership, anymore than the world needs dictatorships or a single global government. What Free software needs is local leadership, and those leaders need to have their influence limited (by a healthy lack of deification, among other things) in order create an environment in which it is valuable (and more acceptable) to reach out to others across domains.

Without this, we drift ineffectually. Free software was not able to truly take off on consumer devices until a corporate dictator stepped in, basically ignored everyone else, and pushed out Android. That in turn has become a primary source of GPL violations in today's world (I just found another one today, this time in a tablet being offered for sale by a very nice and reputable Free software supporting computer retailer) and is not an ecosystem with equal participation or open governance as hallmarks. We needed Android because we couldn't do it ourselves, but Android is also a huge weakness for Free software efforts and falls well short of what is realistically possible. We can't complain too loudly though, because we couldn't get our shit together to produce better results sooner.

We're still waiting for this savior on the desktop side. Some thought it would be Ubuntu, but what we got from Ubuntu, largely due to a "self appointed dictator for life" approach, is a fork of one of the major desktop environments and its community with a unhelpful sideshow of nearly endless backbiting between various Linux distributions, kernel developers and others with Canonical. All of this happened for understandable reasons, none of it was done without internally consistent logic, and yet it has not furthered anyone's ultimate goals for Free software success.

I don't know about you, but I am sick and tired of Free software being inefficient and self-destructive due to internal schism.

Ah, but we do have a positive example where Free software has done very well: the server and super computing. Why has Free software, driven by the open source development model, shone so brightly here? When we take a deep look at its history we may note the relative lack of personality cults and the amount of emphasis on data that matters (something that is easier to accomplish when one can use performance benchmarks or compliance suites as respected and reliable metrics). Certainly there are people who are respected, admired and influential in server-side Free software, but there has been a distinct lack of personality cult and a huge number of of cooperative (even in competition), technology-centric efforts. Samba springs to mind immediately for me with the likes of Jeremey Allison and John Terpstra, two people I highly respect but who don't have that "cult of personality" aura.

It's not all roses on the server side all the time, of course, and as a counter-example to Samba I'd probably point to MySQL and its travails over the years (from early non-Free software status, to odd GPL interpretations to corporate take over), which I believe directly correlates to its centralized control by charismatic leadership coupled with project fanboyism. You know, just like we see with desktop Linux.

To those who may agree but reply with "that's just how people work, not much we can do about it": well, I accept your POV and humbly disagree. We may not be able to change the world at large (at least, not over night), but we can positively affect the parts of the world we create ourselves. We create Free software together, and therefore we can create it in the image we want it to be.

As a participant co-creating this world, I have an impact on how it works and the culture that surrounds it .. as do you. We are not completely powerless to ourselves; we can make wise choices if we choose to. The progress of social justice in human history has shown that we are not slaves to our human foibles, though it can take time and effort to emancipate ourselves.

We can make the decision to free ourselves from cults of personality by taking our own advice: build decentralized structures of responsibility, influence and attention that reward things like cooperative effort. This will allow us to bring our efforts together into one combined and massive bonfire rather than thousand tiny embers fighting for fuel and oxygen such that they twinkle in but then almost inevitably back out again.

We need to realize that the behaviors that arise from our current culture do not further the goal we all share together of Free software success. If that is truly what we want, then we need to alter that which retards our progress towards it. We need to value Free software progress more than we value the reward of mutual fanboyism.

Put simply: if we want open client-side software to thrive we need to engage in a conscious improvement of the Free software culture and, just as importantly, leave behind those who choose not to. I won't try to fool anyone: this will take years to accomplish ... but we can start now.

Go ahead and say: "I don't care what Linus Torvalds uses on his computer." See how easy it can be? :)

52 comments:

JanKusanagi said...

I couldn't agree more with the whole post.

And I don't care about what Linus (or anyone else in particular) uses in his/her computer :P

Del said...

Linux, GCC and Emacs are three of the reasons free software succeeded in super computing (paired with the fact that we are typically more academic than average joe, and hence do care about the freedom to tinker with all aspects of the system). Those three came out of the cults, so I am not at all convinced by your argument.

Actually, I am not sure this self criticism that have become so popular in free software is at all helpful. We have accomplished a lot, also on the desktop. Reasons why we haven't come further are easy to spot, and far more complex than cults. I would argue that the mess surrounding the Intel graphics driver at the time of Vista alone was enough to halt efforts. To put it simple, we still have a long way until we can compete on the desktop. KDE3 was close, finally it seems KDE4 is getting there. I am willing to discuss with you at length the more trivial reasons KDE is not there yet. Linus does have a point.

jdalt said...

I think our success on server and super-computing speaks to the inherent strengths of the domain. Server software is software whose primary users are developers and machines. The distance between developers and users is essentially zero. So the efficiency lost to disagreement, miscommunication, and misunderstanding is low and progress is fast with less back stepping.

Desktop and tablet software has a much greater developer to user chasm currently, and I think what we need to bridge it with tools that fill the entire gradient of possible contribution. Free software wins the day when the users and the developers are the same people. I'm not saying everyone needs to be a kernel developer, but that any problem you're capable of understanding is one that you're capable of fixing. If we can build those tools and the social tools to aggregate a different type and higher volume of contributions, we will make great progress in usability. When changing something in KDE is as easy as cracking open FireBug then we're a lot closer to transforming our users into developers.

Del said...

Actually I don't think having average joe coding a free desktop is a viable option in the foreseeable future. Producing good code is not about to become trivial any time soon. Being able to increase collaboration, having coders willing to code what a gui designer suggests, can make a big difference though.

Aaron J. Seigo said...

@Del: "Those three came out of the cults"

I think you have the chronology backwards: the projects emerged and then cults of personality arose from the people who they attracted.

"Reasons why we haven't come further are easy to spot, and far more complex than cults"

No complex problem can be boiled down to singular causes. However, there are usually identifiable sets of causes that often require to be dealt with individually so as to resolve the complex problems they cause together.

In the case of personality cults, we have on many occasions lost the ability to make useful decisions due to them. often we become focused on the internal schisms that not only result but which are also sustained by these personality cults, and that in turn has prevented many positive efforts from coming to fruition that could address other aspects.

Aaron J. Seigo said...

@jdalt: "The distance between developers and users is essentially zero."

this is currently overwhelmingly true as well for the desktop. knowing the sys admin crowd and the desktop linux using crowd (not only those online, but also off-line), the level of engagement is about the same.

the level of expertise is not, of course :)

"If we can build those tools and the social tools to aggregate a different type and higher volume of contributions, we will make great progress in usability."

this is the "infinite number of monkeys typing will create shakespeare" argument. it turns out that simply adding people does not create good products.

and really, i don't think the bulk of our challenge comes from not having good products. Android is a monstrosity, both from a technical design POV as well as usability wise. it's just not-horrible enough to be successful given everything else Google does.

we are not, at least primarily, facing problems that can be solved with a technical answer like "write better code".

"When changing something in KDE is as easy as cracking open FireBug"

you need to look in QML and Plasma :)

Aaron J. Seigo said...

@Del: "Being able to increase collaboration, having coders willing to code what a gui designer suggests, can make a big difference though."

agreed; we need to bring more disciplines to bear, allow them to collaborate.

one of the failings in the process of making GNOME shell, and a direct cause of the breaking point that resulted in Unity, was the designers seemed to feel they needed to take a "my way or the highway" approach to design decisions. was it hubris? or was it that they felt they weren't operating as equals and compensated in like kind?

in contrast, Plasma Active engaged with designers from beginning until now, and will continue to, as equal participating members neither more nor less influential / participative. there is respect across the disciplines and an open engagement between them.

ergo, i believe, why people like Bruce Byfield write that it's the only mobile interface he could even stand to use on a full desktop system.

it's amazing what can be achieved when there is a lack of power struggle between participants, but where all participants challenge each other constantly (even ruthlessly if needed).

it's one area i think linux kernel development, as rough and brutal as it can be, does well and a reason it is a successful technology project.

Djuro Drljaca said...

While reading this there was an image in my head: "plasma == aaron" :)

From what I remember from the good old days of the start of KDE4 development you and "your" Plasma were (still are?) stars of the show and if I remember correctly your word carried a lot of weight (and probably still does). Don't get me wrong ... I liked (and still like) KDE4 from the early versions to the current version. I didn't really use KDE4 in times of 4.0 to 4.3 but when I had the chance to actually use KDE as my primary work environment (programming for embedded linux) I also started using linux (KDE on openSUSE rocks :) ) as my main Desktop at home (BTW: thank you and all the other KDE developers for your work on KDE).

So before I get too much off topic ... how do you feel about your own cult of personality? :)

I did notice also another emerging KDE cult of personality ... Martin Gräßlin. He (at least in my opinion) earned this status in the same way as you did in the good old days of KDE4 development ... by writing really good blog posts about "his" project.

Anyway you KDE guys and girls rock :)

jdalt said...

@aaron

I am looking at QML and plasma. What I'm saying is that I think there's a missing layer of easy to use inspection tools to crack the desktop open and ask questions and change things on the fly.

For instance, I can rebuild all my menus and any visual aspect of firefox or any website with greasemonkey + userstyles because the web has good tools for opening that up. When I want to do something like change the opacity behind my Quick Access widget, I have to go locate the correct svg files in the filesystem, find the correct properties and predict what inherits what, and then figure out under which conditions the system will reread the files. I know what I want. I have decent understanding of how plasma works. I can write C++. But I'm never gonna fix this problem because the effort is prohibitive in relation the return. All the base functionality is there to change this thing quickly but there's no inspector to say 'hey thing -- show me what you are made, show me your styles.' I feel like that's the layer of tools that we're missing.

"it turns out that simply adding people does not create good products."

I totally agree, but I think the tools we give people to contribute shape the quality of the contributions that improve our products. If we give monkeys special type writers that only type coherent sentences--then we only need to think of our users as better than monkeys to expect positive results. Tools matter.

I think there many types of contributions that would improve usability that we don't have any way of aggregating. If you could change every aspect of the desktop shell as easily as a webpage and then upload it in a click--that would be meaningful. We already have Get Hot New Stuff, but we don't really have Make Hot New Stuff or Explore This Stuff that works for designers.

We also don't have tools that measure usability. Creating a sabermetrics of desktop usability--that would play to our existing strengths.

Aaron J. Seigo said...

@Djuro Drljaca: imo, there is a difference between respect for another's efforts, works and presence and a "cult of personality".

indeed, many people deserve our respect and even fondness. the two Samba people I mention in this blog entry have mine, for instance, and they both earned it many, many times over through their ingenuity, commitment and eloquence. they are also humble, collaborative and devilishly brilliant .. which all helps :)

as for myself, i don't think there is a cult of personality around me. well, i hope not, in any case. i may be well known in certain circles, and at times my thoughts and input carry some weight .. but i consciously try to remain a part of the community rather than rise above it somehow.

i try and do this by noting the work of others as much as my own (we're a *team* after all), engaging in conversations on a peer basis (because in my mind we are peers) and saying what's on my mind versus what is politically convenient, shocking, etc.

i think Martin G. is similar: he's a real guy, producing real technology, is realistic, collaborative, positive and unafraid to step up and speak out. that's all it takes, i think, and it excites me to see more people doing this within KDE. it's a truly positive thing and i hope we see even more of it happen :)

nanday said...

Aaron:

You anticipated a lot of things I had planned to write about (stupid time difference!).

However, having you say them freed me up to write about cults of personality from a more direct perspective:

http://www.linuxpromagazine.com/Online/Blogs/Off-the-Beat-Bruce-Byfield-s-Blog/The-free-software-media-and-cults-of-personality

johndoe1234567 said...

It's not only the Linux kernel where he has proven that he has good overall judgement. Look at git, which is on the way to make huge inrods into the way we see and use SCM tools, sweeping some crap products out of the market and popularizing the DCVS concept.

A dying Battery said...

quote: the server and super computing. Why has Free software, driven by the open source development model, shone so brightly here?

I think the reason is that on a server you can choose whatever you want. I can use only free software to deliver webpages using python, apache, mysql and delivering videos in ogg/theora etc... On the server everyone is the king and decides what they want and that is not a problem for the users that have to access to the server.

On a Desktop it's different, because you don't decide everything. If you want to play a videogame, that game must be available for your OS.
If you want to use a program for work that program must be available and the solution isn't a similar open source program. Because if a company asks you to use X you can't say "no I'll use Y because there isn't X for my OS".
If you want to watch Netflix you need your platform to be supported.
If you want to buy the latest hardware probably it won't support your OS, so you depend by other companies decisions.

For such reasons a completely free source operating system for the Desktop in the consumers arena will never be as much as competitive as a proprietary one. So the choice is between having companies like Canonical, Google etc... that are trying something in the middle that at the end will produce something more similar to OSX, but with more free software in it. Or to have a completely Free Operating system that can satisfy only a small percentage of users.

Maybe a third alternative would be to create a huge community that through crowdfunding produce it's own hardware. Hires free software developers and even produce multimedia content under Creative Commons movies. All this through a non profit foundation instead of begging companies to care about the Linux Desktop.
Instead of asking for money with a small goal, foundations around Free Software should start to think BIG.

Amir Dizdarević said...

This sounds all very familiar. However, I think that Ubuntu is creating more of a cult there.
Just think about the inclusion of Mono in the distro. Back when Rhythmbox was default in the old days, Mono was bad judging by a lot of Ubuntu user comments. Then Shuttleworth decrees that Banshee is the new default player. Then Tomboy is included by default, too. Suddenly everyone is Mono friendly. Then Rhythmbox is reintroduced again after the GTK3 version got more mature. Tomboy was scrapped, too, and Mono was off the default install. Suddenly, everyone hates on Mono again. Interesting.

Del said...

jdalt: "If we give monkeys special type writers that only type coherent sentences--then we only need to think of our users as better than monkeys to expect positive results. Tools matter."

Indeed, and I believe KDE is in a very good shape here compared to the competition. Check out KDevelop, Qt Designer and Qt creator. Things can still be improved of course. The two big ones I see for developers is making the build process less complex (there is currently an unnecessarily fragile dependency matrix for building KDE), and the other is even better documentation.

Aaron: "as for myself, i don't think there is a cult of personality around me."

Don't be to sure ;) We are all posting here for a reason you know. I see it as a very positive cult though, promoting productive collaboration :)

adamwill said...

This is an excellent article. Clearly, Aaron is one of our greatest thinkers on social issues in free software. I will ensure I listen carefully to everything you say from now on and repeat it as gospel. Hail Aaron! Hail Aaron! Aaron, what lottery numbers should I pick next week?

What do you _mean_, I'm missing the point?

:)

arcadefan said...

Hi Aaron,

I really love your work on Plasma Active, so keep up the good work.

I believe your view on this matter (cult of personality) is as good as anyone else is. To me, you are now in the same situation as Linus was. Your blogs are being read and probably discussed. And you give your opinion on a subject that is not your core expertise.

So my 2 cents:

1) I like people with public faces. I like them having opinions. I like agreeing/disagreeing with them. I don't want these people (yourself included) to keep their thoughts for themselves, only because the are no experts. Everybody is free to speak out.

2) The idea of a central movement pushing Free Software foreward is just BS. "Everybody should stop fighting and work together to a common goal." You are mistaken. There is no common goal. There are million individual goals. Sometimes these goals go along nicely, sometimes these goals clash with each other. And then they diverge. It is the way of the world, and it creates innovation. There is room for millions of ideas to co-exist. Let everybody push their own ideas forward. The best ideas will persist. "Survival of the fittest" that's called.

I like the linux landscape because it allows diversity and differences of opinion. "If you don't like it, fork it." Let's keep it that way.

Best regards,
Martin

Aaron J. Seigo said...

@adamwill: bwuahahahahaahaha.. thanks for that comment, it made my day :)

@arcadefan: "There is no common goal. There are million individual goals."

.. and that's fine, even great as it allows distribution of risk, the allowance many experiments (with the better ones thriving) and a plurality of audiences been well served versus just a few core ones.

i am not suggesting, in the least, that everyone start working on one set of projects and make centralized decisions. that's sort of what i'm writing in opposition to here in the blog post, in fact :)

i think where we are missing each other here is on what are our common goals, if any.

the common goal is to see Free software thrive. people have different motivations for that goal, and i'm sure there are even some who don't have that goal. but in general terms that is one broad, high-priority goal most people who contribute to Free software can resonate with.

that desire to have the technology we create thrive and grow to its potential is a common desire, a common goal. we can see this in how people work on it every day.

and it is that common goal, to see our technology succeed, that is being undermined and diminished by these cults of personality.

so, if you re-read it with that in mind, does it come across a bit differently?

npatricksmith said...

Aaron, perhaps you've missed the reason why users care that Linus came out and vocally complained about Gnome?

Prior to Linus' rants, Gnome developers have been adamant that our complaints are wrong and do not matter. When someone like Linus vocally agrees with us, we finally feel like our voice may be heard. Someone of "importance" finally agrees with us!

Your post seems to continue to blame the user for being wrong. This idea of the user being wrong, is the real reason why Linux on the desktop is failing while Linux on the server has flourished.

At the end of your post you say, ""I don't care what Linus Torvalds uses on his computer." See how easy it can be?"" Replace "Linus Torvalds" with "Joe User", and you have the real problem.

(edited for tone after morning coffee)

Aaron J. Seigo said...

@npatricksmith: "perhaps you've missed the reason why users care that Linus came out and vocally complained about Gnome?"

No, I completely understand the cathartic nature of it :)

"Someone of "importance" finally agrees with us!"

.. and this is what concerns me greatly. If Linus is wrong, it doesn't make those who agree with him more "right". If Linus is right, then those other people were already right without him and should be listened to.

No, this is addressing one centralized system (top down, ears-and-eyes-shut, designer-knows-best engineering) with another one (personality cults).

Perhaps we can simply route around the centralized system that is causing problems in the first place rather than creating even more non-functional social structures?

GNOME is not the only choice in town. Instead of fighting with centralized control systems, work with communities that are open to the sort of participation models you look for.

Fighting fire with fire (centralized vs centralized; authority vs authority) only creates wider schisms, louder arguments, entrenches positions rather than opens them, diminishes participant motivation and rewards bad behaviour ("ignoring the user" or "loose cannon asshat ranting") by giving them the attention rather than groups actually working towards positive results.

Aaron J. Seigo said...

Now for part II :)

""I don't care what Linus Torvalds uses on his computer." See how easy it can be?"" Replace "Linus Torvalds" with "Joe User", and you have the real problem. "

Joe User is not a single individual. Joe User is a demographic group. I do care what Joe User does, much more than I will ever care what Linus Torvalds does.

Now, I am not Joe User. At least not all by myself. Neither are you, or any other individual ... and we need to learn to never confuse that point.

We need to care about the various "Joe User" audiences as audiences. There will be individual variance, and samples of one are notoriously unreliable. This is really just "scientific method 101", right? :)

Now, one might suggest that Linus speaks for a large group that is a demographic. No, he does not. He is speaking for himself. You may agree with him, and thereby trick yourself into thinking that because it is you + him (+ some other blog readers) that this makes a demographic group.

A sample of one which shares an aspect that N people in the group post-hoc agree with is not a demographic group. :)

Now to the flip side: I also do not agree with the use of vague and ill-defined audience groups as a way to sidestep the input of input from the field. It is valid to say, "You are not my audience" but it is not valid to say, "I define my audience as X, you are not X, but I still hope you use my software."

... which is the hypocracy I see from time to time.

If we say "this is our audience, and that is not our audience" we need to be completely comfortable with losing the "not our audience" people. In turn, the people who are not the audience ought to find a venue where they ARE the audience.

With KDE3, this became Trinity Desktop. I think they continue to mismanage their public communication dearly, but I love the idea that they created a venue for an audience that was no longer served by the Plasma Workspace audience definition.

I have no issue whatsoever with those people using Trinity / KDE3. Why would I? I helped write that software, and I helped adjust our audience definition. So I helped make both beds and need to be comfortable with sleeping in them. :)

In summary:

* no individual is an audience, even if you agree with them.

* F/OSS projects should avoid using audience definition in hypocritical ways.

* People would be happier if they gravitate towards projects that are catering to their audience rather than trying to force an audience shift on projects they are not otherwise contributing to.

Aaron J. Seigo said...

@arcdefan: "I don't want these people (yourself included) to keep their thoughts for themselves, only because the are no experts."

oops, missed this point in my earlier reply.

there is a clear difference between fair and open discourse, which is what you describe, and cults of personality.

there is a difference between a philosopher, a leader and a dictator. there is a difference between collaboration and popularity contests.

so i agree with you that we should have more thinking, more sharing, more collaboration.

i'm just against the personality-driven popularity contests and dictatorships (benevolent or otherwise). the are by and large unhealthy, particularly in the long term.

Sankar P said...

Your blog seemed to have two parts. The first about why avoid hero-worshipping. The second part seemed like a bit of a rant with no aim (to my eyes).

Everyone needs a hero. In Google, Jeff Dean is a hero and people write Jeff Dean facts (like Chuck Norris facts). In academia, people collect cheque from Don Knuth instead of encashing them. In FOSS the biggest proponent is Linus. So people cult-ize him.

As such, hero worshipping is not bad as it helps people to work more motivated and feel more involved due to the culty nature. As one gets involved more in participation the hero-worshipping reduces. I used to worship some FOSS advocates when I started out on FOSS and then after working realized that most of those superheroes were actually not that great and the real heroes were often unnoticed. So do not bother much about it cult worship. It will not affect the real workers in the community.

Coming back to the Linus thing, he probably gets more attention, because all linux desktop environments suck. Even a person like Linus, who invented Linux could not get a decent desktop experience and this is why most geeks feel happy when he tweets. you dont see people bashing vi/emacs when Linus says he is using microemacs, but are tempted to chimein when he speaks about GNOME 3 or KDE 4.

imho, Cults are good, with some occasional side effects :)

Aaron J. Seigo said...

@Sankar_P: "It will not affect the real workers in the community."

Let's assume this is true (it isn't; I've seen it with my own eyes on too many occasions, but for argument's sake ..) -> it is not just the "real workers", it's the community and the dynamics that run through them.

Remember "The Linux Hater's Blog"? That was mimicry of certain big personalities in F/OSS and in turn it spawned a whole bunch of "let's rant like assholes to developers" across the F/OSS sphere ... and a lot of developers simply walked during that time.

Ubuntu has a cult of personality and that has played a significant role in various semi-disasters, from the forking of GNOME3 to making disregard for sexist comments "ok" (RMS didn't help there either, btw, and the same thing was at play) to the recent "surprise" (which should have been no surprise) over the Amazon monetization which has led to much gnashing of teeth to the non-productive public community in-fighting between non-Canonical kernel devs and Canonical. All preventable, and to one extent or another all influenced or allowed by the personality cult.

"because all linux desktop environments suck"

Thank you for being a perfect case study.

The desktop environments do not suck. Yes, they can all be improved and, good news!, they are.

But let's measure "suck" with metrics rather than Linus rants. I know many non-geeks who use Linux desktop and love it. We have 52 million children using it in Brazil, and millions elsewhere. These people are using something that "sucks", they are using something that works.

Something that works and which can also be improved .. like every other desktop system, proprietary or open, out there.

But no, we focus on the negative bullshit idea that our stuff "sucks". You know how hard it is to:

a) keep contributor moral up
b) sell desktop Linux in the market

in that kind of environment? Much harder than it ought to be.

But no, it's been 'cool' to say "it sucks" rather than adopt the rather more realistic "it works, let's make it even better" position because that is precisely what various big personalities in F/OSS have been trumpeting for a while. Why? Because some of those people are just rantaholics, like Linus, some are sincere but wrong, and others have been fooled into thinking being a rantaholic is cool.

Or, maybe you're right, and Linus' proclamation (along with yours?) discounts every other person's positive experiences.

I find that doubtful, and it is that kind of horrible result which motivated me to write this blog entry.

Kushi Purac said...

I think this is an excellent post. Probably the best written on this subject and with signs of introspection that many in the communities couldnt pull off.

That said, there is a cult of Seigo as well. You may not like it or agree but What Seigo Says could be a weekly feature. There is so little communication about whats happening in the world of KDE that people always go "What does Seigo think?" when something comes up in KDEland.

As for Samba, there is a Cult of Allison as well. More than Tridge. Because Jeremy not only is known for Samba but touring the world the past few years talking about licenses and such and his epic court battle along with Tridge, Piano, FSFE against Microsoft.
He's more than just a Samba dev, he's 'Jeremy Allison'.

gvy said...

Aaron, start with yourself.

I do recognize that KDE currently has less idiotic track in ignoring user feedback than GNOME but even it would be really hard to win that race there's little sense in starting it altogether.

The kernel is managed just fine, while KDE, GNOME and many other community (or kibutz by now?) projects just aren't.

Del said...

Aaron, I certainly agree with your priorities. We need to motivate contributors and we need to push a free desktop in the market place. However, my perspective is a bit different with respect to what causes people to rant. I have been at the receiving end of a Linus rant before, and rather enjoyed it actually. Even if all the more outspoken personalities in free software disappeared (or started to behave as civilized as Andi Kleen), I am not at all convinced it would help in making user feed-back more polite in KDE. In every community I see on the net I see some impolite people. It seems to be part of human nature.

My perception of the semi-disasters are also a bit different. The friction we have seen from Canonical is in my impression Red Hat and Canonical stepping on each others toes. Two competitors not able to collaborate well. For instance, Canonical did very important polishing on the Gnome2 desktop, and created the first proper contender to proprietary desktops. I believe Red Hat should have embraced the contributions and seen to it that the Ubuntu improvements to Gnome got accepted upstream. I believe the failure to do so was a huge mistake hurting both tremendously and a simple consequence of proprietary thinking. The very part of human nature we try to conquer. While KDE could use the resources of backers like Canonical and Red Hat, it really has it's advantages that the interest of such corporate entities does not cloud priorities.

Personally, I think the world would be a less interesting place without the personalities in free software. Still we should let them know when we disagree, just like I do now, and just like I have done with Linus on a couple of occasions.

nowardev said...

Dear Aron , i agree with you but at the end of the day i think i have to care about what a user says and use in his own desktop

Let's take the Gauss curve ,it's a bell for who dosen't know ,


you can see that roughly
40 % thinks SENTENCE- A
30 % thinks SENTENCE- B
30 % Thinks SENTENCE -C

how can a project be usefull for the most of users ?

it should take care of what users think. if it doesn't there would be a fork and critization

for example why gnome was born ? because some devs has thinked about the license of qt at the time where they was not really open

ok if you agree with that WHY there is this division and auto-destruction behavior on open source community like you said in your article ?

i think there is an answer and the answer is ...

because there is a lack of communication FROM USER TO DEVS
and from DEVS TO USERS



how we can fix this ?

let's start with an example

easy take a tour in the customization of kde in every distro you can find out there and you will see that there are a lots of customization users share and taht are not included in the default kde's set of settings

so make an average of these settings and you will get a proper set of settings for the most of user and you will see that user will sto to critize kde in this example

so now how can we fix this ?

just create a central website where devs can create poll easly and share their own ideas and see what users think and want

of couse there should be the ability to do the viceversa.

Philip Van Hoof said...

Hey Aaron. As I was typing it in thie textbox I decided to blog once more on my own site instead ;-). I've put my reply here:

http://pvanhoof.be/blog/index.php/2012/11/10/allowing-local-cults-of-personality-in-open-source

Djuro Drljaca said...

@nowardev: the problem is that you will probably create something that everyone will hate :)

that's why there are different distributions and different desktop environments ... people have different tastes and needs ;)

O homem e a mente said...

Well I understand your point, but the cult is not in Linux is in "US", because is the person who choose to follow or not what someone that he believes this person has "credibility" is important. You see this everywhere.

Of course Linus because he contribute, when he say something people give more impact, it's natural, but we can necessarily accuse him as personality cult.

There a problem something when the creator of something really likes what he creates, despite of criticisms, and choose to dismiss it pointing has haters or something else.

I share much of is opinion, thought I'm not using KDE, I'm using cinnamon. I like the gnome3, but just to look at it, because while working, takes lot of productivity. Because this matter I was in despair because I couldn't see which desktop env would be useful for the our business, and actually I still not.

So, I understand Linus perfectly, because when you have to make serious job with linux, like working with lot of window, and it's not programming. My company is It consultant, and we have to do lots of documents, of stuff open at the same time, with g3 became hell.

The thing on g3 is "I'm vegetarian, so you must be too, because i believe is better"

Best regards

nowardev said...

@Djuro Drljaca


get 1000 distro is good ?

from my point of view the fork of linux that i call 1000-distro-linux-fool-thing is worse than to fork a program

why ?

because if you fork a program and then , you get an improvement of the same program you have gotten a valuable thing


so why is not valuable to get the 1000-distro-linux-fool-thing ?!


look at what we have !

opensuse mageia kubuntu pardus other friendly-linux .they do the same thing

tweak kernel
tweak kde
tweak installation
get a installer for applications.
make things easier for user

they don't add something of really different to a user because the programs are the same , one distro is better in some devices, another is faster but again programs are the same...

so this 1000-distro-linux-fool-thing is not an efficent way to distribuite linux

which system we should use ? a system that fits users !

i am a rolling user => system can activate some repo to ge the latest stuff
i am a server user => ultra stable repo activated only
i have an old computer => 3d disabled and so on
i am minimalist user => minimalisti theme minimalistic settings
i am a kde user => wtf actvate all the stuff you can activate lol



do you think that i am a fool ?

well then look at what i am trying to do :

http://code.google.com/p/kde-peace-settings/source/browse/

IT'S NOT FINISHED i just did the plasma panels collections

in this project you can find

kde-gnome2-settings
kde-gnome3-settings
kde-unity-settings
kde-myown-settings
kde-light-settings
kde-unkool-settings xD

maybe i am a fool maybe i am not a programmer but ,i thinked that my challange was a valuable thing and i have choose kde because it's the only DE that can do this . I love kde for this,

and i hope that someone will find a way to unify distro too.

like a song says ... i am dreamer let me dream :D

and as like always my 2 cents :P

Djuro Drljaca said...

@nowardev: don't get too excited :)

what I meant was something in this direction:

1) some people want "the best settings" chosen for them without much possibilities for reconfiguration

2) some other people want to have the possibility to reconfigure "everything" according to their taste

1) could be good since you can concentrate on using the system and not so much to configure it, but with 2) if you don't like something you can change the settings or maybe increase your productivity by enabling some features ... it just depends on what kind of a user you are and what you prefer

this was just 1 example that comes to mind

Aaron J. Seigo said...

The comments are starting to go off-topic. The topic is NOT "do we pay attention to users." Of course we do, and we should. The recently published KDE Manifesto backs that up as well.

This is not the topic and I do not wish for it to become the topic here. It is a useful topic, but not the one here.

What is being discussed is, rather, allowing certain individuals have too much sway over F/OSS community opinion and direction in non-rational ways.

It has nothing to do with agreeing/disagreeing, but the reasons why we pay extreme amounts of attention to some.

my switching from MySQL to PostgreSQL should hardly be news; Linus switching desktops should be also. it's like following the hair style of Lindsay Lohan: over infatuation with famous personalities.

and this has impacts on F/OSS that are not negligible or ignorable. the impacts have been consistently negative.

also keep in mind that this is NOT about leadership, philosophy or other social interactions with meaningful foundations.

in fact, if you think about it a while, it may occur to you that cults of personality are unrelated to leadership and even at odds with it.

ok .. so, enough about what this is not about, hopefully discussing that ensues (if any :) can get back on topic.

oh, and if you'd like me to discuss some of these other topics in future blog entries, let me know and i'll try to put some thoughts and words together.

Olin Sibert said...

Why do I care what Linus thinks about the desktop?

Because (A) he tries to explain the basis for his opinions in reasonable detail, (B) I find his thinking reasonably clear and organized, and (C) I have found, over the years, that his and my preferences coincide to a useful degree.

That's not to say that I always agree with him, and especially not to say that I think his opinions should be the sole basis for designing a desktop to serve the billion-user general community, merely that I don's agree that the "cult of personality" renders all those opinions useless or irrelevant.

Terry A. Davis said...

it would tickle millions to hear stories of Jesus' carpentry. I asked Jesus why the mustardseed? "Bad meat happeneth"

Aaron J. Seigo said...

@Olin: that is a strawman. the issue is not "is Linus right?" that's obviously not a resolvable issue as his opinion in many of these matters is one of taste (and some % those with equal levels of UX design knowledge are going to resonate with his thoughts).

the question is why we pay excessive attention to people *such as* Linus, and then to look at the results of doing so.

the issue is not that Linus is sometimes "right" (whatever that might mean in context), but that F/OSS pays excessive attention to a select group of charismatic people who are not only often "wrong" but also often *divisive* even when they are "right" .. all while not paying attention to many others who are NOT divisive and better positioned to way in on certain topics.

it is the excessive attention to divisive personalities and accepting their opinions as more correct than they are that is the issue.

btw, you may wish to look into the psychology of agreeing with opinions. it's interesting how much one agrees has must less to do with the content and accuracy of the opinion than it does to other things.

... and when designing software, we need useful and accurate content.

again, this is why personality cults are *retrograde* to progress.

nowardev said...

i have the feeling that you, aron, think that people are like dolls :)

i have a brain , and i am a kde-guy and i think that what he said , linus, was in some part right

i admire him , but i do not always agree with him. if someone does what you have said in your article well.. he is not mature.

the most important thing i would like you understood is just this :

why do you think there are division and critics so much point of divisive-view?

i have my personal point of view...

lacking of comunications. => lacking of understanding=>do care of what is importat for % of users\people => division => inefficient system

my last post :D i swear

Peter Speckmayer said...

Apple succeeded and I'd say that Steve jobs had a strong personality. Microsoft succeeded and I'd say that bill gates has a strong personality.

I don't see the correlation of a strong personality with the lack of success of a project. I indeed think, that Linux had a great success. The problem might be, that it's success cannot be easily measured by the number of yachts a CEO could buy per month. If all Linux would be removed in this very instance, basically nothing would work any more. It is in every router, in every TV, telephone companies use it, power plants, ...

Why has the Linux desktop not succeeded, well... because no shop has sold it on a large scale. People are not like companies. While companies decide on their whole IT ecosystem and are therefore kind of free to switch systems entirely if it provides a better cost benefit ratio, people have to consider the ecosystem which is prevailing amongst family, friends and work. If the others play games on MS and there are none for Linux ... no gamer will go for Linux (just one example).

Conclusion. I don't think, that one can break down the success or the failure of a project to a monocausal reason like "strong personality" of someone in the community.




Why has the

The economic success depends on if the product is offered and sold or not. Sounds simple, but that's it. Linux computers were never offered large scale in shops. People buy what they find in shops. Ergo people didn't buy Linux machines.
Business on the other hand calculates the cost to benefit ratio and doesn't just buy in the sboo at the corner of the street.

Matt Stevens said...

Great post, don't know if somebody has already mentioned this – but it kind of reminds me about News programmes on TV, when a tragic event happens like a child being killed in a hit and run. The presenters will interview the parents from that moment on regarding road safety and road laws, as if this event had made them experts in these areas overnight. As bad as their situation is, it doesn't qualify them to be writing laws and laying down new regulations. But this happens very often and in many different ways. People wrongly attributing skills to a person, for example… my little cousin (he's 8) once remarked that Einstein would be a much better programmer than me if he were alive because of how smart he was. If he actively pursued programming, I conceded he most likely would be – but, just because he was a smart cookie with Physics, Mathematics and what have you… does not implicitly make him a genius in every field. I would rather have a qualified surgeon operate on me, than an unqualified Einstein… no matter how intelligent he was.

One more thing, I really like Torvald's work ethic. His code is awesome and he has my respect for the things he has achieved. But, his attitude quite frankly… stinks. He definitely didn't get to where he is now by being an arrogant git – that's just part of who he is, but not a part I want to emulate.

Peter Speckmayer said...

... written on a phone. And some part of the text I thought that I had deleted reappeared.

Aaron J. Seigo said...

@Peter Speckmayer: "I don't see the correlation of a strong personality with the lack of success of a project"

That isn't what this blog entry says. "Strong personalities" are not at all the issue, it's the community around such people creating cults of personality that I critique here.

"Apple succeeded [..] Microsoft succeeded"

The fallacy in this observation is that what works for one kind of organization / social structure should work for all other sorts. This is demonstrably false.

"Why has the Linux desktop not succeeded, well... because no shop has sold it on a large scale."

The retail market has been a real struggle in North America and Europe (less so in other places, btw, such as Brazil). I've written and spoken extensively about these issues in the past.

What this blog entry is about is effective technology creation and direction, not market penetration.

"I don't think, that one can break down the success or the failure of a project to a monocausal reason"

Of course not, and I never said there was one single reason. That would be rather absurd. What equally absurd is to say that because there are a plurality of issues at play, it is not useful to address them.

Indeed, there are many issues, so let's just stay silent on them all?

Aaron J. Seigo said...

@Matt Stevens: yes, this phenomenon as you note is not at all limited to Free software. it's a common human foible, but one that can be avoided (many organizations / communities do)

"His code is awesome and he has my respect for the things he has achieved. But, his attitude quite frankly… stinks."

Agreed on both points. Which is the danger of the "cult of Linus": it makes it not only acceptable but cool to emulate that attitude.

Lastzero said...

While I agree with your aversion against the obvious problems that come with a cult of personality (which is a problem outside the open source community too), I also value Linus Torvalds direct and open criticism. At least he can afford it and people listen to him. Of course, that doesn't mean you should imitate him, since ordinary people can not afford to behave like that...

If some "normal" developer is complaining, (almost) nobody listens or you hear comments like "write your own desktop environment, if you don't like what is available". IMO that's not the right attitude, but I guess some developers working for popular projects like KDE and Gnome think it is!?

As a developer or "classic user", it's a torture to use most "modern" desktop environments (including Windows and even OS X). Luckily, the latest version of Xfce works for me (although the "default settings" in Xubuntu also try to imitate OS X).

Here's my own blog post on the topic: lastzero.net/2012/10/xubuntu-12-10-for-web-software-developers

Hermann Neu said...

I agree with you, but how can we ignore the meaning of Linus? He is too important as one of the father of open source. No ignore, but we have the right to say that his meaning is his meaning and not more important than other's too.

Aaron J. Seigo said...

@Hermann Neu: How is Linus the father of open source?

RMS started the Free Software Foundation 8 years before Linus started on his kernel.

Bruce Perens and Eric Raymond, who used to hold court over their own cults of personality back in the day, coined the term "open source".

BSD predates Linux as a successful OS, and there were many, many hugely successful F/OSS products prior to Linux.

The reason you state Linus is the father of open source is because of the cult around his mythos. Due to that, you think he should get excessive attention. In other words, because he has been cultified (and allowed that cultification to happen) people think he deserves it and round and round the cycle goes.

See how this works?

Your comment is a really good example of precisely why these personality cults are so wrong.

Ioannis A said...

Agreed 100%. Not only are cults of personality stupid (though I have nothing against celebrities, I just don't like adoring fans), but they also lead the media to delude logic.

Linus Torvalds is anything but the average Linux user. Please do not take your recommendations on Desktop Environment from a goddamn Linux kernel developer (I'm not a programmer, but I recognise kernel developers are very smart people!).

Paul Steffen said...

@jdalt: "I am looking at QML and plasma. What I'm saying is that I think there's a missing layer of easy to use inspection tools to crack the desktop open and ask questions and change things on the fly."

OMG, I can't believe I'm not the only one who feels this is a gaping hole in KDE functionality. I mean, KDE's widgets functionality obviously is partially inspired by Squeak Smalltalk (rotatable widgets...) but I keep looking forward to that 'edit/debug scriptlet' icon in that widget slide-out bar... There's a huge missed opportunity here in not allowing users to craft widgets interactively on their desktop.

Stardock's Object Desktop suite is a good model for how it should be done. Create new blank widget, add or layer png/gif/jpg images or "subwidgets" (clock, cpu meter, textbox or custom script-driven SVG graphic), edit template script, right-click share to the world. Enjoy the explosion of cool new widgets.

banking said...

I am not afraid of saying it:"I don't care what Linus Torvalds uses on his computer."

So there!

Now, what do you mean by "conscious improvement of the Free software culture"?

Claitom Sega said...

Great story with a great view.
Congrats.
A big hug!!!
http://www.blogdoclaitom.blogspot.com

trashbird1240 said...

I don't care what Linus uses on his computer. I also have a feeling that Linus knows plenty of people feel that way. I saw a talk where he said "I use microemacs, because GNU Emacs and vim suck. Oh, I just alienated the entire audience."

nanday said...

What's worse than a cult of personality? How about two cults of personality in conflict?

My latest article: "When cults of personality clash" http://www.linuxpromagazine.com/Online/Blogs/Off-the-Beat-Bruce-Byfield-s-Blog/When-cults-of-personality-clash