This isn't a rant, but more of a warning about ignoring your users and letting other users abuse them when you're trying to build trust and community. WARNING: Not safe for work if you work at ebay or similarily draconian companies.
As some of you may know, I recently switched the Mongrel2 project over to github. Everything's been going alright, except, there's this guy who keeps adding me as a collaborator to his project called "dongml". I didn't really ask to be on the project, but he thinks it's absolutely hilarious to have me on the dongml project.
Now, I think I need to explain a little bit of back story. First, this guy Nick Martini has trolled me in the past on twitter. Back then he went by elotente, which is also potente, and fagatini. Back then he would just try to troll me as elotente, call me homophobic slurs, and other things. So, I hunted him down, found out the three accounts were connected, found his facebook, found his home address, and then pointed a google map at his home address with the tweet, "I can see your house from here."
You see, until that point Nick was hiding behind an anonymous identity trying to troll me, and once he was outed he didn't bother me much after that. That's how anonymous trolls work. I don't mind trolls, but I firmly believe that anonymous trolls are incredibly abusive as they deprive their victims of any valid recourse to their abuses such as the law or direct confrontation. Whenever I find an anonymous troll I try to expose them so that they are forced to act on equal ground with their victims.
The other piece of information you need to understand is that there's a sort of running hidden gag among the Ruby Iluminati (aka Rubynati) within San Francisco. Employees from Engine Yard, PowerSet, and ... github love this joke where they create code that generates ASCII art penis pictures and then force other people onto their project without permission. Here's another one called dicks by Martin Emde.
Remember how Martin was the guy who outright stole my book then threw a fit when I (fairly politely) asked him to take it down? Again, another Ruby guy, who for some odd homophobic reason has a fascination with generating ASCII dicks.
Now, Martin's project at least has working code and a working web service, so I gotta give him respect for an actual geek worthy gag. That's my kind of joke, although, yeah no idea what the fascination is with dicks but alright. To each their own.
Nick's project though is just a README file. No code, no style, poorly written, oddly schizophrenic, just not even really funny. Yet, here's a bunch of guys from the valley who love Ruby and hate me thinking it's a riot.
Basically, the highest form of comedy in the Ruby world is apparently a README specifying how to generate ASCII glyphs such that they look vaguely like a male penis and then running around adding people like me to the project. It's like a Judd Apatow movie except instead of weirdly homoerotic and slightly funny, it's just homophobic and weirdly not funny.
The question then comes up: How is it that someone can just add you to a project on github without your permission? Well, github will just let you unilaterally add someone else. You can just pick a random person and give them commit rights to it. It's under the assumption that you wouldn't do something as stupid as adding someone who hates you to your own project. In this case, it's a project the person doesn't care about, so adding them is just intended as an insult.
Yet, here's Nick Martini, adding me, and apparently getting a few others in on the joke based on how quickly they responded to it.
Hmmmmmm, wait I have commit rights? Oh, I can do something with that.
I thought about trolling through github's poorly organized preferences screens to find where I would remove this guy's project, but then I realized that he would just do it again. That's the joke right? I can't prevent him from adding me, so he can just be in my face whenever he wants. In fact, he just did it again today.
I also realized that this was a running gag among the Ruby guys working at github, Engine Yard, and formerly PowerSet, so obviously github isn't going to fix the problem. They probably absolutely love this feature since it enables their favorite way to passive aggressively treat people they don't like poorly without actually looking like they don't really care about community.
Which left me with one choice: Rise up and tear this dude a new asshole so he doesn't do it to me again.
First, I wrote a little python script that continually overwrote his README and did a commit. Then I enhanced the script so it did a force merge or two against fictitious branches. And the end result? I crashed github.. I created 201 branches, caused the graph to crash, and uploaded a 160M file full of random bytes. Someone at github had to get up and fix the bug on a long weekend, which apparently pissed off someone running the HackerNewsTips:

In addition to this, apparently Nick Martini had a github hook turned on that put all of my commit messages into his twitter stream:

Which might have magically screwed up his lawnmower, but more importantly, got him listening when I decided to show everyone that he's the same guy from years ago:

And remember, I'm not calling him fagatini, his self-loathing is so strong that he insists on calling himself a "fag".
Overall, a fairly successful campaign, after which I finally found the place to reject someone adding me thanks to a github employee helping me and then I hung out for the rest of the weekend.
It took Nick Martini two days to fix his repo. Despite what Martin says on his blog it actually was very little effort from me and most likely considerable more for Nick. You would think that would be the end of it. Nick would leave me alone.
Then today, he added me to the dongml project again.

Since there's no way for me to remove myself, and since github won't create a way for me to block him, or report his project for abuse, I'm mostly left with leaving it there.
Of course, I have another option, which is to continually destroy his project until github bans me from their servers. But now I have my code on there...or do I?
This is a minor thing, I agree, but it hints at reasons I really do not trust github. It's an annoyance, but it's an annoyance that shows that github actually doesn't really care about the people using their service. They purposefully allow this glaringly obvious mechanism for insulting and annoying their members and are actually involved in the joke. Until I broke their server they were all laughing at my "testing", then they were pissed when they had to fix the bug I found. If you don't believe me, look at the HackerNewsTips twitter account, which I know is astroturfed by a github employee.
What people don't get is that I'm only using git because everyone working on Mongrel2 likes it. I could give a damn, and it took me 20 whole minutes to get off fossil and onto github. Twenty minutes. Getting off github and onto bitbucket would another 20-30 minutes. Getting onto launchpad, another 30 minutes. Getting onto my own git server would be even fewer minutes.
It's sad that the poor choices of some github employee is going to make me leave, but I gotta say that if I have to deal with this then why bother? I could go over to bitbucket and use a better tool, with unlimited free private code hosting. Bitbucket is also run by professionals who are actually nice people, unlike the folks at github. Mercurial has some really annoying features, but it's at least written in one language and a language I like, Python.
Now, you're thinking, "Good riddance jerk. It was free anyway." You're right, it's free and I can just leave rather than bring the issue up. But, if I have to leave because of this do you think I'm ever going to recommend github to anyone? Why, just the other day I thought we could use Github:FI at work. Not anymore. Why would I buy a product from a company that allows someone to unilaterally shove dicks in my face? Seriously, there's no way in hell I'm going to recommend github after that.
For now I won't do anything. I'll let github deal with it and hopefully they can prevent this guy from harassing me further. If his project isn't off my project list and shut down by the end of the week though I'm going to move off github. I've already been burned by one RCS that screwed up my code, so there's no way I'm going to get involved with people I can't trust again.