www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - A few thoughts on the existing GSoC student proposals

reply Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
Hello everyone,


I've been following with interest the three preliminary proposals made 
so far: ANTLR grammar by Luca Boasso, containers by Ishan Thilina, 
Thrift bindings by David Nadlinger aka klickverbot, and database API by 
Christian Manning.

There are many issues to consider when looking over such a project 
proposal, and there's no quick and easy formula. The considerations include:

- Project impact: what would be the impact of the project? What 
consequences for D's adoption can be expected following the project?

- Project's chances of succeeding: what is the assessment that the 
project can be completed within the timeframe?

- Student match: what is the match between the student's initial skill 
set and the project?

- Mentor match: is there a strong mentor for the project?

Here are a few considerations regarding the three pre-submission 
proposals discussed herein:

1. ANTLR grammar for D

I think this is a feasible project. My main concern remains the 
projected impact. If the project is meant to build an ANTLR parser on 
the off chance that someone will later use it for Eclipse integration or 
otherwise, then there are serious concerns about the impact.

If, on the other hand, the project is focused on Eclipse integration 
(perhaps starting from an existing similar project) and uses an 
ANTLR-based parser as a mechanism to achieve that goal, then the impact 
would be significant. However, there is the concern that the scope of 
the project might be too large to be finished in time. So I recommend 
attention in defining the definition and scope of the project when 
writing the proposal.

The fact that we already have a good, supporting mentor in Bruno for an 
Eclipse project should help a lot.

2. Containers

I'd need to hear a lot more about this proposal before making an 
impression of it. From the little I gathered so far, I think this would 
be a difficult project to carry through. At this point D's containers 
need less solid coding but more design. Such design artifacts are most 
likely to come from an experienced member of the community. Starting 
from scratch in understanding the issues involved up to the level of 
making a solid contribution is possible, but difficult.

3. Thrift bindings

This is by far the best proposal we have so far. It comes from an 
established member of the community who has a good understanding of D, 
and is likely to boost adoption of D at companies that use 
service-oriented architectures, and Facebook in particular. If the 
project will be of adequate quality, I should be able to contribute it 
to the Thrift mainline. The impact could be decisive.

4. Database API

This is a high impact item. I'd need to collect more information about 
the specifics of the application before creating an opinion about its 
chances of success. I see Piotr and others have some related ideas; I 
suggest them to apply appropriately (either as mentors or students). A 
solid mentor(s)/student(s) combo is a key ingredient of a successful 
project.


Thanks,

Andrei
Mar 27 2011
next sibling parent reply Piotr Szturmaj <bncrbme jadamspam.pl> writes:
Andrei Alexandrescu wrote:
 4. Database API

 This is a high impact item. I'd need to collect more information about
 the specifics of the application before creating an opinion about its
 chances of success. I see Piotr and others have some related ideas; I
 suggest them to apply appropriately (either as mentors or students). A
 solid mentor(s)/student(s) combo is a key ingredient of a successful
 project.


 Thanks,

 Andrei
I do not feel very strong as a mentor and I'm not a student, so I'd rather not apply. However, I'll certainly try to help with this item :)
Mar 31 2011
parent reply Christian Manning <cmanning999 gmail.com> writes:
On 31/03/2011 18:30, Piotr Szturmaj wrote:
 Andrei Alexandrescu wrote:
 4. Database API

 This is a high impact item. I'd need to collect more information about
 the specifics of the application before creating an opinion about its
 chances of success. I see Piotr and others have some related ideas; I
 suggest them to apply appropriately (either as mentors or students). A
 solid mentor(s)/student(s) combo is a key ingredient of a successful
 project.


 Thanks,

 Andrei
I do not feel very strong as a mentor and I'm not a student, so I'd rather not apply. However, I'll certainly try to help with this item :)
That would be much appreciated, especially your PostgreSQL client. I think the end goal of a database module for Phobos should be to have native D clients for the more popular (R)DBMSs. I'm in the process of drafting my proposal which I'll post to this ng once done.
Apr 01 2011
next sibling parent reply simendsjo <simen.endsjo pandavre.com> writes:
 Piotr Szturmaj:
 I think the end goal of a database module for Phobos should be to
have native D clients for the more popular (R)DMBSs. Isn't both a large undertaking as well as difficult to keep in sync with the reference implementations? I think wrapping the c libs would make everything less fragile.
Apr 01 2011
next sibling parent Christian Manning <cmanning999 gmail.com> writes:
On 01/04/2011 14:43, simendsjo wrote:
 Piotr Szturmaj:
 I think the end goal of a database module for Phobos should be to
have native D clients for the more popular (R)DMBSs. Isn't both a large undertaking as well as difficult to keep in sync with the reference implementations? I think wrapping the c libs would make everything less fragile.
I didn't mean for GSOC, but for when(/if) D's community reaches a point where it becomes feasible then it would be great to have native clients
Apr 01 2011
prev sibling parent Piotr Szturmaj <bncrbme jadamspam.pl> writes:
simendsjo wrote:
 Piotr Szturmaj:
 I think the end goal of a database module for Phobos should be to
