Went into production on Monday one of our most ambitious with Irc-Hispano , the largest chat network in the world and speaking. You can access your application from here .

Cliente IRC Flash

For many years we wanted something but there was the necessary technology. Those who use the Internet for many years, in my case since 1994, we know that before there was the Messenger and IRC, chat lifetime. The problem was that they needed to use specific programs ( mIRC ) and then had to know how to configure it and have a basic (servers, nicknames, channels, kick, ban, join ...). Too complicated for the novice user. This appeared in the late 90's probably more useful Java applets: IRC client online. Now users no longer needed knowledge or install anything, just accessed the website, they placed their nickname, the channel where they wanted to chat, and "relate." IRC clients even appeared in HTML, very useful, but without the options of usability of the others.

The idea was very good, but no one had reckoned with the associated problems: the need for Java VM, slowness, clumsiness, etc. Users had no more trouble.

2002 It was then when we get to do the same thing in Flash, a technology found in most browsers and with a much larger deployment than Java. We started to investigate and we get a great disappointment, there was no way to communicate with a standard IRC server, at that time had only XMLSocket Flash, which allowed to connect to remote hosts but according to special specifications.

All was lost until 2006. In June this year, Adobe (which had already absorbed the Macromedia) threw Flex2 and with him the Flash Player version 9 of the most anticipated feature for us: the ability to create binary sockets. With this we could do in Flash clients pop / smtp, ftp, and of course, IRC. This marked a before and after and immediately we started to plan our dream. It took more than six months we dive into the project because we were working on others.

From day one we had to start fight with the IRC protocol RFC , which is essential to know how the system works and the syntax of all the messages back and forth with the server. Once we had the core was relatively easy to build any user interface on it, creating the commands and actions and response events. The first problem was that there are many different options, so we were setting priorities and working on them.

When we had a basic but functional and because of the security policies of the Flash virtual machine , we got in touch with Irc-Hispano and from the first moment I loved the idea, plans and our prototype, which was easy to get an agreement that benefits both parties. While we were developing, the IRC-Hispano people dealing with the testing.

And technically speaking, and although it is wrong for me to say, has done an impressive job of squeezing all the power of Flex. We managed to integrate a lot of things that at first sight are almost impossible to use Flex, like the smilies in a text area or background colors. Documented here and there and seeing what others had achieved certain systems are able to adapt to our needs being all very well.

From the first moment we realized that the only way to make such an application was using agile development techniques, and we did, preparing periodic functional versions of what had and making it available for users to give us the feedback necessary, not only errors but also usability and functionality in general. The experience was perfect and the whole team has benefited out of this mode of work, as it automatically eliminates the stress of fear of change when the product is now complete.

And so we come to today is launched publicly. There has been much more functionality than originally planned and will certainly be doing a lot more as it is used. For our part has been a tremendous effort in working hours and headaches to make and resolve problems without apparent response, but the result was worth it.

From now on we hope to fix bugs and add improvements, we do not lack ideas and there will be many surprises ;) . Someday refactor :P .

If you have proved useful this article ... Share!