CodingTeam is a free and easy to use forge designed for you. Your projects need simplicity and intuitivity!

Search:

CodingTeam

Blog

Feed subscription: entries or comments.

Categories

 

Project of the Month #3 - Jappix

The project of the month for may 2010 is Jappix. This is a very new project developped on CodingTeam.net since april 2010!

According to the project leader, Jappix is a Jabber web-client that aims at becoming the web equivalent of Gajim. It means that loads of XMPP XEP will be supported, and the client will probably become a "mini" social network, entirely based on the XMPP protocole, with the help of PubSub.

The graphical aspect is also very important to the Jappix team as they want the non-profit Jappix project to be as good as other commercial web-app. According to them, the user has to feel good while using it: “ The Jabber network needs good clients, so that we can do it and convert everyone to Jabber. Let's decentralize the instant messenging !

And now, a few questions asked to the project leader!

  • How did you know CodingTeam?

    I know Codingteam thanks to Edouard, who posted a comment on my weblog, that told me he was using CodingTeam.net since a few time and it was pretty good for his projects (in fact, they were shared faster). At the really beginning, I wanted to use Launchpad.net from Canonical, but I saw that it wasn't as good as I expected. Here came CodingTeam.net !
     
  • What CodingTeam brings in your project development?

    CodingTeam brings us a better organisation, mostly with the bugs reporting tool, that we use mainly as a ToDo list (because I report all the functionalities that I'd like to code for the next versions with that tool).

    On the one hand, CodingTeam.net brings us a simple hosting platform for our project, with a great SVN repository and package hosting, with the principal advandage that is to get a quick view of the total number of downloads, with the popularity of our project on the platform. The OpenForge API is also great, because we use it to retrieve data on one of our external website.

    On the other hand, the work of the translators was really simplified thanks to CodingTeam, because they are able to start translating from a simple web interface, and they do not need to contact us anymore to send any translated strings file ! That's simple, direct, and powerful.

    There are loads of things that CodingTeam has which make me love it (the XMPP functionnalities and so on). It make us work even faster and easier, together.
     
  • What would you see in CodingTeam in the future?

    Well, I think that, in a first, some tools like the translation engine might be improved to allow anonymous users translating the project that they want to. Then, I really think that opening the forge to other repository protocols (principally Git), because some developers can't bear Subversion...

    Allowing project managers to add external Jabber rooms or external repositories would be great too. Maybe that on some CodingTeam modules, the performances should be increased too: the page generation can be very slow by using a particular tool and very fast with some other tools.
     
  • Since you use CodingTeam, did you became rich and sexy?

    Well, I got lots of donations (74€) for the project (I don't know if it's thanks to the "donate" link on CodingTeam.net or the one on my weblog), but the main thing is that it allowed me to code even faster and better.
     

Thanks to Valérian who answered to my questions! Feel free to take a look at Jappix!

Project of the Month #2 - Kinovea

The project of the month for april 2010 is Kinovea. This project is developped on CodingTeam.net since september 2008!

Kinovea is a video analysis tool for sport coaches and athletes. The main focus is to enable performance analysis through a straightforward interface. The most important functions (aside frame by frame playback) are video-drawing and side by side comparison.

The project started as a small freeware in 2004, then underwent a full rewrite starting in 2006, with the first open source version available in 2008. The project is also used by 2D/3D animators to comment on each others works.

Kinovea was rewarded in 2009: it was the third project in the Multimedia category of Les Trophées du Libre.

And now, a few questions asked to the project leader!

  • How did you know CodingTeam?

    I honestly don't remember how I stumbled upon CodingTeam, it probably was on Veni Vidi Libri wiki (a website to help Open Source software authors with licensing and organising). What I do remember is that I was attracted by the human-sized structure and clean design. The fact that the forge is open was also a strong point. It suddenly made me realise that most other forges weren't quite coherent in their approach.
     
  • What CodingTeam brings in your project development?

    We are mostly using the subversion repository facility, its web interface, and the RSS feed of code changes.
     
  • What would you see in CodingTeam in the future?

    I think one area that could be worth exploring is to give the administrator of a project more access to the underlying data of his project. For example, the wiki pages (including history) could be made downloadable on demand as a single archive, to provide an extra backup mechanism.

    I think there are already a whole lot of interesting features, probably more than one can dream of. As a matter of fact, it might be interesting to give project admins the ability to hide/show tabs to better match the tools they actually use.

    That said, I'm looking forward Mercurial support, I know it's in the works :-)

     
  • Since you use CodingTeam, did you became rich and sexy?

    Definitely. Each time I use CodingTeam, I gain one extra point of sexiness. Now I need to figure out how to fix the sexy, sexy bugs I write :-)
     