have native D clients for the more popular (R)DMBSs. Isn't both a large undertaking as well as difficult to keep in sync with the reference implementations? I think wrapping the c libs would make everything less fragile.
For some RDBMSes it may be difficult, but PostgreSQL's network protocol is very well documented and stable since version 7.4 (late 2003).
Apr 01 2011
prev sibling next sibling parent Piotr Szturmaj <bncrbme jadamspam.pl> writes:
Christian Manning wrote:
 On 31/03/2011 18:30, Piotr Szturmaj wrote:
 Andrei Alexandrescu wrote:
 4. Database API

 This is a high impact item. I'd need to collect more information about
 the specifics of the application before creating an opinion about its
 chances of success. I see Piotr and others have some related ideas; I
 suggest them to apply appropriately (either as mentors or students). A
 solid mentor(s)/student(s) combo is a key ingredient of a successful
 project.


 Thanks,

 Andrei
I do not feel very strong as a mentor and I'm not a student, so I'd rather not apply. However, I'll certainly try to help with this item :)
That would be much appreciated, especially your PostgreSQL client. I think the end goal of a database module for Phobos should be to have native D clients for the more popular (R)DBMSs. I'm in the process of drafting my proposal which I'll post to this ng once done.
Ok, I feel I should post my code earlier, even if it's not finished yet, so you can take a look as soon as possible. I think you may find some of my ideas useful so maybe you'll want to throw them into your proposal.
Apr 01 2011
prev sibling parent reply Piotr Szturmaj <bncrbme jadamspam.pl> writes:
So, here it is :)

Code:
http://github.com/pszturmaj/ddb

Documentation:
http://pszturmaj.github.com/ddb/db.html
http://pszturmaj.github.com/ddb/postgres.html

Some things are unfinished yet.
Apr 01 2011
parent Christian Manning <cmanning999 gmail.com> writes:
On 01/04/2011 21:14, Piotr Szturmaj wrote:
 So, here it is :)

 Code:
 http://github.com/pszturmaj/ddb

 Documentation:
 http://pszturmaj.github.com/ddb/db.html
 http://pszturmaj.github.com/ddb/postgres.html

 Some things are unfinished yet.
This is some great stuff and will definitely be a massive help! Thanks
Apr 02 2011
prev sibling parent reply Bruno Medeiros <brunodomedeiros+spam com.gmail> writes:
BTW Andrei, do you any idea or estimation of how many proposal slots 
Digital Mars might get from GSoC?


-- 
Bruno Medeiros - Software Engineer
Apr 04 2011
parent reply Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 4/4/11 12:53 PM, Bruno Medeiros wrote:
 BTW Andrei, do you any idea or estimation of how many proposal slots
 Digital Mars might get from GSoC?
We have eight student applications so far. Andrei
Apr 04 2011
parent reply Bruno Medeiros <brunodomedeiros+spam com.gmail> writes:
On 04/04/2011 19:04, Andrei Alexandrescu wrote:
 On 4/4/11 12:53 PM, Bruno Medeiros wrote:
 BTW Andrei, do you any idea or estimation of how many proposal slots
 Digital Mars might get from GSoC?
We have eight student applications so far. Andrei
I know that, I can see it in my Google-Melange dashboard... :p I meant the number of student slots that Google will allocate to each organization (and yes, the exact number is not know in advance, even for Google). -- Bruno Medeiros - Software Engineer
Apr 04 2011
parent reply Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 4/4/11 1:19 PM, Bruno Medeiros wrote:
 On 04/04/2011 19:04, Andrei Alexandrescu wrote:
 On 4/4/11 12:53 PM, Bruno Medeiros wrote:
 BTW Andrei, do you any idea or estimation of how many proposal slots
 Digital Mars might get from GSoC?
We have eight student applications so far. Andrei
I know that, I can see it in my Google-Melange dashboard... :p I meant the number of student slots that Google will allocate to each organization (and yes, the exact number is not know in advance, even for Google).
I don't know. Andrei
Apr 04 2011
parent Bruno Medeiros <brunodomedeiros+spam com.gmail> writes:
On 04/04/2011 19:57, Andrei Alexandrescu wrote:
 On 4/4/11 1:19 PM, Bruno Medeiros wrote:
 On 04/04/2011 19:04, Andrei Alexandrescu wrote:
 On 4/4/11 12:53 PM, Bruno Medeiros wrote:
 BTW Andrei, do you any idea or estimation of how many proposal slots
 Digital Mars might get from GSoC?
We have eight student applications so far. Andrei
I know that, I can see it in my Google-Melange dashboard... :p I meant the number of student slots that Google will allocate to each organization (and yes, the exact number is not know in advance, even for Google).
I don't know. Andrei
I've now come across this link: http://socghop.appspot.com/document/show/site/site/studentallocations which explains the process in a bit more detail. Let's see how it goes then, and hopefully we'll get enough allocation for all the quality proposals we have received. -- Bruno Medeiros - Software Engineer
Apr 08 2011