Wikipedia Needs Rubyists to Flesh Out Mobile Vision
You might know Hampton Catlin as the Rubyist who invented the Haml markup system (as used in many Ruby web apps), Sass or make_resourceful. What you might not know, however, is that Hampton went on to develop a successful Wikipedia iPhone app (iPedia née iWik - listen to this podcast about its development) and was then hired by Wikipedia to lead the development of the mobile Wikipedia site (powered by Ruby!)
Hampton has been taking Ruby into Wikipedia in a big way and he needs the help of other Rubyists to keep the momentum going. I caught up with Hampton to find out what he's doing at Wikipedia, what Wikipedia needs, and how Rubyists can get involved:
Ruby Inside: What are you responsible for at Wikipedia?
Hampton Catlin: My title there is "Mobile Development Lead" and basically I'm responsible for making sure that people with mobile devices have access to Wikimedia projects. Initially we are focusing on Wikipedia, but since all of the Wikimedia projects run on basically the same code base, we are going to be covering most of the projects.
My main responsibility is to grow open source communities around the different mobile projects. Wikipedia is the fourth most popular site in the world and most of the programming is done via open source channels. Initially, I'm doing a lot of the foundational programming and will be responsible for maintaining code quality, but into the future, we are really looking for people to help and take charge of different components.
How is Ruby involved in the work being done at Wikipedia?
Ruby is being used via Merb (Rails 3?) and a whole series of Ruby libraries that are focused on the back end formatting services. Actually, we just launched them last week, and they are still a little rough, but the foundations are solid. Basically, the Ruby app is responsible for providing custom-formatted article pages to different mobile apps. The service is currently live at http://en.m.wikipedia.org
How would you (and Wikipedia) like Rubyists to get involved?
Go grab the code at http://github.com/hcatlin/wikimedia-mobile/tree/master then run rake todo:list. Viola! Pretty soon we are going to have a full bug tracker, but at the moment, its a pretty early stage in the project and bugzilla is a bit overkill.
I think this is a huge opportunity for people. How often do you get to do work that is seen by so many people and potentially so many more? It's a very simple project to dive into. I've put a LOT of work into making sure that it is absolutely as simple and logical as possible. I've also put a lot of work into documentation to ensure that people don't get confused when diving in. And if you are just learning, its actually a good project to look at.
Beyond general help with the project, I'm also looking for people to help work on adding new mobile formats. Initially we are focusing on "XHTML" and "WebKit" as the two major supported platforms. That is the same thing as "Anything Modern" and "iPhone/Android". However, if you have a Blackberry and you want to see stuff on Wikipedia that is totally perfect for your phone, then its pretty easy to do! Just add a device to our list, figure out its user agent, and then go create the views! Its stupid simple. Also, you can brag at dinner parties "Oh, you have a Blackberry... look at what I did this weekend!" ;)
The final thing we need help with is press. We need to get the word out to regular users! If you know people that run a mobile conference or work in the press, please try and help us out. One of the major failures of the first-generation of Wikipedia Mobile was that no one knew about it. Its part of my job to make sure they know about this.
What new technologies or services do you anticipate being created for or by Wikipedia in the next year? (that are relevant to Rubyists)
Beyond the mobile services, not too much! We just need to keep growing them with press (tell your friends!), bug reporting, and new formats. Oh, and if you want to learn iPhone development, grab our edge branch of the iPhone app at http://github.com/hcatlin/wikipedia-iphone/tree/master
At the time of writing this, its a little rough but its what I'm doing this week! We also need people who know Java development to help with a native Android app. And, for Ruby stuff... I'm looking to have an entire Mediawiki Ruby library done. But, it's not the kind of thing I've very good at, so at the moment its taken a back seat. If anyone wants to create one, shoot me an email (at hcatlin -at- wikimedia.org). We can make it "official".
Update: You can also discuss this on IRC on irc.freenode.net on channel #wikimedia-mobile
Support from: Brightbox - Europe's leading provider of Ruby on Rails hosting. Now with Phusion Passenger support, each Brightbox server comes with access to a managed MySQL cluster and redundant SAN storage. Brightbox also provides managed services for large scale applications and dedicated clusters. — Special Offer: 50% off all new Brightboxes! For a limited period, get a Brightbox from £19.50 a month...
January 13, 2009 at 4:43 pm
First thing first: Hampton is, along with _why, one of the few inherently cool Ruby dev.
But, since getting this cool gig at Wikipedia, I'm seeing to much Catlin in my feeds — knowing the Wikimedia Foundation well, I'm sure there's much PR work going on here.
Wikipedia's making a mobile app? Open source one? O RLY? Should I be creaming my pants because of this? With all the awesomeness of the Wikipedia content and people who wrote it (and yes, back in the day when it was still underground, I have been contributing quite heavily to it), it is backward technically. Much more backward than a foundation that routinely fills multi-million dollar fundraising drives should be.
I'm severely underwhelmed by the offering all the hype is for and just slightly disappointed Hampton got himself into it. Well, proceed, dudes.
January 13, 2009 at 6:38 pm
@Apostlion: I have appeared in two blogs and that was by my own PR efforts to get help on the project.
Much thanks to Peter for this, because now we have help.
I'm not really sure what your critique is?
January 13, 2009 at 8:00 pm
@Hampton: I'm guessing his beef is that he doesn't think this is newsworthy, perhaps because it's not about new Ruby techniques/'technology' that he can use in projects.
@Apostlion: did I paraphrase you fairly? I'm not trying to start (or feed) a fight, just trying to clarify.
I beg to differ with that opinion, however, because (if I could squeeze in the time!) I'd love to get involved. But that's just me. I have no idea how the rest of the rubisphere sees this.
January 13, 2009 at 8:40 pm
My guess is that the beef is about Wikipedia being reasonably non-progressive technology wise. Hampton's project is an exception, but generally they do seem a little "backward technically" (as Apostlion says) especially given the money they have coming in.
That said, if newer, more progressive systems can be built that pull data from the cruftier old parts, that sounds good to me, and that appears to be what Hampton is involved in doing.
January 14, 2009 at 5:22 pm
I think I gotta rephrase me some.
@Brandon—no, it's not about this. I'm having quite a tight attention span, so I can freely ingest any kind of information off my feeds/Reddits, so I do not have anything against this material and -the other one- (Hampton sorry, but I do not really remember where the other one was).
@Peter, yes, you are right as always. Thank you Hampton for replying, and since it's really your own partisan effort I'm completely ok with that, but at first that seemed to me like a total win of hype over substance — concerning that everything cool technically about Wikipedia in last years has been done by volunteers, the first really crisp project actually -sponsored- by Wikipedia seems to have a fair amount of hype.
Seemed to be quite a superfluous Wikimedia guys PR job. Turns out it's not, I bring my apologies for crying wolf.
January 14, 2009 at 7:22 pm
I do not get on too well with PR pitches, so you don't have to worry too much about that :) But if this were a PR pitch, it'd have been the slowest one ever, Hampton took a month to respond to my questions, lol ;-)
There is always a risk, of course, of appearing corporate or appearing PR-esque and this is a reminder of that. I certainly don't like to look at that way and want to keep things as authentic as possible, so appreciate your criticisms nonetheless as they help keep things in check :)
January 16, 2009 at 1:24 am
Hampton (and Peter),
Hmmm... why not write the true native mobile version of Wikipedia (for iPhone, BlackBerry, Windows Mobile, Symbian, Android) with Rhodes (http://github.com/rhomobile/rhodes/tree/master)? It's open source and would seem to be a great way to leverage all your Ruby background. We'd even consider adding HAML support for a project of this stature.
- Adam
January 16, 2009 at 1:41 am
s/viola/voila
January 17, 2009 at 10:50 am
@Adam - such a project without pervasive testing? Sorry, what (aka “lolwut”)?