[Phpmyadmin-devel] GSoC 2011:phpMyAdmin OOP

Dieter Adriaenssens dieter.adriaenssens at gmail.com
Tue Mar 29 11:04:55 CEST 2011


Hi Mateusz,

2011/3/29 Mateusz Lewandowski <gandalfml at gmail.com>:
> Hi,
>
> I send my proposal before a while.

I'll look at it later today.

> I've already finished this task:
> http://sourceforge.net/tracker/index.php?func=detail&aid=2937379&group_id=23067&atid=377411,
> I introduced changes only in one file and one function in
> phpMyAdmin(libraries/sqlparser.lib.php PMA_SQP_formatHtml), I publish my git
> repository with this file on
> https://gitorious.org/gandalfml_phpmyadmin/gandalfml_phpmyadmin and put this
> link into my proposal, should I put this link into some other places?

I pulled your git repository, but you only added the file you changed,
it is difficult to see the changes you did. Can you submit your patch
to our patch tracker [0], as described in [1]? Or create your own
fork, as described on our wiki [2], and apply your changes there.

BTW : Don't add your name to the code in comments, the team decided
that there should be no names in the source code. We use git to track
who did changes.

[0] http://sourceforge.net/tracker/?group_id=23067&atid=377410
[1] http://www.phpmyadmin.net/documentation/#faq7_3
[2] http://wiki.phpmyadmin.net/pma/Git#Publishing_changes_for_merge

Kind regards,

Dieter

