Robotic Tendencies
The personal blog of Robert McQueen

June 29, 2006

Telepathy

Just a quick one, people want food: my Telepathy talk at GUADEC earlier this week was a success by most accounts, and followed up by after-hours talks today with Kai Vehmanen’s on Telepathy SIP, and Yannick Pellet on the IM/VOIP project on the 770. My slides are available for people who missed my talk, and hopefully soon Fluendo will grace us with videos feeds too.

For people still around at the conference tomorrow, I’ve arranged a BOF with Martyn Russell for discussing/hacking Telepathy and Gossip stuff. It’s in the museum library room at 11am tomorrow (Friday). Hope to see you there!

posted by ramcq @ 6:01 pm
Comments (0) .:. Trackback .:. Permalink

June 25, 2006

GUADEC and Telepathy

I made it to Vilanova on Friday for GUADEC, managed to get settled in to our chalet (I’m glad we opted for one with air conditioning!). After we got them to fix the hot water, I now think it’s pretty decent accomodation for the price, complete with wifi, swimming pool and a well-stocked shop. The only downside I can see is the distance from town. On Friday night we missed the last bus and walked in, which took over an hour and I developed a bad headache by the time we reached the town (we didn’t find the right beach, but stopped in a bar instead). My enjoyment of the walk wasn’t helped by the small children who were out on the street launching fireworks, mortars and other incendiary devices at or near us most of the way. πŸ™‚

Yesterday we hired bicycles to get to the town center which was certainly more fun, but there’s quite a hill on the way back. Also, bus in and taxi back is pretty much cheaper than the cost of hiring bikes here anyway, so I’m not sure I can recommend it as a long-term strategy. We might do it again for the novelty, and it has the benefit of not needing to wait around for a taxi to get back.

Even before I made it to the conference venue yesterday, I’ve already met loads of cool people who hack on all sorts of cool software which I use every day, and I’ve recognised lots more people who I’ve not managed to speak to yet. I’ve also realised that we need to do a lot more work to raise the profile of the Telepathy project which I’ve been working on for almost a year now (eek!). It’s a really cool way to get IM and VoIP stuff properly integrated into the GNOME desktop, and everyone should go and check out the website, play with our releases, chat with me and come to my talk on Tuesday. Oh, and if anyone wants a Telepathy or Collabora t-shirt, grab one off me or daf. πŸ™‚

posted by ramcq @ 10:10 am
Comments (0) .:. Trackback .:. Permalink

June 2, 2006

Meta-blogging

In the office just now, daf complained at me that he finds it very annoying when people blog about how they havn’t blogged recently. I apologise, although in my defence, the post was mainly about C (I’ve subsequently learnt that -Wextra will warn me about such errors in future, thanks :D). The question is, is this post also annoying because of this meta-blogging property, or can it be excused as meta-meta-blogging?

Although, whilst I am talking about my blog, I found that Ross Burton took a reasonable picture of me at FOSDEM (I’m the one on the left, versus Iain Holmes on the right :D), which I’ve cribbed for my photo on the GUADEC speakers list. I was wondering if in exchange for beer (or cake), anyone would like to make me a hackergotchi for my various Planet appearances?

I’ve decided with mjg59 that when referring to Web 2.0, the correct pronounciation of RSS is ‘arse‘ (linked to the definition for people to might spell that word wrongly ;), leading to witty concepts such as ‘arse feeds’, ‘arse readers’, etc. It amused us in the pub anyway.

posted by ramcq @ 6:27 pm
Comments (8) .:. Trackback .:. Permalink

June 1, 2006

if (n00b); warning

I wasted a non-trivial amount of time yesterday debugging code in which I’d accidentally written:

if (...);
  {
    ...
  }

Is there any situation where if (foo); can achieve something which just foo; couldn’t? Could the compiler not warn about a conditional that contained no code?

Aggravating lapses in competence aside, I’ve realised I’ve not blogged for months, so over the next few days I’m going to try and write a little about what I’ve been working on recently.

