Sunday, February 28, 2010

The past, the present and the future of the social tools

Social tools is a term which usually refers to MediaWiki's SocialProfile extension. SocialProfile consists of 10 "modules" (which actually used to be separate extensions at some point, ages ago), of which 9 are enabled by default. The only module not enabled by default is UserWelcome, which provides the <welcomeUser /> tag. Here's a quick overview of SocialProfile's modules:

  • SystemGifts — award functionality. Awards are automatically given out by the software once the user has reached the specified threshold (i.e. 5 edits, for example).

  • UserActivity — social activity feed on user profile pages.

  • UserBoard — Facebook-like message boards on user profile pages.

  • UserProfile — turns plain old User: pages into cool, social profiles!

  • UserRelationship — friends and foes, which will be shown in your social profile.

  • UserStats — statistics related to social actions (i.e. friending, sending a board message, etc.). UserStats also contains the point system (User Levels)

  • UserSystemMessages — required by UserActivity, stores when a user advanced to the next level

  • UserWelcome — a parser hook extension which provides <welcomeUser /> tag, which can be used to display user-specific info to the current user (when used in combination with WikiTextLoggedInOut extension

  • YUI — a very simple extension which loads the Yahoo! User Interface JavaScript library (version 2.7.0) on every page load, along with some custom functions.

In addition to SocialProfile and its modules, some other social tools are also available in the official MediaWiki SVN repository, namely:

  • RandomUsersWithAvatars — adds <randomuserswithavatars> tag to show the avatars of randomly chosen wiki users who have set an avatar for themselves.

  • WikiTextLoggedInOut — adds <loggedin> and <loggedout> parser tags to show different text to anonymous and logged-in users. Most commonly this is used to display random avatars (see RandomUsersWithAvatars extension) to anonymous users and UserWelcome info to registered users.

The past of social tools

Social tools were developed by the founders of ArmchairGM, Aaron Wright, David Pean, Dan Lewis and Rob Lefkowitz. Then Wikia bought ArmchairGM and hired its developers. Soon enough the magazine-style wikis were launched. Magazine wikis were wikis with social tools and each had its own, unique skin. Gaming.Wikia's was the best, no doubt — it was much like ArmchairGM's current default skin, only darker.
In late 2007, it seems that Wikia started pulling the plug on the magazine wikis. By 2008 there were no magazine wikis left, all of them had been converted into ordinary, plain Wikia wikis.

However, the social tools saw a second coming: Halopedia, a wiki about the popular Halo game series, was converted into a social wiki — complete with picture games, polls, quizzes and everything! I remember when that happened; I was helping the ArmchairGM developers in debugging the 'new' Halopedia.

In February 2008, SocialProfile was released, after I had requested it. At this point, it was lacking some essential features, such as the point system and the special page to remove other users' avatars (Special:RemoveAvatar). was there. Completely open-source. You have to remember that back in 2008, Wikia wasn't an open-source project.

After this, a couple other wikis also got the Halo treatment: GamerGear, a wiki about PC and console gaming gear, Grand Theft Wiki, a wiki about the Grand Theft Auto game series and FFXIclopedia, a wiki about the Final Fantasy XI massively multiplayer online role-playing game (MMORPG).

The present of social tools

The ArmchairGM developers have either left Wikia voluntarily or been laid off, which, according to Wikia, means that there's nobody who knows the code.

Halopedia, GamerGear, Grand Theft Wiki and FFXIclopedia are still running social tools. Halopedia held two important votes in this January. As a result, polls, quizzes, picture games and social userboxes were turned off for Halopedia. Poll namespace extension is still enabled for Grand Theft Wiki, but it doesn't work — try clicking on one of the options of some poll and you'll see what I mean.

The future of social tools

I'm still the (un)official lead developer of SocialProfile extension, and I have no plans whatsoever to quit. Just yesterday Bryan, a fellow MediaWiki developer, fixed bug #22598 — now users using MediaWiki 1.16 or latest trunk can again upload their avatars.

I'm hoping to have more social features cleaned up by the end of the year. Namely, Comments, FanBoxes (social userboxes), LinkFilter, PictureGame, PollNY and QuizGame.

It will be a time-consuming task, I'm sure of that. But then again, I also believe in open source. I know that the social tools are a succeess, and so do the users. After all, what else explains that there are 4 archives of questions from users regarding this extension? :-)

Saturday, February 13, 2010

Idealism is dead

Back in January, I had an idea. A good one, I thought. Wikia operates ArmchairGM, a sports wiki where the social tools originated. My idea was to improve some of the unreleased tools, such as sports network tool. To do that, I needed to access the source code. Here's the catch: these tools are unreleased. Thus they cannot be found on Wikia's SVN.

What to do? On January 20, I emailed Jimmy Wales, the founder of Wikipedia and co-founder of Wikia, about this issue. My email was quickly forwarded to Gil Penchina, the CEO of Wikia, Inc. Long story short, I was asked to come to Wikia's office, either Poland or United States one, and sign a non-disclosure agreement (NDA) in order to gain access to the ArmchairGM source code and be allowed to clean it up. Wikia even offered to pay for the expenses and meals.
I wouldn't have minded signing a NDA, but flying to another country is just not possible for me, at least not anytime soon. I thought I had found a solution: I have a friend who lives in Poland and also is a programmer, so I thought that he could go to Wikia's office. I informed Wikia about this idea, and their reply to this was, "Sure". A few days later they inform us that "I can't let some "guy off the street" we've never met or built a relationship with get that sort of access to our internal systems".

Now, here's the thing: my friend's not just some guy off the street, but a smart programmer who's more experienced in programming than I'll probably ever be. He has a Master's degree and he's trusted in many different places, both offline and online. The major difference between him and me is that I once had global administrator rights on Wikia and he didn't. Big whoppin' deal.

My motive in this whole deal was to help out the greater community -- other users of MediaWiki and fellow MediaWiki developers. So that they'd have the largest possible pool of code to choose from. ArmchairGM's social tools are truly unique, as is its skin. I believed that I could change the world -- just a little, but for the better. Apparently that was a stupid idea. Should I just scrap my skin system rewrite project then, too?

Because Wikia thinks that ArmchairGM is a failed project, they aren't willing to clean up the code themselves. This means that a great skin and many great extensions have been lost forever...unless a developer in PoznaƄ or San Francisco area is willing to negotiate with Wikia. Anyone up for a challenge?

Sunday, February 7, 2010


Bugs. Bugs are annoying. And no, I'm not talking about the real life bugs that bug you when you're trying to write a blog about Wikia bugs.
What is the proper procedure when you find a bug on Wikia? Where do you report them? Wikia used to have a Bugzilla for tracking bugs... but a very smart person must have decided it wasn't needed back in 2007 or so. Currently only Wikia staff are able to use Wikia's bug tracking system, when in the past everyone was able to use the Bugzilla. Since July 2008, Wikia's open company test page has stated that Wikia doesn't have open bugtracking yet. Now, we have two options left:

One of these options is Special:Contact, a feature I dislike using because it takes days before you finally get a reply and the reply you get usually says that they're looking into the problem and then you never hear from them again.

The other option we have is IRC, #Wikia on freenode to be precise. And this is where we reported a bug that was caused by the recent move of Wikia Central to A number of users have userpage templates to for use all around Wikia, these templates are located on Central (now moved to community.wikia). These templates stopped working after the move. Once I found out they were no longer working, I went to the Wikia IRC channel and asked if anyone knew what the problem was. The first person to reply referred me to a Wikia forum, now, there is nothing wrong with that. But, on the forum it says my bug had been reported 4 days before I reported it, and the forum also makes it very clear that Wikia does not care about fixing this bug. No, they are to busy moving Central around and creating bugs to actually consider fixing them. Now, I know it's more fun to play around while creating bugs and that fixing bugs is not really a fun thing to do, but, the normal users like me would surely appreciate it if bugs like that would be fixed as fast as possible.

And this is when the conversation in #Wikia really picked up, more and more people started to have their say (nothing wrong with that, right?). Well, if you think like that you have clearly not been around #Wikia lately. We were kindly requested to take our conversation to #Wikia-social, and no, this request did not come from Wikia staff because they're not around during the weekend. It was another user who suggested we take BUG REPORTS to a SOCIAL CHANNEL because the main channel is not for "complaining" as he called it.

The discussion then evolved into a heated argument about the fact that Wikia staff doesn't seems to care about bug reports. A shame really, cause all I was looking to find was the answer to a set of simple questions:

1) There is a bug, has it been reported yet?
2) If it has been reported, what is being done to fix it? If it hasn't been reported yet, how soon can someone look at it?

Although I did get an answer to both of my questions (1: yes 2: we don't care, so go bug someone else), I find the way I got them ridiculous. And what's even worse, another question has come to my mind: How the hell are we supposed to report bugs on Wikia?

By the time someone replies to an email sent via Special:Contact the bug has probably already gotten bored and fixed itself. If you go to the IRC channel you'll be met with hostility and accused of "complaining". In the end we'll just have to realize that there is no way to report a bug on Wikia, and even if there is, Wikia does not care about bugs and they care even less about users. We will just have to wait for bugs to learn how to fix themselves.