Doacracy

Before I go back to the delayed series of posts about news writing, there is one thing I feel I absolutely have to write about.

As a world’s renown know-it-all son of a bitch I have a finely tuned radar against the likes of me. Luckily, as subscriber of a dozen of mailing lists I never have a short supply of people who come out of blue to tell developers what the developers should or should not do. As one of such out-of-bluers wrote yesterday in one of those lists, and I quote, “Priorities must ultimately be set by end users.”.

Now, there’s a thing… The guy has a point: obviously, if you intend to make your software, free or not, usable for end-users, you have to take care of things like basic usability, bug reports, feature enhancement requests and so on. And that means that users end up having a sort of a vote, however indirect may it be. Which opens a whole can of worms some of which are the size of Texas. Because when you work on a project in your spare time, you prefer working on things you like to work on, otherwise all the fun waves goodbye and goes for good. Which usually means end of project. That’s one of the reasons some projects have gazillions of unclosed bugs in their trackers.

Here is a question to developers: do you work on a project for your own dear ego? Or for users? Or to make some cool shit and become popular? And can you really make cool shit if you listen just to yourself? But will you have stamina for the long run, given how much users demand that is out of your interests?

How can one possibly crawl out of this deadlock? There is a fairly honest way of dealing with this. It’s what we in Inkscape project call doacracy (the term wasn’t invented there, but that’s where I’ve grown to love and abuse it). What is means is: the more you do in the project, the more solid your vote is. I know I can bitch is some mailing lists and/or IRC channels, because I’ve been contributing stuff for years. And I know I can’t do that in others, because I haven’t done anything serious there, so I better keep my mouth shut (by means of a muzzle sometimes).

That, in return, brings a new question. Everybody’s (and I really mean everybody) heard how cool open source is, because anyone can affect development process. And now this sick bastard, Prokoudine’s the name, comes and says: “Hoho, no, you’ve got to contribute first”. So, what’s the deal? Can you get developers to do some stuff that is important for you or was it the usual freetardd propaganda?

First thing you have to understand about open source projects is that developers are not slaving away for you or any average Joe or Jane. They are mostly doing it because they think they are doing the right thing: something that looks interesting, advertising or just currently missing while being listed in TODO, something that fits their understanding of the project’s objectives.

Thus the way to get an open source developer to slave away for you is to brings matters on personal level, and by that I don’t mean uttering words you would get a punch in the face IRL for. What I mean is making you ideas appealing, because they are coming from someone who invested a considerable amount of time into understanding

a) project’s objectives (like GIMP not being streamlined for digital painting, because MyPaint and Krita already are)
b) scope of the project (like Inkscape not being an MS Visio drop-in replacement, while having Connector tool)
c) manpower in the project (like Scribus always lacking people to bloody rewrite the tables)
d) priorities in the project (like not trying to build a roof on top of a foundation pit and then get on with walls)

When you take some time to learn these things, you might find your ideas and requests readjusting themselves into something that really fits the project and thus has better chances to be implemented. Saying something like “Is it so difficult to implement 16bit in GIMP in a few weeks time?” is really the same as saying “Is it really so difficult to build the Great Pyramid of Giza by several slaves with cerebral palsy and a wheelbarrow by next Christmas?” You need to understand basics of software project’s state of affairs to make you requests valid. That’s basic respect, and basic respect can get you much further than money. If you think free software developers owe you for using their software, you already failed.

But ultimately it’s quid pro quo way that makes many projects tick. I’ve tried that in the past multiple times and it never failed me. The fun thing is then I never had to write a single line of code. Free software projects often lack manpower to write new features, but they almost always lack designers, web programmers, documentation writers, marketing people and so on. I mean, come on, you can’t be completely useless, you’ve got to be able to do something. Be giver and taker.

  • http://lukast.mediablog.sk/log LukasT

    Every blog post I ever read from you contain word ‘bastard’ :)

    Good blogpost and me as open-source developer, can confirm the ideas you present.

  • http://www.prokoudine.info Alexandre

    Not every, but I do my best :)

  • frob

    Next time just check and if it was missed from the post, just add it into the title :P

  • Charlie De

    Hey Alexandre, this is Charlie, your online nemesis, first rate bastard, and “a ugly Troll”. I just want to say peace, man, and thanks for the good work and for being who you are. You and I may not always see eye to eye in our methods, personalities and cultures we belong to, but let’s not lose sight of the fact that in the ultimate aim of making open source software better we’re on the same side. Best regards and see you on the list.