Howdy, I gave some feedback on IRC, but I will explain it more thoroughly here, so that other prospective GSoC students can gain from the knowledge.
1) You broke things down into weeks, which is great, and exactly what I want to see (hint hint other GSoC students). It would be clearer if you could list the actual days each period relates to, that would help minimize confusion, since various cultures have different definitions of when a week start and ends. 2) You didn't list the bonding period in your timeline. You should :) This is invaluable time for students to get to know their community, and make sure nothing is going to stop them from coding up a storm. Students should work with mentors to make sure that any tools that will be used, such as version control, editors and IDEs, compilers, libraries, etc are familiar and won't present a blockade to completing their project. 3) I would like to see a specific list of which functions will be in your initial implementation. My definition of "initial implementation" is the set of functions which are required to implement a port of Math::Primality to Parrot. The reason I select this as an initial implementation, is because this is a wide enough foundation for things to be built on top of it, while still allowing the rest of the GMP API to be filled out in parallel. If Math::Primality can be implemented, than most cryptography and number theory algorithms are implementable, which will be a very exciting time for the Parrot community. 4) After a good list of deliverables and a specific timeline is specified for the initial implementation (let's call it I1), you should have a definition of I2, which should be the rest of the BigInt GMP functions which are not required for I1. Some of these, while not required, may provide substantial speed improvements than more general functions, so while they may not be required, they very likely will still be essential for optimization. You timeline for I2 can be more vague, because you will only hack on I2 if I1 is complete. Your timeline should reflect I1 tasks for now. As we get closer to the bonding and coding periods, timelines should be updated to reflect reality. 5) How will you measure code coverage? 6) How will you ensure each function implemented has documentation? I hope this helps you build a rock solid GSoC proposal, as well as being a model for what I would like to see from other GSoC students who are currently hiding in the wings (I see you!). Duke On Mon, Mar 28, 2011 at 8:51 AM, Bob Kuo <[email protected]> wrote: > On Fri, Mar 25, 2011 at 2:36 PM, Jonathan "Duke" Leto <[email protected]> > wrote: >> Howdy, >> >> I think you are well-suited for this proposal Bob, but I want to see >> a very detailed plan. I am holding you to a higher bar, since you >> have been through GSoC before :) >> > > https://gist.github.com/890669 is a more detailed plan. Please feel > free to comment on it. I plan on covering only the integer related > functions and am aiming for 100% test coverage. Docs include inline > POD, comments and, if there is time, a tutorial to accompany an > example or two. I'll provide some basic examples of HLLs using GMP > and am open to suggestions of which HLL people would like to see. > > If I finish ahead of time, there are plenty of avenues to continue > work - rational and float functions in GMP, tutorials or more advanced > examples, porting other advanced math libraries, and even libraries > for HLLs. > > Give it a look over and let me know what y'all think > > Thanks, > > Bob > -- Jonathan "Duke" Leto [email protected] http://leto.net _______________________________________________ http://lists.parrot.org/mailman/listinfo/parrot-dev
