[Phpmyadmin-devel] Summer of Code in phpMyAdmin

Michal Čihař michal at cihar.com
Thu Aug 27 09:37:53 CEST 2009


Hi all

This is just a copy from my [blog][b], because I'm not sure everybody
here follows it.

As the project is over, I think it's time for some summary. I think
this year we got quite a good improvements. Most of them are already
merged in trunk, but they might need some polishing, especially as the
branches were developed separately and now they are first time used
together. Anyway if you want to give new code a try, please go to our
[demo server][1] and play with it!

So what do we have?

#### Import and export improvements

When I saw the proposal for first time, I thought that this is the best
prepared proposal I've ever seen and we must have this student. And it
turned to be true. Derek did great job, going in more directions than
proposal included and brought great improvements to phpMyAdmin.

To start with import part, phpMyAdmin can now take any spreadsheet or
CSV and create table from it automatically, with some kind of
heuristics to find out numerical or date columns.

On the export side, he integrated [PHPExcel][2] library and phpMyAdmin
can now generate proper Excel 2003 and 2007 documents.

The good thing also is that he wants to stay active even after GSoC.

#### Changes tracking

Even though Alexander Rutkowski was really quited in first half of the
project, he indeed did code in that time and he brought feature that
will be useful mostly for application developers. You can activate
tracking of certain table, all your changes will be logged and you can
get SQL commands to replay the changes on other database later.

This can be useful either for monitoring changes which users did or for
making changes on development system and applying them later on
production one.

#### Database synchronisation

Zahra Naeem did originally also apply for changes tracking, but as we
did not want to have two students on the same topic, we persuaded him
to take another project, which was not taken by other students -
database synchronisation. This feature is somewhat similar to previous
in one use case - you can use it to apply changes from development
system to production one. You enter connection settings for two
database servers and phpMyAdmin finds out difference between the
databases and allows you to synchronize them.

I feel like Zahra felt that almost everything is done in mid-term and
slowed down a lot and I'm still not happy with documentation he had
provided. Hopefully he will get to that and improve it.

#### Replication support

This project was mentored by Marc and to me it looks like Tomáš Srnka
did good job there. The changes are not yet in trunk, but hopefully
they will be merged soon and I will then try to set up some replication
stuff on demo server, so that you can play with it.

#### Permanent user preferences

The only unsuccessful project this year. The student failed to deliver
something for mid-term evaluation and because of this he failed. We
still have his patch in [patch tracker][3] and I think I will try to
find time to look at it more deeply, whether it is worth using and
cleaning up or it is better to write whole thing from beginning.

#### Summary

I think this Summer of Code was great and I hope next year we will be
really a separate project there and not under MySQL hood (not that
would be bad, but I think with five students it is better to be
directly there than coordinating with MySQL guys). And I hope we will
have more students like Derek :-).

[1]:http://demo.phpmyadmin.net/
[2]:http://www.codeplex.com/PHPExcel
[3]:https://sourceforge.net/tracker/?func=detail&aid=2825187&group_id=23067&atid=377410
[b]:http://blog.cihar.com/archives/2009/08/27/summer_of_code_in_phpmyadmin/

-- 
	Michal Čihař | http://cihar.com | http://phpmyadmin.cz
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
URL: <http://lists.phpmyadmin.net/pipermail/developers/attachments/20090827/9be3bec9/attachment.sig>


More information about the Developers mailing list