In a distributed environment? Don’t use LDAP for email

Well, I think the title of this post is a bit strong, but let me explain you my point.

I work for Canonical, a 100% distributed company where the majority of employees work remotely. We meet every once in a while to work together for a week, but, normally, we don’t see each other.

I joined the company a year and a half ago and, even back then, the people who had been there for more than 3 years stated “It is big now!! Do you remember when we knew the name of everybody?”. Well, Canonical is not THAT big, but it is getting harder and harder to remember people’s name and, because it is a distributed environment, people’s faces. Even harder, we rely a lot on IRC communication so you have to match a real name, with a face, and with an IRC nickname. For me this is almost impossible to achieve.

When I wrote an email I relied too much on email addresses auto-completion and this was making the problem bigger. “I think his name started with an M, and it might continue with an E, no, wait, an I. Here he is!”. I don’t do that any more. I write a good amount of emails, but not too many to not be able to spend one minute writing down the addresses it goes to.

Canonical has an internal web tool called “Directory” where you can quickly search a person (by team, name, IRC nickname, town, manager, email address, etc.) and you will soon find the record with a picture, real name, email address and IRC nickname. Then I copy and paste the email address to the “To:” field. It does the trick for me. It helps me visualizing who I am writing to and helps me matching the face with an IRC nickname, so the next time I get a ping from someone I can see the face behind.

Does your company has such a web tool? I really recommend it.


  1. Are canonical going to release the application? It sounds very interesting. Id say someone (ill probably do it myself :) ) should add IRC nick to the fields in evolutions address book.

  2. I would be nice if you email client could provide that functionality. As far as I am aware, ldap can store all of those fields.

    Gmail has a feature to be able to add a photo for a contact (and to add a photo that other gmail users will also see.) I, where possible, try adding photos for people I email often, for the same reasons as you mentioned.

  3. If you were using something other than IRC for chat then you could associate avatar images with users which would help to keep nicks and people connected. Jabber certainly supports this.

    When I’ve used chat to support collaboration with remote developers/project teams it has always been Jabber Multi-User-Chat rather than IRC. More modern, more featurefull and easier to introduce to new users than IRC. There are decent clients in Ubuntu – personally, I don’t know why Canonical don’t make more use of Jabber/XMPP (both for public use and internally).

  4. Well, i reckon that what you really need is to add two attributes to your LDAP directory: IRC nick and a picture, not to stop using LDAP!

    I actually suppose that the web tool “Directory” you are mentioning has LDAP as a backend, with those two attributes included.

    Just find a plugin for your email client to get and show you on auto-completion the info you need.

    • Indeed, but that’s not what I need, though.
      I find it a good exercise in going to an external application and see a bigger picture of the person, where in the chart is and where he or she lives.
      It makes me learn every day about that person.

  5. We have an product called BluePages (Blue as in IBM blue) that does a similar thing. It even goes a bit further by list a person skills, job profile and is fully searchable. We even sell it as a product .. sorry not Open Source.

    In a company with almost 400000 employees spread across the globe, this is very valuable.

  6. The issue here isn’t about how information is stored in the backend, but how it’s accessed in the frontend. As numerous other people mentioned, LDAP may very well be in use currently to store that information – what you mean to say is don’t use automatic LDAP lookups *in your e-mail client*. LDAP is just an information storage bin; visiting a web site on an intranet is a user behavior.

    • Indeed, this is a user behaviour. I intended to say “automatic look ups”, and I think that’s explained in the body of the blog post. I would change the title to “Don’t use LDAP (automatic look ups) for email”, to avoid confusion, but that would probably spam the several planets where this blog is feeded. So I prefer not to.