User:Andy/Rant/Open Source: License To Be A Jerk

From Strugglers
Jump to: navigation, search

Warning up front: This rant is longer and probably more boring than my usual rants. Sorry.

And another update: Some people wish to mail me on this topic (I think I can guess where they got the page address from). Please note that if you do, then I reserve the right to add the content of your email to this page at a later date. I might edit it for formatting, but I won't change the meaning of what you have said nor quote you out of context.

Today I came across a phenomenon I've been noticing a lot recently.

Open Source developers who think that because they develop for fun/free, it gives them the right to be complete jerks.

Please don't get me wrong. Usually it's other people who tell me “Jesus! You were hard on that guy, all he wanted was a little help...” when someone comes along and demonstrates their cluelessness. I can't stand users of Free Software (or free anything, in fact) who bitch and moan about (lack of) quality, or demand support and assistance as if they had a support contract. Open Source folks usually get enough of that at their places of employment.

I know first-hand how mentally exhausting it can be to support an open source project. That's why I always try to do my homework before I myself ask for support. Usually that means I don't ever have to ask for support, because the research I do finds the answers for me. But when I do have to ask for help, I always make it clear that I'm willing to put the effort in to find the answer, and contribute back the solution.

For some people though, this just is not enough. I suppose there must be dysfunctional people in all walks of life, so I should not be surprised that some of them are open source developers. Many of us are quirky and short-tempered, I can get that way myself. But tonight went further than anything I have ever seen before.

I had been hearing about a new peer-to-peer filesharing network/protocol called giFT. It was based on unix, and it was apparently the answer to all my previous concerns about existing p2p technology.

For a long time I had been wanting to start a project to write the perfect p2p solution, but never had the time. Here was a fledgling project that looked as if it could be the best, and I was very interested. I set about getting it running.

I won't bore you with the details, but there were a couple of problems even at the compilation stage. Neither seemed insurmountable, and in fact I was quite happy because they seemed to provide an “in” for a coder of my level of ability. They were things I could fix, they could allow me to get involved. This seemed the right time to talk to the developers.

I looked for a mailing list, I usually prefer discussing technical stuff through email even though (obviously, if you know me) I enjoy IRC. But, hmm, no sign of any mailing lists on the giFT site. Just pointers for their IRC channel, #giFT. By this time I had already read all available documentation on their site and tried google too.

Here's how my visit to #giFT went:

--- Topic for #gift is Dedicated UT2003 server @ 128.208.115.97
--- Topic for #gift set by jasta at Mon Nov 18 14:34:23
-ChanServ- [#giFT] If you are having troubles installing/using
  giFT please see http://www.giftproject.org/docs/ before asking questions
  here. You have been warned.
<jasta> well then thats not good
<grifferz> hello folks, I am having problems compiling gift on
  red hat:
<jasta> but im far too busy to care right now
<grifferz> main.c:73:25: magick/api.h: No such file or directory
<grifferz> main.c:74:29: magick/version.h: No such file or
  directory
<jasta> grifferz: read the install guide
<grifferz> but I do have those files, it is just not detecting
  them
<jasta> then read configure.ac or something
<grifferz> yes, I havem I do not see anything there relating to
  this
<grifferz> well, I see the configure script has a --with-Magick
  option, however that does not help me either
<Smeven> grifferz: then just disable magick
<jasta> if you have install it in a non-standard path, youll
  likely need to hack configure.ac
<jasta> and submit a patch
<jasta> if you arent willing to do that, this software isnt for you
<grifferz> I can do that if I have some idea what the problem
  is.  does the --with-Magick option not work?  would you like a patch that
  provides say a --with-Magick-includes option?
<Smeven> back to libgiFT
<rnc> weird
<Smeven> ....
<jasta> we arent reading Magick-config --cflags because its evil
  and wrong.
<jasta> Magick-config is adding lots and lots of stuff we dont
  want to build and/or link with
*** slide (slide@ip68-11-132-226.br.no.cox.net) has joined #giFT
<rnc> those .h files Smeven said are in Makefile.am on the
  pkginclude_HEADERS list
<jasta> i havent had time to play w/ it
<rnc> but when you see the Makefile, they are not
<Smeven> rnc: odd
<jasta> how much do you guys think I should differentiate
  between a search/browse/locate event in giFT <-> OpenFT communication?
<jasta> as far as giFT's concerned, all three have identical
  input and output.
<jasta> so they are the same.
<jasta> but the protocol likely doenst think theyre even vaguely
  similar.
<grifferz> another question I have is, could you give me some  
  idea of the problem with libid3 3.8.*?
<grifferz> I can't use 3.7.* because that doesn't seem to want
  to compile either.  if work needs to be done it seems better to do it  
  with gift to support 3.8.* rather than working on old stuff.
<jasta> grifferz: it requires libstdc++, which i am not willing
  to have giFT link against.
<jasta> its completely inappropriate.
<grifferz> so are you planning to drop support of libid3 then,
  since it seems unlikely that its author will revers ethis decision..
<jasta> we need to find a new id3libesque replacement
<grifferz> ok
<jasta> but again, too busy.
<jasta> so its gonna stay like it is for a while
<Smeven> rnc: i checked Makefile.am also, thats really weird.
<jasta> i cant think of any reason why that'd happen
<jasta> Smeven: tree.h has no trailing \
<Smeven> jasta: i was just about to say that
<rnc> there you go
<Smeven> why in the hell wouldnt that produce an error
<jasta> good question
<jasta> i found that out because i looked for protocol.h in the
  Makefile
<jasta> and found an arbitrary block starting w/ log.h :)
<Smeven> are you gonna submit a "fix" to cvs? :)
<jasta> of course i already did.                
<Smeven> ok                     
<rnc> that means no one has ever used libgiFT, or found the
  missing \ and didn't report back
