Who wrote Pidgin’s msn? Not who you think

So, it looks like Pidgin developers have a little trouble believing that I’ve
contributed substantially to the msn prpl, so I decided to prove it once and
for all.

I took the latest code from the pidgin-clone repo and ran git bisectgit blame, which
returns the latest commit that touched each and every line of code. Then I read
every commit message to identify the real author (Pidgin’s mtn has inacurate
information) until I completed 90% of the code (the missing 10% would take too
much effort). Unfortunately a good portion of the code (8%) is mere cleanups so
I decided to remove it from the calculation.

The end result is this:

pidgin-msn contributions

pidgin-msn contributions

Even after several years of not touching the code, and major updates like
msnp9->msnp14, 42% of the current code came directly from me. But also interesting is
the fact that 20% came from people that are not current Pidgin
developers: typ0, chipx86 and mayuan. So, less than 38% of the code was
developed by current Pidgin developers.

Now I wish Pidgin developers would acknowledge that I’m the one that knows the code-base better, for obvious reasons (I wrote most of it).

35 thoughts on “Who wrote Pidgin’s msn? Not who you think

  1. All this says is that you wrote crap code and can’t be bothered supplying fixes when you know full well what the fix would be. Further, it says that at this point in time you’d rather abuse the current developers rather than be a team player and get it fixed in tree.

  2. @Eion it’s a git blame, so it’s the number of lines in the current code-base.

    @bleeter I asked for commit access, it was denied; I cannot be a team player in a team that doesn’t want me.

    So I fixed it in msn-pecan, which is a better team player than Pidgin in the FOSS community since it plans to get along with freedesktop.org, GNOME, Telepathy, and other MSN projects such as papyon and libmsn-2.

  3. OK, you were denied commit maybe because it’s perceived that your attitude sucks. You’re still more than capable of putting patches in tracker.

  4. Also, as I just wrote in d@p.i, “the numbers are meaningless. Without an examination of quality of code and amount of effort required to fix any bugs written by any author, or knowledge of any friendly unattributed code borrowing between authors, they don’t mean jack. Statistics can be made to say pretty much anything one wants. “

  5. @bleeter I did put patches in the tracker, even trivial ones gathered dust there for several months. That doesn’t work for me, I need to work at my own speed.

    Have you ever heard the term: technical merit? Some projects care more about the actual software than useless politics.

  6. @bleeter Try removing the lines of code I wrote, see how well the software works. I would also be interested in your own statistics that shows results contradictory to mine: that my contributions are important and substantial.

  7. Nice numbers Felipe, and don’t mind the haters. I had to quit reading d@p.i. Somehow pidgin has developed one of the most toxic and nasty little developer communities I’ve seen (possibly second to linux-ha – at least in the case of pidgin I haven’t forcibly removed it from my system because I plain don’t trust them like I did with heartbeat)

    Bron ( maybe it’s time to try out Empathy again )

  8. isn’t using git (which isn’t sanctioned by the pidgin devs) a bit suggestive? I mean, we can only take your word that only contains pidgin’s code and nothing that you may have done locally inside of git.

  9. @anon Pidgin developers hate git, but they use monotone, and monotone has an official tool to convert from mtn->git (which I also helped to develop). We made extensive tests to make sure that the resulting repository is an exact replica.

    So even if Pidgin devs don’t trust the git pidgin-clone, monotone devs do.

    In any case I could take some extra time to point out all my monotone commits that I’ve identified so far if somebody doesn’t believe these numbers are valid.

  10. > git bisect, which returns the latest commit that
    > touched each and every line of code.

    ehh??? i wonder how you used bisect for that purpose…

  11. Pingback: Top Posts « WordPress.com

  12. When did any of them make the claim that you didn’t write a significant portion of the MSN code?

  13. Also, isn’t there a little irony in your blaming the Pidgin developers for not fixing a bug for six years when you then claim to have written most of the code yourself?

  14. @anon They do it regularly on IRC, I’m not sure if there’s evidence on the mailing list.

    I wrote most of the code currently being used, that’s one of the reasons why I know the 6 year old bug is tricky. But I submitted that code about 6 years ago, mostly by patches, and at that time my coding skills were not that great. I’ve remained mostly inactive the last 4 years and they never gave me the space to work full-time fixing the issues and reorganizing the code as I’ve done in msn-pecan.

  15. I think you missed my point about the git clone. it was that you could commit to it. and by non-sanctioned, i didn’t mean bad, just, you know, not blessed.

  16. You freely admit your coding was poor at the time you wrote that stuff (tangental, is the bug that this net-fight is over your code, or someone else’s?). My point is that if a part of your code is junk and you have 500 lines to do something someone else could do in 5 lines, and you’d agree with the ‘new’ 5 line analysis, then you can hardly call your substantial old code count a fair and reasonable analysis.

    tldr:I thought kloc went out the window as a hard and fast code contribution calculation method back in the OS2/Win95 split…

  17. @bleeter Well, you can’t say a developer writes bad code if the bad code has been there for 5 years unmodified by the current developers. Unless not without blaming current developers. Anyways it’s apparently fixed in msn-pecan.
    I remember having that problem like a few years back with adium, and the answer in the forums was something like… endure it, it sheldom happens. Wich made me switch back and forth from the original msn.

  18. @bleeter you are full of bullshit. I dare you to submit a patch that turns 500 lines of my currently used code into 5.

    @dvd word!🙂

  19. I am sorry, Pidgin Developers. But obviously the bug has been reported thousands of times by many users and no one developer manage to fix it OR the worst, to even acknowledge the bug over the course of few years. Tech / Geeky users will know you are all lying when you put the blame to MSN servers, because there are other Multi Platform , or Multi Protocol client which works perfectly fine!. I don’t know if it really has been there for 6 years or not, At least in my Pre Mac days it ALWAYS happen in Pidgin, and from my switch to Adium IT always happen on my Mac. And in my office use of Pidgin, it happens day to day. That is at least 3 – 4 years of the bug happening daily to me and users have been barking sometimes with no developers coming to help.

    Yes, it is open source, and yes, we got told to do it ourself. The reality is NO ONE SINGLE DEVELOPERS in Pidgin, cares about MSN users, ( I am not sure about other Protocol though ) the largest number of IM users in the world.

  20. I arrived at this blog entry through “pidgin msn” on google while searching for why I’ve been unable to connect to msn for almost 3 days using Pidgin.

    I think both groups here have a positive opportunity to contribute. The Pidgin developers are a group that are *responsible* for the stability of the code, and that’s a great positive contribution no matter what names people call them. However, FilipeC has also contributed and for that we are greatful. He is perfectly within his right to use that code as he wishes, and I would suggest to him that if he’s not getting appreciated in this team, then he should contribute to other IM clients in a positive way because this is doing his reputation more harm than good.

    Engaging in a slinging match with anyone in a free community is just going to irritate everyone more and exclude you. There’s no point in proving whose code it is because the code itself is free.

    I would suggest instead to prove your code works by offering an alternative and gathering users. You are perfectly within your right to fork Purple and even take all their future patches. These days version control is really easy for maintaining forks. That’s really the way to prove you’re right.

    Build it and they will come.

  21. I regularly use pidgin. With MSN and other accounts. I acknowledge your contribution. I am sure that your analysis could be rechecked and yield similar if not the same result. So thank you for your contribution. It looks like it was extensive.

    I feel that it is bad that you are forking your code to different project. I understand your reasons for it, but I feel that pidgin community would benefit more with your continued involvement in MSN protocol development. I really hope you can polish the grudge you have with pidgin developers.

    Thank you again and keep up the good work.

  22. “… and we can’t wait to have Telepathy support to get away from Pidgin :)”

    That’s a dream… I use Pidgin because I need a multiprotocol IM, otherwise I’d been using Emesene. And Empathy is still very poor…

    Pidgin is really a pain in the @$$

    Thanx for you good work!

  23. Just my opinion: The speed the bugs are fixed is a better way to measure software quality than the number of bugs. I’ve been suffering with the same Pidgin bugs for more than 2 years now…

  24. @Vinny That’s true, unfortunately Pidgin has perhaps the worst bug-tracking techniques I’ve seen; there’s no way to know which bugs have been fixed, and which have been automatically closed.

    So there’s no way to measure the bug-fixing rate.

  25. What a thoroughly entertaining flame war. I was actually looking for something else entirely but thank you for distracting me🙂

  26. Pingback: msn-pecan now in Maemo’s extras-testing « Felipe Contreras

  27. Pingback: msn-pecan now in Maemo’s extras-testing | Maemo Nokia N900

  28. Pingback: msn-pecan 0.1 released; the best option for Pidgin/libpurple « Felipe Contreras

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s