Instantbird again has the pleasure of participating in Google Summer of Code
under the Mozilla umbrella. In the past we’ve had a variety of exciting
projects and this year is no different. Three students will be working with us
Saurabh Anand (sawrubh), mentored by Patrick Cloke (clokep), will aim to
add support for reliable file transfer to Instantbird using FileLink as a
fallback to standard file transfer.
Mayank Kumar (mayanktg), mentored by Benedikt P. (Mic), will be adding voice
and video support to Instantbird by integrating WebRTC for XMPP. WebRTC makes
it easy for us to have real-time communication without the use of additional plugins.
Nihanth Subramanya (nhnt11), who last year added the “awesometab“, will be
looking to improve loading of conversations and history under the guidance of
aleth. He will work on adding the ability to search across all logs of a contact
and loading the previous context of a conversation when scrolling (“infinite scroll”).
Please feel free to stop by #instantbird on irc.mozilla.org to say hello and
congratulate our students! Thanks again to Mozilla for allowing us to
participate in Google Summer of Code with them!
Awesometab is the project name for a tab developed by Nihanth Subramanya
during the Google Summer of Code 2013 (via Mozilla) which allows to
quickly start the conversation you want to start. The suggestions will be based
on several parameters like frequency and recency of previous conversations and
will show the most likely results when you open the new conversation-tab. It
will also include already ongoing conversations (Switch to conversation) and
suggestions for multi user chats such as IRC channels and XMPP chatrooms on the
servers that you’re connected to.
What’s this milestone that has landed already?
After problems with the sheer size of the patch during last years GSoC project,
we decided to split this year’s projects into smaller parts that can land as
soon as they are ready.
So far a filterable contact list in a tab has landed that can easily be opened
using the common shortcut of Ctrl+T for New Tab (from both the contact list
or a conversation window) or by clicking the likewise familiar New Tab-button
in the tab bar.
New conversation tab, list filtered for contacts starting with letter f
It features a search bar at top of the tab content which allows to refine the
results. It currently matches the entered name against each part of the
contact’s names but will do more later (see next section).
Contacts are displayed similar to results in Firefox’ awesomebar while retaining
the familiar look of the conversation header with the contact icon and status
indicator at the left and the contact name and status message to the right of
it. Additionally the tags of the contact are displayed, indicated by the same
icons as Firefox uses for tags on the Awesomebar.
Starting a conversation is as easy as single clicking on the result or selecting
an item with the keyboard and pressing Enter – a middle click opens the new
conversation in background instead while keeping the new conversation tab
visible, just in case that you need to start more than one conversation!
And what’s next?
The next step (already under development!) will be further improving this list
by integrating already ongoing conversations (Switch to tab/conversation).
We’d also like to include a way to filter the list by tags and to highlight the
text that matches the filter like the Awesomebar does.
Later on a ranking algorithm will be introduced and tweaked to show the most
important results first instead of the alphabetically sorted list that you
currently get when opening the tab.
These changes are most likely going to be integrated as soon as they are ready
and reviewed, so make sure you have a nightly build and update frequently!
I’m really happy to see how well this project is going, I’m already enjoying how
easy it became to start a conversation using the filterable contact list. I’m
looking forward to actually see the conversations I most likely want to start
Thanks, Nihanth, it’s really great work that you’re doing here!
For the third year in a row, Instantbird will be participating in Google Summer
of Code. Last year, Will Nayes worked on an Account Import Wizard and in 2011,
Google Talk and Facebook accounts in Instantbird, as well as Google Talk,
Facebook and XMPP in Thunderbird).
Instantbird will be mentoring three student projects this year:
The goal of this project is to reimplement Yahoo! Messenger support in
FileLinks in Instant Messages
The Thunderbird Filelink feature allows users to upload attachments to an
online storage service, replacing the email attachment with a link. This
existing code could be used to implement file transfer. While some protocols
support file transfer directly, this approach would provide a fallback that
should always work. Designing and implementing a good UI frontend would also
be required. — Atul Jangra (atuljangra)
I propose to develop a “smart” user interface, in the form of a
user-openable tab, that allows the user to quickly and efficiently open new
chats – based on who they chat with most often, and on what accounts they do
so. The user should be able to go from actively chatting in one conversation
to doing so in a new one, losing no time in finding the contact to start the
conversation with, refocusing to the correct UI element, or opening extra
windows. — Nihanth Subramanya (nhnt11)
For the next few weeks the students are encouraged to bond with their community.
All three have been active in recent weeks on our IRC channel (#instantbird on
irc.mozilla.org), feel free to stop by and say hello! The Instantbird team looks
forward to working with all of them during the summer. You can check out their
blogs (linked to above) and back here for progress throughout the summer.
We’d like to thank Mozilla for letting us apply to Google Summer of Code as part
of them! You can see the other student projects Mozilla is mentoring on the
Google Summer of Code site.
Mozilla is doing Google Summer of Code 2013 and
Instantbird is interested in participating again. Instantbird
participated (through Mozilla) the last two years with
JS-XMPP (by varuna in 2011) and the Import Wizard
(by wnayes in 2012). Both projects were successful: Instantbird and
the Import Wizard into Instantbird soon, after which the UI could then
be uplifted into Thunderbird.
It is time to start thinking about (and brainstorming) ideas for the
chat in this year’s GSoC! We’ve already started
brainstorming and came
up with some ideas, but would love to get more ideas from people.
Remember that a good GSoC project needs to be something that can be
completed by a student in ~8 weeks (but also has to keep a student busy
the whole time!). It should also be something that we would want to
integrate into Instantbird by default and have expected behavior already defined.
Feel free to come chat with us on IRC (#instantbird on
irc.mozilla.org) about this or any other topic!
Instantbird 1.2 was released about two months ago and we must again
apologize for keeping this blog fairly quiet. Sorry about that! But
we’re here now, so read on for some (not really so) juicy Instantbird news!
Instantbird 1.2 release went fairly smoothly, much smoother than the
last release! We’ve gotten some great feedback (and had lots of bugs
filed) and of course have started working on Instantbird 1.3 already!
Most of the fixes that have so far gone into the 1.3 nightlies so far
are minor…but taken altogether, I’m not sure I could go back to 1.2!
Feel free to give them a try and
report any issues to us!
Thunderbird 15 was “recently” released, which also contained the core
chat backend of Instantbird. We’ve had a bunch of bugs filed from that
release too! Between feedback from the two programs we’ve made a lot of
minor improvements that will definitely make Instantbird (more of) a joy
Google Summer of Code 2012 has been over for a bit (it ended in August),
but we never thanked Will for his time with us and the great work he’s
done so far. Currently the account
importer code he
wrote this summer is undergoing
hopefully it will be complete for Instantbird 1.3 to allow extremely
easy transitioning to Instantbird! Thanks for a great summer Will! We
hope you’ve enjoyed working with your mentor, Florian, and the rest of
the Instantbird team; we’ve definitely enjoyed working with you, helping
you and watching you learn. Good luck and hopefully we’ll continue to
see you around (and have contributions from you!) in the future. We’d
also like to thanks Mozilla for graciously allowing us to be part of
Google Summer of Code 2012 through them!
As always, feel free to stop by #instantbird on irc.mozilla.org (and,
yes, Instantbird supports IRC: you can’t use the excuse that you don’t
have an IRC client!) to give us some feedback or ask questions.
Sorry that we have been so awful at updating our blog again, but we have
been busy working on getting Instantbird 1.2 ready for release! We’re
hoping to get this release out the door in the next few weeks (there’s a
few final blockers we’re attempting to fix)!
A few weeks ago (in the beginning of July), Instantbird was string
frozen for 1.2. This means that no new patches will be accepted (for
1.2) which change any strings, this gives our localization (l10n) teams
time to translate Instantbird 1.2 into different languages.
Instantbird 1.1 was
released in 13
languages: Czech, German, English, Spanish, Estonian, French, Italian,
Dutch, Polish, Russian, Slovak, Swedish and Ukrainian! Hopefully we can
release Instantbird 1.2 in even more languages! Unfortunately not all
of these languages have been updated yet, so if you’re interested in
translating Instantbird to your language, check out the translation
and get in contact with
Additionally, our Google Summer of Code student, Will
Nayes, has been
doing excellent work and already has importers working for Colloquy,
Google Talk, mIRC, Pidgin, Windows Live Messenger and XChat! He’s
currently working on importing logs from each of these clients so you
can smoothly transition from other clients to Instantbird without any
data loss. We hope Will is enjoying working on Instantbird as he’s
doing a great job!
We’ve made quite a bit of improvements over the past few weeks. Although
a lot of the changes are behind the scenes or fixing regressions, there
are some exciting user facing changes, as detailed below! We’ve also
been working with our Google Summer of Code 2012 student,
wnayes, quite a bit to get him up to speed of how things work in
Instantbird. He’s made great progress on understanding the code and has
even fixed a bug (see the “top protocols” page, below)!
“Top Protocol” Page in the Account Wizard”
- The account wizard now has a “top protocols”
page to allow
users to quickly set up accounts that are most applicable to them. This
is localizable as different instant messaging networks are popular in
- Tab Completion improvements:
- IRC changes
Google Summer of Code Status:
The past few weeks were the “bonding” period for Google Summer of Code
students and their respective communities; actual work has started this
week. As part of the “bonding” period, we asked wnayes to check out bug
1391: adding the “top protocols” page to the account
above for a screenshot!). We thought this would be a great introduction
to our tools (mostly Bugzilla and Mercurial), our workflow (requesting
reviews and feedback, discussing why changes were made, etc.), some of
the account manager code that he will be working on this summer! wnayes
has done a great job and the changes are already in the nightly
To follow along with what wnayes will be working on this summer, you can
and check out his user
he’s posted some general
application, timeline and a series of links) that he’ll be updating as
the summer continues. (And of course you can stop by our IRC channel,
#instantbird on irc.mozilla.org, and say “Hi!”)