posted by ramcq @ 12:05 pm
Comments (15) .:. Trackback .:. Permalink

April 19, 2006

Summer of Telepathy

I put a few ideas on the wiki page for some Summer of Code projects based on getting the Telepathy Framework used on the GNOME desktop. We’ve hacked out a spec for doing most IM & VOIP stuff via D-Bus so that you can add whatever functionality you want into any program like Nautilus, Evolution, Gossip, etc, and share the use of your server connections from wherever in the desktop makes the most sense. We’ve been working hard on our flagship XMPP backend implementation, telepathy-gabble, and Raphaël Slinckx & Adam Lofts have been working on some UI implementations in Python and C#, but we need to get some more people looking at different backends and integrating frontend functionality into the desktop. Get those SoC applications going if you think this sounds cool… πŸ™‚

As well as my ideas, I should also mention I’d be happy to mentor for other deserving ideas such as eikke’s CDIS plans, and I’ve also got some ideas about how cross-program (and cross desktop) music databases should be achieved. I’m particularly keen on helping people with D-Bus related projects because I know that not enough people understand how all this stuff works, so I think it’s worth spending a bit of my time to spread the love (and pain) which I’ve learnt working on Telepathy.

posted by ramcq @ 12:00 pm
Comments (5) .:. Trackback .:. Permalink

March 8, 2006

Now hiring

My company, Collabora, is seeking one or two experienced free software developers to hire or subcontract. We are working on VOIP and Instant Messaging software using Glib, D-Bus and GStreamer, and our focus is creating and working on completely open source projects.

As well as contributing frequently to D-Bus and GStreamer, our main projects at the moment are the Farsight library for negotiating and setting up GStreamer pipelines for peer-to-peer voice and video streams over a variety of protocols, and the Telepathy framework for allowing IM/VOIP server connections to be implemented as D-Bus services, so that the connections can be shared and integrated into your desktop, exposing the different functions of the servers in the appropriate parts of the UI.

If this sounds up your street, drop us a line with a CV and details about relevant experience or free software projects you have contributed to.

posted by ramcq @ 12:12 pm
Comments (3) .:. Trackback .:. Permalink

November 21, 2005

When exactly is week 1 of 2006?

According to Jeff, I’ve become a smelly Nokia contractor (the reason he stayed with Luis instead of at Mako’s place in Boston, although I’m sure he was referring to Rob Taylor causing the smell). Part of this entails exchanging project schedules with various managers, where time is often talked about in terms of numbered weeks of the year, like: Foo task will be completed by week 42 of 2005. We ran into some problems with varying definitions of these numbers when exchanging schedules with people running on different platforms. Then we realised that even the software we’re using seems to have different ideas about what’s going on too…

  • Outlook and Evolution seem to agree, and define the week as starting on Monday, and the first day of the year is always week 1, even if this results in a truncated week. Hence, week 1 of 2006 starts and ends on Sunday 1st January, and then week 2 begins on Monday 2nd, etc. It’s my belief that this is the correct behaviour as defined by some ISO standard somewhere which governs week numbers.
  • GtkCalendar gets the week number correct, in that the first day of the year is always in week 1, but varies its definition of the first day of the week depending on your locale. This is presumably so that the display of the weeks is correct, but using it to number the weeks results in bogus week numbers. For me in LOCALE=en_GB it claims that week 1 of 2006 starts on Sunday 1st January, and ends on Saturday 7th January, making my week numbers one lower than the rest of the world.
  • Planner uses GtkCalendar for inputting dates, so gets it wrong there as described, but seems to get it wrong in its Gantt chart view in a different way. It has the week starting on Monday, but claims that January 1st 2006 is the last day of week 52 of 2005. This results in week numbers that, match those GtkCalendar give me on weekdays, but differ over weekends, and are still totally bogus when I try and talk about project plans with my managers.