Thanks to Joan who answered to my questions! Feel free to take a look at Kinovea!

Some statistics about CodingTeam.net

Here are some cool statistics about CodingTeam.net usage (generated on 28th march 2010). There are currently 304 projects registered on CodingTeam.net.

Top categories.

User involvement.

  • Number of users: 1,276
  • Users who own one or more project: 249 (19.5%)
  • Users without any project: 1,027 (80.5%)
  • Users involved in one or more project: 283 (22.2%)
  • Users without any project involvement: 993 (77.8%)

Miscellaneous.

  • Number of posts in the forums: 2,436
  • Number of bugs reported: 1,097
  • Number of strings to translate: 335
  • Number of translated strings: 1,492
  • Number of news: 386
  • Number of downloads: 495

The fact is that a lot of users on CodingTeam.net are somewhat inactive. But the few users that are really involved seem to be huge workers (we have more than 3,200 commits since the 0.9 release (all past commits aren't counted)).

Each time I release a new version of CodingTeam, a lot of users come to CodingTeam.net to see how it works. CodingTeam.net not being a test setup may be the reason for a large part of these 77.8% inactive users: They register, see their project rejected, and stop here. Maybe it would be a good solution to create a CodingTeam demo, opened to all, allowing everyone to test, to see and to make their own advice without installing anything. Statistics are cool, interpreting them is harder.

And, last but not least, as I'm very busy this month, there won't be a Project of the Month entry for march 2010.

Project of the Month #1 - Bechamail

The project of the month is an interesting project using the CodingTeam software forge. Each month, I'll pick up another project that looks attractive and speak about it on this blog. Thus, the community gets a place to be known. So if you use CodingTeam (either CodingTeam.net or your own forge) your project can appear here! By the way, if you think that it would be captivating to present your project here, let me know!

The project of the month for february 2010 is Bechamail. And it becomes the first project of the month!

Bechamail is lead by Robert Sebille on CodingTeam.net since november 2007! He works on this project since 2005 for his association with help and feedbacks from the other members of it.

Bechamail is a French-speaking project written in PHP. It's an e-mail addresses manager. Concretely, it helps the sysadmin by providing an user oriented tool to easily configure e-mail addresses for one or more domain names. It fits to MTA and MDA configuration.

This project has been developed in an associative context as Robert is one of the fouding members of Cassiopea. The goal of this association is to heavily connect associative virtual networks and to help people to understand new technologies. Cassiopea provides internet services such as implementation or development of websites, mailing lists, domain names, e-mail addresses, trainings… to other Belgian associations.

Bechamail is born in 2005 because, at the start of this associative project, whenever it was necessary to create, modify or delete an alias or an e-mail box, they had to intervene on the server. It was inevitable to automate the process and allow members to manage their e-mails easily.

Bechamail is successfully used at Cassiopea and also at Banlieues, an association that focuses on the disadvantaged public. Those who want to try Bechamail can test the demo!

And now, a few questions asked to the project leader!

  • How did you know CodingTeam?

    By searching the web for forges lists (but I don't remember where). Functionnalities suited me and it was in French and English. It looked good to me to support a sofware forge available in French. There were not many.
     
  • What CodingTeam brings in your project development?

    Usual functionnalities of a software forge of course, like the essential SVN. Once you start to use CodingTeam, it's so practical, how to do without? ;). I remember a day, there was once a technical issue on the the server side, I really appreciated to be able to discuss it on the chatroom and the CodingTeam reactivity!
     
  • What would you see in CodingTeam in the future?

    I was going to say the dashboard, but it's already done ;), great! Then, e-mail report when someone answers to a bug or a feature request. Otherwise, I have to think regularly to consult the bug tracker or the RSS feed, and I don't always think about it, especially if I am busy with another project for a few months. That's why e-mail notifications would be useful for me, because I could see them even if I'm working elsewhere. I read the discussion here. The solution to choose to receive or not notifications seems good to me.
     
  • Since you use CodingTeam, did you became rich and sexy?

    Rich with money? Not so. On the other side, I found a lot of fortunes on CodingTeam.net ;). Sexy? I was already sexy before, in my point of view. ;)
     
Thanks to Robert who answered to my questions! Feel free to take a look at Bechamail!

Translate your projects via CodingTeam

It's time to start this blog with an interesting subject: online translation inside CodingTeam. This post is a full introduction to this new feature in the CodingTeam software forge.

As it stands in the release notes for the 0.9.2:

CodingTeam 0.9.2 reintroduces the gettext-based online translation system. It was already in our forge up to the 0.42 but this had disappeared with the full-rewrite of the 0.9. Now, you can easily translate your software online with CodingTeam! The process is simple: you upload a gettext translation model (a .pot file) and then users can translate all your strings in their language. If you already have a gettext translation file (a .po), you can upload it to automatically translate all the strings in the database. When you want to get the translated strings in order to release your software, just export the translation file for all available languages and it's done! And by the way, to prepare the next release, you will import your new .pot file, which will cause the automatical update of your strings database (deleted strings will be deactivated).

This feature is very new and we release it early to get feebacks on this implementation, in order to make it better and better with the time. But here it is, you can now translate your softwares with CodingTeam!

Thus I write this step-by-step howto in order to fully explain this feature, its use and operation to the CodingTeam users and more generally to anyone who may be interested.

Before starting, it is necessary to mention some important points. First, CodingTeam is a software forge, that means that you can do everything to develop your software in one place with varied tools from bugs tracker to source code management. This software can be used, if you have a free software (as in freedom) project, on the CodingTeam.net website!

The method used to implement internationalization (also known as i18n) inside the CodingTeam software forge is based on gettext. It's the GNU library for internationalization and localization. gettext is somewhat a de facto standard to develop multilingual programs. The use of this library is very simple. Programmers put their strings in the gettext function (commonly aliased _). Then, they run xgettext that generates a .pot file wich is a template (it means that this file contains the list of translatable strings extracted from the sources). Afterwards, the translator derives a .po file from this template with msginit or msgmerge and the translation is made in this file. He just send it back to the developer who uses msgfmt to generate a .mo file wich is a binary. These binary files will be used by the program.

With CodingTeam, all the translation work can be made online. The fact is that a lot of people are unwilling to use gettext. Therefore in the context of free software, an easy-to-use appliance can only increase the number of translators who will contribute to your project! And, in an enterprise, it's just necessary to save time.

First step: upload a .pot file.

Just click on the "Administration" link to enter the panel and select your base language.

If you're going to import a template of translatable strings of your programs currently written in English, thus your base lang is English. Just import this file and you're done, strings are now ready to be translated.

English is now hidden in the list of the internationalization homepage. This is because you won't translate strings that are already translated!

Second step: upload a .po file.

Now, you can import an existing translation files if you have it. Just fill this form and this language will be updated.

It's useful in order to maintain on a CodingTeam forge the translation that you've already started elsewhere. The .po import is designed for that and for prehistoric animals that still contribute to translation without using online interfaces.

Third step: translate a string.

The third step is the most interesting of all. Here is the translation string view:

You can see the string that you have to translate and the current proposed translation. If you are registered on the forge, you can add your own proposition (and tag it as translation, correction or reformulation). You can also see where this string is located in the sources (file and line number), this kind of information can be very useful to understand the meaning of a sentence taken out of context.

And below you have the revision history for this translation. Indeed, CodingTeam's internationalization system works as a sum of suggestions, the last one is the translation that ends up being used. Thus, to limit abuse, administrators can delete any suggestions.

When someone contribute to translations, this work is shown in the project's timeline (and therefore in the dashboards). You can also get (through this timeline's entry) a summary of all translation work made in a day by all translaters on all languages.

Fourth step: export a .po file.

Once translation work is finished, you can export the translated .po files. You will just have to compile .mo files from them.

Well done!


Well, you know everything you should know about CodingTeam's online translation system!

But, as I said in the release notes, this feature is very new. It lacks a lot of functionality and can be improved by the time. Some of the needed (and planned!) things to make this internationalization system better are:

  • linking the source code repository and the internationalization system (update on commit, build and commit translation files…)
  • handling plural forms

If you have another great idea, feel free to write it here!

- page 1 of 2