<Smeven> rnc: or tried it and it didnt work ;)
<jasta> i seriously doubt anyone even knows about libgift.
<jasta> i want someone to write docs on it
<jasta> but of course, no one will
<Smeven> I may, if i ever figure it out.
<jasta> god i love the open source movement...it just feels like
  it picks up support every day
<Smeven> haha
<Smeven> When I figure it out, I will write docs for it.
<grifferz> jasta: I seem to have fixed my problem by sticking
<grifferz> CPPFLAGS="$CPPFLAGS -I/usr/X11R6/include/X11/magick -I/usr/X11R6/include"
<grifferz> in the configure.ac
<grifferz> in case anyone asks again
<jasta> i didnt ask you to fix "your problem"
<grifferz> ...
<jasta> i asked you to do enough research to appropriate fix the
  problem for everyone
<grifferz> gee I am sorry for helping you out
<Smeven> lol
<jasta> what you pasted didnt help one bit
<grifferz> so what you're saying is that should someone come
  here and ask the exact same question as me, what I just pasted won't help
  them?
*** jasta sets modes [#giFT +b *!*goats@*.blueyonder.co.uk]
--- You have been kicked from #gift by jasta (dont bother me)

Wow, he told me! He really showed me how wrong I was for..er..what exactly? What did I do there? Dared to say what I did, to go some way to making it work? Violated the sanctity of his hyper secret giFT-cave!? So, I just had to ask in private message..:

<grifferz> is this your normal reaction to people who are
  interested in your project?
<jasta> yes, now piss off
<grifferz> see, I did not ask you to insult me and thus get
  yourself embroiled in a time wasting activity.  so I can only assume that
  you enjoy doing it.
<jasta> i said dont bother me
<jasta> so, dont bother me.
<grifferz> I'm just curious why you are behaving this way, and
  what exactly I did to offend you or upset you so.
<grifferz> if you can't explain what I've done to offend you, I
  think that means I'm entitled to an apology.  You've been pretty rude.
<jasta> youre useless, thats what.
<jasta> submit something well researched, and i might change my
  mind
<jasta> until then, youre on ignore
<grifferz> well, believe it or not, I did read every document on
  your site to try to see if this problem had been documented anywhere.  It
  wasn't.
<jasta> no, it wasnt...because its a bug that needs to be fixed
<jasta> as i said before, i dont fucking have time
<jasta> so either fix it or leave me the hell alone
<jasta> what you pasted was a shameless hack for YOUR SYSTEM
  ONLY and will not benefit anyone else
<grifferz> erm well if you hadn't just banned me out of the
  channel for merely SAYING how I had fixed it for myself, then we wouldn't
  be having this conversation
<jasta> go do a little fucking homework before you paste such
  worthless nonsense
<jasta> fucking dipshit
<grifferz> more abuse.  I could have spent some more time to
  come up with an appropriate autoconf test to find the headers, but why
  bother when you treat people like this?
<grifferz> if your time is so valuable why do you spend it
  ranting at people for talking on irc, and abusing them?
<jasta> i am easily baited, thats why i usually choose to
  permban and ignore everyone who would try.
<jasta> thanks for reminding me of why i use the /kbi alias.
<grifferz> I wasn't trying to bait you, I think you'll find if
  you read back through everything I said I was perfectly polite even
  though you began insulting me almost immediately.
<jasta> right ok, have a nice day.
<grifferz> so I don't get an apology for the abuse you have
  given me then?
<grifferz> OK, I guess not.  Good day.
--- Disconnected ().

When asking for support (which I don't do a lot, as I explained before) I generally find it best to follow the guidelines in Eric S. Raymond's fine document, How To Ask Questions The Smart Way. I think the world would be a much better place if everyone else did too. I encourage you to have a read of that document now and see if you can find an area in which I was lacking.

Being unable to find out exactly what I did wrong, and not being offered the courtesy of an apology, I am left to conclude that jasta here has severe problems communicating with other human beings.

I realise what I pasted was not a complete solution — it was at best a hack for Red Hat machines alone — but hopefully it can be understood that I did not wish to go to the extent of writing a proper autoconf test if it would not be accepted or if there was some particular way that the developers would prefer it to be done. At the very least what I pasted made it clear where the problem lay and some sensible path to follow to fix it, waiting for a bit of feedback.

I did not expect to be treated to this torrent of abuse and childish behaviour for my trouble.

I know that there is a section in ESR's document that basically says, “if you've asked a stupid question and got people angry, don't bother ranting at them, just suck it up and move on and learn from your mistakes.” That's all very well, but jasta seems unable to explain exactly what I did that was so bad apart from “pasting an imperfect solution” and “wasting his time”. If someone can show me what I did that was so bad then I will happily forget this issue. Until then, I'm expecting an apology.

I don't buy the “I'm too busy to be talking to you” excuse. I did not ask for a personal audience with jasta. He took time out of his busy schedule to purposefully insult me, and continued to do so in private when I was trying to find out what I'd done that was so wrong. When I get too busy and people are hassling me on IRC for support, I just don't respond or I ask them to mail the appropriate support mailing list. I don't start a flame war about how busy I am and screw them for daring to come and talk to me.

I'm sorry, Open Source is not a license to be a complete and total jerk.

Here's some advice:

  • If you are as socially inept as jasta here
  • If you have such a superiority complex that you have to flame, bitch and moan at every single person who comes to you for help no matter what their level of competence or how much homework they did for themselves

If the above describes you, then try and find an adult to talk to people for you, and you stick to doing the coding. You'll upset yourself a lot less, and maybe we can all get some work done.

The social flaws of DJB, RMS and Theo de Raadt combined would still be easier to deal with than jasta. All have the reputation for being genuises with so little time that they'll eat you alive if you waste it, and yet I doubt any of them would get themselves into such a childish conversation as jasta did above. If they did, I'm sure I would be left knowing exactly why I had been flamed! And sorry jasta, giFT shows great technical promise but I think the only times you'll be compared to these guys in your life is as a flamer.

What if you are thinking of helping out the giFT community?

I think you're going to have a hard time. Egos as fragile as jasta's are going to need a lot of tiptoeing around. Maybe the situation will improve with time, perhaps his fellow developers will slap some sense into him or maybe he will lose interest and someone else will take over or fork the project. We can but hope.

What if I want to use giFT?

It looks absolutely great, but definitely not yet ready for general use. At this stage you still have to get all the source out of CVS, for example. My advice to you is, if you've got the time, patience and knowledge, try to get the thing working. Try to get as far as you can with it without having to go anywhere near jasta in realtime. If you need to ask for support, try to avoid jasta, don't challenge him on anything, it seems he likes to demonstrate his dominance by banning you from the only place you will be able to get help.

I personally do not think the above paragraph is an acceptable state of affairs even for an open source project. The people who are interfacing with other developers should never be "people to avoid". It's a real shame because this project looked like it could have been best of its breed. It is understandable if all this puts you off using giFT. Like I say, hopefully the situation will improve one day.

How can the giFT folks fix this?

jasta might be a great coder, but he needs to not deal with people if this is how he behaves. Even then, it could be tough, because this kind of behaviour scares off potential contributors (like me). Having mailing lists as the primary support/discussion mechanism might go a long way to sort things out. People tend to be a lot more polite on mailing lists, and I'm betting that during those moments of rage that jasta seems to be unable to control, composing an email will be just too much effort.

Still waiting for the apology, jasta.