The result is a whole world of pain, and at best causes extreme confusion when we provide documents referring to both dates and week numbers which are inconsistent with each other in their minds, and at worst makes our managers think we’ll have things done a week sooner than we do. I’m not using Evolution at the moment for calendaring stuff, so I can manage if I remember to add one to all my 2006 week numbers when interacting with managers based on GtkCalendar and Planner, but this all seems to be horribly broken. I really don’t want to have to do this for the whole year.

posted by ramcq @ 5:06 pm
Comments (10) .:. Trackback .:. Permalink

November 11, 2005

On contributing to Gaim…

Whilst I can’t claim to have done anywhere near as much for Gaim as Christian Hammond has, I did contribute to Gaim some time ago, and for my efforts I managed at least to attain the status of “Crazy Patch Writer”. However, I gave up trying to contribute to Gaim about three years ago.

After starting out as the Debian package maintainer, and one of the founders of #gaim (yes, I know, I’m sorry, it wasn’t always like that), I spent about two years submitting patches which were ignored by almost all of the developers, being forced to beg people with access (including the support/bug triaging guy, who doesn’t really code C) to review and commit them. At the time, nobody was being given CVS access because of a recalcitrant and unresponsive former developer holding the reigns of the Sourceforge project.

A few developers came and went, and in what I thought was a miracle, the now lead developer was made an administrator of the Sourceforge project and gradually started handing out access to other people who had been contributing. Except… I was passed over time and time again, and other contributors who had around for less time than myself were given access. I could accept this if I was given some justification, but I was ignored when I asked about getting CVS access and never given any reasons, despite having contributed hours and hours of my time and helped rewrite and clean up sizeable chunks of code. It actually had me close to tears on several occasions, and still upsets me a huge deal that no explanation was ever offered to me.

After starting out with packaging work in Debian, Gaim was the first project where I became involved with actual development, and I learnt a great deal from hacking on it, but when I started at university I decided I’d spent enough time pouring my heart into such an unwelcoming recipient, and I moved on quietly.

posted by ramcq @ 2:43 am
Comments (4) .:. Trackback .:. Permalink

October 19, 2005

Tweaks

Does anyone know of a Thunderbird extension to check for words like “attach” and remind you if you failed to make any attachments?

Does anyone know of a way to stop Firefox interpreting Ctrl+W as “throw this window away including the wiki post/bugzilla comment/blog entry you were writing”? It doesn’t need to be mapped to delete word, I just don’t want it to close the entire thing. It’s most upsetting.

posted by ramcq @ 1:44 pm
Comments (11) .:. Trackback .:. Permalink

October 19, 2005

Comments

Just a quick post to reply to the comments I’ve had on some previous posts.

On Missing entropy on my server box, I received lots of comments on how to feed random other stuff into the entropy pool or make it bigger or other hacks, but Alexander Reelsen pointed me to the real cause — a kernel bug in older 2.4 kernels which causes the entropy pool to deadlock on SMP systems, and never get refilled. There is a patch from RedHat which backports the fix from 2.6, and is included in recent 2.4 kernels.

On the topic of kernels, now I’ve upgraded from 2.4.29-rc1 to 2.4.32-rc1 I get lots of errors like hw tcp v4 csum failed in my syslog. I’m using the e100 driver which as far as I can see hasn’t changed between versions, but there have been some changes to TCP checksumming code which I havn’t quite been able to grok. Google finds mailing list posts with other people asking what the cause is, but nobody answering. Anyone know what’s going on there?

On Windows accessibility, many people seem to not listened to the first couple of minutes of the tasteless song I linked to, and hence taken my comment completely seriously. Thanks to everyone who told me about sticky keys etc in comments, but I did already know about the existence of Windows accessibility support (warning: mjg59 in furious anger mode). πŸ˜€

On the topic of blog comments, how do I cut down on the comment spam I have to moderate without requiring people to go through a completely unaccessible captcha image thing, or the annoyance of registering and acknowledging an e-mail? Would prohibiting comments and URIs containing words like ‘mortgage’, ‘casino’ and ‘ringtone’ ever cause false positives?

posted by ramcq @ 12:55 pm
Comments (6) .:. Trackback .:. Permalink

« Previous PageNext Page »