> Thank you,
> Mateusz Lewandowski
>
>
> 2011/3/27 Dieter Adriaenssens <dieter.adriaenssens at gmail.com>
>>
>> Hi Mateusz,
>>
>> 2011/3/27 Mateusz Lewandowski <gandalfml at gmail.com>:
>> > Hi again,
>> >
>> > Now I can tell that I understand phpMyAdmin structure of code and
>> > generally
>> > how it works:) The first part of code that I'm going to turn into OOP is
>> > libraries, there is a horrible disorder in this part, and when you wont
>> > use
>> > some of library function you must make a big effort to do it well. Also
>> > scripts witch are used to initialised phpMyAdmin should be turn into
>> > OOP.
>> > Next step that I'm going to make is, as I wrote before, to separate out
>> > the
>> > logic of application and the view layer, when this will have been done,
>> > there will be easy work to port the rest code into OOP. I'll have three
>> > mounts only for this job, I think that it is possible to turn whole code
>> > of
>> > phpMyAdmin into OOP, maybe I'm wrong, but I'm going to try do it.
>>
>> Rewriting all the code of phpMyAdmin into OOP is beyond the scope of
>> GSoC, for several reasons.
>>
>> Firstly, I don't think it can be done, even if you are a very
>> efficient coder. Take into account that you should not just code
>> during those 12 weeks, but also, test it and write documentation. Have
>> you made a week to week plan yet of what you're going to do when?
>>
>> Secondly, you won't be the only GSoC student working on phpMyAdmin, so
>> if you would manage to rewrite everything during those 12 weeks, it
>> would be impossible to merge either yours or their work with the
>> current codebase.
>>
>> For those reasons, it would be better to focus on a smaller part of
>> the current code to turn into OOP. Like libraries, or init script,
>> like you proposed. I'm looking forward to you proposal.
>>
>> About MVC, just keep it in mind as a general idea, but don't focus to
>> much on it. I mean, if it is possible to create a class where you
>> seperate html (or other output) from the logic, do it. F.e. in a table
>> class, if there is a function to get all columns, return an array of
>> columns and not an <ul> or <table> (or something else) list, so that
>> this function can be used by several parts of phpMyAdmin, even the
>> ones that don't output html. (Very simple example, I know, but I just
>> wanted to make clear what I meant)
>> But rewriting the entire codebase of phpMyAdmin, enforcing a
>> seperation of View and Logic, is again out of scope for GSoC, for the
>> same reasons as mentioned above.
>>
>> > I have a question in matter of patch that I should sent with my
>> > proposal.
>> > Here
>> >
>> > http://sourceforge.net/tracker/index.php?func=detail&aid=2937379&group_id=23067&atid=377411
>> > is written that "Currently SQL pretty printer shows documentation
>> > links",
>> > where are this links? Maybe I overlook something, but can you explain me
>> > about what exactly is this Feature Request?
>>
>> For further info, I propose to ask for it in comment on the feature
>> request.
>> As for the links : if you execute a query (select, show, insert, ...),
>> it is shown on top of the screen after execution, showing the result
>> of the query. f.e. when you look at the contents of a table. In case
>> of a SELECT statement, the 'SELECT' keyword is a link to the MySQL
>> documentation.
>>
>> Kind regards,
>>
>> Dieter
>>
>> > Thank you
>> > Mateusz Lewandowski
>> >
>> > 2011/3/26 Mateusz Lewandowski <gandalfml at gmail.com>
>> >>
>> >> Hi,
>> >>
>> >> That's why I wrote that I am not going to implement ORM.
>> >>
>> >> I already downloaded the phpMyAdmin code from git repository and I
>> >> started
>> >> to learn how the phpMyadmin works. I had a look at the reported bugs,
>> >> I'll
>> >> try to fix some of them this weekend.
>> >>
>> >> By the way of MVC, my friend will apply for User interface cleanup and
>> >> if
>> >> her proposal turns out to be successful, it will be possible that we
>> >> can
>> >> separate out the code into controller and view layers together, so that
>> >> work
>> >> will be more effective.
>> >>
>> >> Thank you
>> >> Mateusz Lewandowski
>> >>
>> >> 2011/3/26 Dieter Adriaenssens <dieter.adriaenssens at gmail.com>
>> >>>
>> >>> Hi Mateusz,
>> >>>
>> >>> 2011/3/24 Mateusz Lewandowski <gandalfml at gmail.com>:
>> >>> > Hi again,
>> >>> > Thanks for the answer. I have big experience in design patterns. In
>> >>> > my
>> >>> > PHP
>> >>> > project I use MCV model. I'll try to implement this model into
>> >>> > phpMyAdmin,
>> >>> > but in my opinion there is no point in full implementation of ORM,
>> >>> > I'm
>> >>> > going
>> >>> > to limit this layer of MVC to minimum or just leave it. Do you think
>> >>> > that
>> >>> > this is a good idea?
>> >>>
>> >>> By ORM, I guess you mean Object-relational mapping? I don't know much
>> >>> about it, but after a quick glance, I think it would overcomplicate
>> >>> things.
>> >>> MVC is OK, the idea is to create classes that can be (re)used in
>> >>> different parts of phpMyAdmin, anyway, the useroutput (View) should
>> >>> not be in those general classes. Do you have an idea yet of what part
>> >>> of phpMyAdmin you would turn into a class?
>> >>>
>> >>> > I'm not going to look for another job for summer, so that I'll have
>> >>> > enough
>> >>> > time for this project, 12 weeks and 40 hours per week are not a
>> >>> > problem, and
>> >>> > if needed, I'll be able to make more time for it.
>> >>>
>> >>> GSoC is a summer job. ;)
>> >>>
>> >>> > I already looked into application guide. I'll send my proposal on
>> >>> > 28th
>> >>> > March
>> >>> > as it's written in timeline of GSoC.
>> >>>
>> >>> Remember to submit a patch by then as well.
>> >>>
>> >>> Kind regards,
>> >>>
>> >>> Dieter
>> >>>
>> >>> > Thank you
>> >>> > Mateusz Lewandowski
>> >>> > 2011/3/23 Dieter Adriaenssens <dieter.adriaenssens at gmail.com>
>> >>> >>
>> >>> >> 2011/3/22 Mateusz Lewandowski <gandalfml at gmail.com>:
>> >>> >> > Hello,
>> >>> >> >
>> >>> >> > My name is Mateusz Lewandowski, I'm studying computer science and
>> >>> >> > I'm on
>> >>> >> > the
>> >>> >> > forth term of my studies. I have very strong background in OOP,
>> >>> >> > especially
>> >>> >> > in C++ and Java, but I also have some experience in php(I finish
>> >>> >> > one
>> >>> >> > individual project which is written using Symfony framework an
>> >>> >> > now
>> >>> >> > is
>> >>> >> > available on http://www.biuro-lewandowscy.pl/ ).
>> >>> >> > I'm very interested in phpMyAdmin OOP  project and I'll get
>> >>> >> > familiar
>> >>> >> > with
>> >>> >> > code of phpMyAdmin as soon as possible in this week. I think that
>> >>> >> > porting
>> >>> >> > existing code into object orientated structure should be easy for
>> >>> >> > me.
>> >>> >>
>> >>> >> Hi Mateusz,
>> >>> >>
>> >>> >> Thanks for your interest in GSoC and in particular the OOP idea.
>> >>> >>
>> >>> >> It's nice to hear you have some experience with OOP and PHP, do you
>> >>> >> have experience with Design Patterns? Please take into account we
>> >>> >> expect you to make a proposal to turn a part of phpMyAdmin code
>> >>> >> into
>> >>> >> OOP. Refactoring of the code into a class, implementing it in the
>> >>> >> rest
>> >>> >> of the codebase, testing and documenting should be done in about 12
>> >>> >> weeks of 40 working hours.
>> >>> >>
>> >>> >> Did you take a look at the application guide [0] yet? We expect you
>> >>> >> to
>> >>> >> submit a patch before the end of the application period, to have an
>> >>> >> idea of your skills and understanding of phpMyAdmin code.
>> >>> >>
>> >>> >> Good luck with GSoC and with submitting your application.
>> >>> >>
>> >>> >> Kind regards,
>> >>> >>
>> >>> >> Dieter Adriaenssens
>> >>> >>
>> >>> >> [0] http://wiki.phpmyadmin.net/pma/GSoC_2011_Applicant_Guide
>> >>> >> >
>> >>> >> > regards,
>> >>> >> > Mateusz Lewandowski
>> >>> >> >
>> >>> >> >
>> >>> >> >
>> >>> >> >
>> >>> >> > ------------------------------------------------------------------------------
>> >>> >> > Enable your software for Intel(R) Active Management Technology to
>> >>> >> > meet
>> >>> >> > the
>> >>> >> > growing manageability and security demands of your customers.
>> >>> >> > Businesses
>> >>> >> > are taking advantage of Intel(R) vPro (TM) technology - will your
>> >>> >> > software
>> >>> >> > be a part of the solution? Download the Intel(R) Manageability
>> >>> >> > Checker
>> >>> >> > today! http://p.sf.net/sfu/intel-dev2devmar
>> >>> >> > _______________________________________________
>> >>> >> > Phpmyadmin-devel mailing list
>> >>> >> > Phpmyadmin-devel at lists.sourceforge.net
>> >>> >> > https://lists.sourceforge.net/lists/listinfo/phpmyadmin-devel
>> >>> >> >
>> >>> >> >
>> >>> >>
>> >>> >>
>> >>> >>
>> >>> >> --
>> >>> >> Groetjes,
>> >>> >>
>> >>> >> Dieter Adriaenssens
>> >>> >>
>> >>> >>
>> >>> >>
>> >>> >>
>> >>> >> ------------------------------------------------------------------------------
>> >>> >> Enable your software for Intel(R) Active Management Technology to
>> >>> >> meet
>> >>> >> the
>> >>> >> growing manageability and security demands of your customers.
>> >>> >> Businesses
>> >>> >> are taking advantage of Intel(R) vPro (TM) technology - will your
>> >>> >> software
>> >>> >> be a part of the solution? Download the Intel(R) Manageability
>> >>> >> Checker
>> >>> >> today! http://p.sf.net/sfu/intel-dev2devmar
>> >>> >> _______________________________________________
>> >>> >> Phpmyadmin-devel mailing list
>> >>> >> Phpmyadmin-devel at lists.sourceforge.net
>> >>> >> https://lists.sourceforge.net/lists/listinfo/phpmyadmin-devel
>> >>> >
>> >>> >
>> >>> >
>> >>> >
>> >>> > ------------------------------------------------------------------------------
>> >>> > Enable your software for Intel(R) Active Management Technology to
>> >>> > meet
>> >>> > the
>> >>> > growing manageability and security demands of your customers.
>> >>> > Businesses
>> >>> > are taking advantage of Intel(R) vPro (TM) technology - will your
>> >>> > software
>> >>> > be a part of the solution? Download the Intel(R) Manageability
>> >>> > Checker
>> >>> > today! http://p.sf.net/sfu/intel-dev2devmar
>> >>> > _______________________________________________
>> >>> > Phpmyadmin-devel mailing list
>> >>> > Phpmyadmin-devel at lists.sourceforge.net
>> >>> > https://lists.sourceforge.net/lists/listinfo/phpmyadmin-devel
>> >>> >
>> >>> >
>> >>>
>> >>>
>> >>>
>> >>> --
>> >>> Groetjes,
>> >>>
>> >>> Dieter Adriaenssens
>> >>>
>> >>>
>> >>>
>> >>> ------------------------------------------------------------------------------
>> >>> Enable your software for Intel(R) Active Management Technology to meet
>> >>> the
>> >>> growing manageability and security demands of your customers.
>> >>> Businesses
>> >>> are taking advantage of Intel(R) vPro (TM) technology - will your
>> >>> software
>> >>> be a part of the solution? Download the Intel(R) Manageability Checker
>> >>> today! http://p.sf.net/sfu/intel-dev2devmar
>> >>> _______________________________________________
>> >>> Phpmyadmin-devel mailing list
>> >>> Phpmyadmin-devel at lists.sourceforge.net
>> >>> https://lists.sourceforge.net/lists/listinfo/phpmyadmin-devel
>> >>
>> >
>> >
>> >
>> > ------------------------------------------------------------------------------
>> > Enable your software for Intel(R) Active Management Technology to meet
>> > the
>> > growing manageability and security demands of your customers. Businesses
>> > are taking advantage of Intel(R) vPro (TM) technology - will your
>> > software
>> > be a part of the solution? Download the Intel(R) Manageability Checker
>> > today! http://p.sf.net/sfu/intel-dev2devmar
>> > _______________________________________________
>> > Phpmyadmin-devel mailing list
>> > Phpmyadmin-devel at lists.sourceforge.net
>> > https://lists.sourceforge.net/lists/listinfo/phpmyadmin-devel
>> >
>> >
>>
>>
>>
>> --
>> Groetjes,
>>
>> Dieter Adriaenssens
>>
>>
>> ------------------------------------------------------------------------------
>> Enable your software for Intel(R) Active Management Technology to meet the
>> growing manageability and security demands of your customers. Businesses
>> are taking advantage of Intel(R) vPro (TM) technology - will your software
>> be a part of the solution? Download the Intel(R) Manageability Checker
>> today! http://p.sf.net/sfu/intel-dev2devmar
>> _______________________________________________
>> Phpmyadmin-devel mailing list
>> Phpmyadmin-devel at lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/phpmyadmin-devel
>
>
> ------------------------------------------------------------------------------
> Enable your software for Intel(R) Active Management Technology to meet the
> growing manageability and security demands of your customers. Businesses
> are taking advantage of Intel(R) vPro (TM) technology - will your software
> be a part of the solution? Download the Intel(R) Manageability Checker
> today! http://p.sf.net/sfu/intel-dev2devmar
> _______________________________________________
> Phpmyadmin-devel mailing list
> Phpmyadmin-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/phpmyadmin-devel
>
>



-- 
Groetjes,

Dieter Adriaenssens




More information about the Developers mailing list