Michal Čihař - Blog Archives for English

FOSDEM todo list for phpMyAdmin completed

On FOSDEM 2010 we agreed on several bigger changes in phpMyAdmin. The two of them were my proposals and I had to take care of them - migration to Git and start to use Gettext based system for translating phpMyAdmin.

The migration to Git was quite straightforward and went alive on 11th of March. There were few tiny issues afterwards, but I think everything went quite smoothly and we can happily use it right now (I especially enjoy using feature branches). I've also written little guideline to document best practices to use in our repository

After we went to Git, I immediately started on another big transition - the goal is to use standard po files for translations. The obvious solution is to use gettext for that, however the one in PHP is not really in good shape to use, so we went with php-gettext. Today I just merged gettext branch to master so it is also done (see information for developers and translators for more details regarding this).

So now these big tasks are done and I can focus on daily issues connected with GSoC and other areas.

Summer of Code is almost here

It looks like being separate organisation in GSoC definitely brings more attention than last years where we were under MySQL. Hopefully this will allow us to choose really enthusiastic students who will do their work properly and without much kicking.

So if you are interested in participation in GSoC 2010 with phpMyAdmin, please take care filling up the proposal and showing us some previous contributions (see student checklist for more hints) in order to be selected.

The dark side of this is enormous increase of mails on our devel mailing list and combined with my illness last week and vacation few days before, it makes constant volume of 50 unread mails there for me :-).

phpMyAdmin moving to Gettext

For ages, we've been using PHP variables to do the localisation. It was not really easy to maintain, but it worked quite well. However impossibility of using standard tools for translations was still annoying. So I really wanted to move to some standard, what seems to be Gettext.

Once I've played with Gettext in PHP, I realised how broken it is and that it is not a good idea to use it. However it is not that hard to implement in PHP and some people already did that. From these findings it was just a small step to implement it.

Well not really small step, because at first I've chosen the more complicated way and tried to create sed magic to move all strings to places where they belong. But this turned out to be nearly impossible and at FOSDEM I realised that there is also much easier way to just keep the messages in one file and migrate them as needed. This way the migration is really fast and not touching most of the code.

So here we are. Currently it is in separate branch (called gettext), however I hope to merge it soon, because I'm not aware of any problems right now.

The nice benefit this gives to us is web based interface for translations.

phpMyAdmin uses Git

Yesterday I finally implemented what we agreed on FOSDEM - to use Git as a version control system for phpMyAdmin.

The migration itself required just a little bit of magic, fixing other tools which were relying on Subversion was a little more work, but hopefully I did not forget anything and all pieces are now fixed (if you spot something still referring to Subversion, please drop me an email).

Immediately after completing this task, I focused on another one - move from our custom translation system to Gettext. This is almost done in gettext branch and also web interface for translations is set up, but there are still some minor issues to fix (some messages are fuzzy even when they should not be). But anyway your translations won't be lost, so feel free to contribute there.

Gammu is getting new documentation for developers

During last weeks I finally got upset with state of developer documentation for Gammu and python-gammu. Not that it would be non existing, but it was spread over various places in various formats and partially outdated.

I decided to write all documentation in Shpinx as I know this tool and it seems to fit quite well in mixed C/Python environment.

The first step was to migrate existing docs into same format (reStructuredText) and create documentation structure. I believe this is now completed and you can check results here.

Yes there are still lot of rough edges and lot of work to do, but I anyway think that current state is better then mess we used to have before.

Blog breakage

Hmm, it looks like upgrading markdown was not clever idea, it seems to have broken lot of posts on the blog.

Hopefully it is correct now.

phpMyAdmin documentation translations

Activity of our current Chinese translator pushed me to do some work on localized documentation for phpMyAdmin.

The biggest change is that I lowered ratio for generating translated documents from 70% to 15%. I know 15% is quite low threshold, but I think showing partially translated documents is better than nothing. Especially for those like Chinese where the translation does cover installation instructions but not rest of document.

Also now header of each translated document points users where to improve the translation, so hopefully we will get even more contributors. Anyway if you're interested in it, just go to our translation server.

phpMyAdmin slowly goes to Git

As can be already visible from our SourceForge.net devel page or from repository listing, there are already some Git repositories for phpMyAdmin. They are not yet being used for development, they are there just for developers to get used to new workflow. The only exception are scripts and localized_docs repositories, which were made master as of today and will not receive updates from SVN anymore.

Anyway the repository should have same content as SVN (as of yesterday) so if you find any problems with that please let me know so that I can fix migration magic.

Preparing for Google Summer of Code 2010

It might be quite premature, but in phpMyadmin we've started our preparations for this year Google Summer of Code. This is basically just one of followups to the team meeting at FOSDEM, where we decide to apply again this year, but to try as hard as we can to be standalone project and not hidden inside of MySQL. We're grateful for participation in their project, however we feel it would be easier to manage if we're standalone project.

So if you are a student who might be interested in participating, you can already browse our ideas list (this time PHP coding skills are not strictly necessary as I've given there a documentation improvements also) or come with your ideas and follow our student checklist, to see what you can do to get accepted (in case we're accepted to GSoC).