Of Microsoft, and… Open Source??

2 Surprise announcements in as many days. First off, Microsoft contributes code to the Linux kernel. Secondly, they contribute code to Moodle (which I happen to develop at work). All under the GPL. What is this, bizarro world?

Now these raise some interesting discussion points. Microsoft has long harped on about how Linux contains code that violates its patents, without ever suggesting which code this might refer to. The response from the open source community was pretty much “put up or shut up,” but nonetheless enough FUD was generated to prompt Novell into striking a no-sue deal with MS.
However, Microsoft’s now a contributor to the software they previously claimed is in violation of their intellectual property. This could be enough to extinguish the FUD fires they’ve been building. If Microsoft are so anti-Linux, why would they happily be a part of the project? A surprising change of heart, but by no means an unwelcome one.

Secondly, it’ll be interesting to see how much Microsoft embraces the open source development model. Will they just throw the code out and say “Look! GPL! Aren’t we great!” while only distributing code created in-house, or are they going to be encouraging community development? Are they going to submit the Moodle plugin for inclusion in CVS? Are they going to put it in the Modules and Plugins database?
One worrying sign at the moment is that the plugin is only supported on Moodle 1.9, yet it requires PHP 5. Moodle 1.9 doesn’t have PHP 5 as a requirement, and Microsoft’s documentation makes no mention of this.
I’m interested, but I’m not getting too excited, yet.

Twitter: The verdict

So back in February I wrote a post about Twitter, and why I was joining. That was 5 months ago now, so here’s the conclusions I’ve drawn.

Trends

When I started, you were able to search keywords and view trending topics (the words/phrases that featured the most) on a subdomain, search.twitter.com. This has since been moved to a sidebar on the main site. Terrible idea. This has generated to end of spam and pointless bandwagoning. Not only do you get people posting relentlessly to get their tag on the trending topics list, but you actually get people who write a post consisting entirely of trending phrases then saying “Follow me plz!!”. If I follow someone, it’s because I find them amusing, interesting or informative, not coz they post bollocks. Go away.

You also get trends that are the same post retweeted a thousand times, which makes being able to search for a trending topic useless. The intention is that you get DIFFERENT posts about the same topic, not so that you get the same post you’ve just read by someone else again and again. Lookout for followers of mashable on this one.

Followers/Followees

The whole point of twitter is that everything you post is publicly viewable, much like a blog. Anyone can read and respond to your tweets, and you can see anyones. This differs from Facebook who, since I joined Twitter, have tried to make themselves more like Twitter each day, where only your approved friends can see your posts. I think this is great. The only problem is that 50% of the people who have started following me are “hot girls wanting hot sex in my area,” or someone who seems to be following everyone on Twitter in the hope that some will follow them back.

Now, correct me if I’m wrong here, please, but why would you want anyone to follow you unless they find you interesting, and do so of their own accord? If you want your voice to be heard, then surely you only want it heard by those to whom it will matter? Anyone like this gets an instant block from me. I don’t care for follower numbers, I’d rather have 10 who want to hear what I have to say that 100 that don’t.

The people I follow, on the other hand, are brilliant. In particular, I’d recommend jamescridland, Andrew_Taylor and stephenfry. I also started following a few news-type sites, but it turned out that (with the notable exception of a few like BBCClick), they just posted links to stories syndicated via RSS. If that’s all you’re posting, I’ll just subscribe to your RSS feed, and not have your links clutter my timeline, thanks.

Direct Message/@ replies

This is actually a pretty big relief. When I saw these features I thought they’d be prime spam targets, with people posting as many usernames as they could with a link to their website and it landing in your @replies box, but no. The posts I get there are generally a good piece of conversation, a well thought-out reply to what I’ve posted, or a retweet of something I’ve posted (very flattering, btw). Top marks.

API/Clients

One of Twitter’s strengths is it’s API allowing you to tweet easily from anywhere (within reason). However, I find myself in the small part of the Twitter community that’s somewhat hard done by. I have an old phone which can just about run a basic J2ME Twitter client, and a linux desktop. What I’d really like is a desktop widget that gets my timeline, and lets me post tweets. Hold on, what’s this? A KDE Plama widget that does just that!
Then I see a post from another user that’s come from Spaz, so I check it out. It looks amazing! All the stuff in my Plasma widget, plus searching, retweeting, the lot! I then find Tweetdeck and whole host of awesome-looking Twitter apps. How can I run them on Linux? Do I need Wine? No! They run on AIR, which should work on Linux with no problem. I install spaz, play with my window manager to get it behaving like a desktop widget, and hey presto…. AIR stops working. No errors, it just won’t start. Great.

Never mind, someone will have written a sexy, full-featured Twitter client for Linux that doesn’t need AIR, right? Err… no. It seems that AIR is the de facto platform for Twitter clients. Hohum.
The result of this is that I tend just to use the website. Not that this is a problem, it’s just not as cool as it should be.

Verdict

Twitter is excellent. It’s users can be idiots. I only follow the ones that aren’t. We need a non-AIR linux client that’s as cool as Spaz.

Of Moodle and First Class Honours

Well, time for a nice hefty blog post I think, as I haven’t done one in a while.
I got my final results from university this week. I got a first. Everyone I know has been congratulating me, which is quite overwhelming. I’m happy, but I don’t seem to be as happy for myself as everyone else is for me! It’s probably becuase I was worried that I wouldn’t get one, that when I did it was more a cause for relief then celebration.
Nonetheless, it’s the weekend now, so party time tonight. Hells Yeah.

I’ve also moved into a new flat with my lovely girlfriend, and started a new job. I’m working at Taunton’s College in Southampton as their in-house web developer. This involves working primarily with Moodle, the open-source Course Management System/Virtual Learning Environment. This is awesome, for 2 reasons. 1 – I get paid to code PHP, which is what I do for fun anyway. 2 – I get paid to contribute to an open source project, which is a position I’ve always wanted to be in. And it pays well enough for my nice new flat. And I get a local government pension. And I get to help people teach. Winner. Dream first job? I think so.

Moodle in itself is a pretty cool system, although it’s suffered a bit from it’s evolutionary development. The main problems are that when new and better solutions get introduced, the old ones remain. This is mainly a backwards-compatibility thing which means a lot of it is being culled for version 2 (the upcoming major release), but it means at the moment there are 3 different ways of keeping track of which javacscript files a page needs, a really flexible permission system which relies on an older “roles” system for assigning the permissions, and lang files for older components all over the place.

That said, the current “best practice” provides some really nifty plug-in APIs,and the database abstraction layer makes interacting with the database a breeze. Hopefully once version 2 hits the mirrors, the cruft will have been cut back, and the new plug-in points will make it an even more versatile platform than it already is (come on, gradebook plugins!).

The Moodle community’s also brilliant, as are my Taunton’s colleagues. I look forward to working with them all to make Moodle better!