You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by thuan <du...@gmail.com> on 2019/04/01 23:49:01 UTC
Lam Gia Thuan - GSoC19 - Numbers 96: A few questions about the topic!
Dear Mr. Gilles, Mr. Eric Barnhill and other mentors of the Apache
Numbers Project,
my name is Lam Gia Thuan, a computer student at the Frankfurt
University of Applied Sciences. My main interest is algorithmic problem
solving. Albeit it is not really realistic, I am really proud that I
have coded lots and lots of algorithms for as long as I can remember.
For Java '8', I have one year of practical experience. As a student, I
know my experience is nowhere enough, but I am willing to learn and do
everything I can to complete the task.
I find the topic "Port and redevelop interpolation libraries from
commons-math" interesting since I will have the chance to work with
different numeric algorithms and I can make a real impact upon
completion since this fundamental library may be used by ten thousands
of researchers in the world. Hence I would like to aim for it in GSoC
2019. Nonetheless, there are still certain questions I would like to ask
and I would appreciate it if you can give me your assistance so that I
can fully understand the scope of this project. Thank you very much.
In detail, I would like to ask the following questions:
1. *What is the complete scope of this project?* Is it only NUMBERS-96
or all NUMBERS-related JIRAs? I want to know it to ensure where to
focus.
2. *Is it okay if I am not familiar with Interpolation**'now'?* The
truth is, Interpolation is an area I have not known about, which is
why I find this task more exciting since I can definitely learn
something completely new.
3. Are there any specific requirements in terms of skills? *How do you
assure that I have the skills (now or in the near future) that you
need for this task?*
4. By porting and redeveloping, is it only about translating to Java 8?
I mean: *Will there be any research areas for improving the
performance of these algorithms in time complexity and memory*? I
really want to know, since I am thinking of a thesis topic after
this and it would be great if I can make use of this project.
5. *Do we implement any algorithms other than those available in
commons-math?*
6. By documentation, what kind of documentation would you expect? *A
javadoc like the old commons-math or a user guide with examples like
that of **JUnit 5
<https://junit.org/junit5/docs/current/user-guide/>**?*
7. By Java 8+, *do you expect Java 11 also*?
8. In the JIRA, there is no requirement for tests?*Will we implement
tests? If we do, will we implement both accuracy tests and
performance tests?* I would like to know to put them in the
deliverables.
These are all the questions I have for now. I would be happy if you
can help me clarify them, so that I can understand everything well
enough for the project. If you have questions for me, please do not
hesitate to let me know, and I will definitely give you the most
positive reply.
By the way, the link to the package summary in [ NUMBERS-96 ] has
one wrong character ')' at the end, so it is basically inaccessible.
Happy Coding.
Lam Gia Thuan
/Computer Science Student at the Frankfurt University of Applied
Sciences/Vietnamese German University./
Re: Lam Gia Thuan - GSoC19 - Numbers 96: A few questions about the topic!
Posted by Eric Barnhill <er...@gmail.com>.
Sorry, a bad keystroke combination sent that early, one reply is not
finished. Never alternate between vim in one window and gmail in the other.
2. *Is it okay if I am not familiar with Interpolation**'now'?* The
>> truth is, Interpolation is an area I have not known about, which is
>> why I find this task more exciting since I can definitely learn
>> something completely new.
>>
>
> Ideally you have:
>
>
1. Sufficient Java background demonstrable through a GitHUb repository, and
perhaps a track record of other collaborations
2. Sufficient mathematical background. You need to know something about
polynomials and related function families, how functions are approximated,
particularly least squares and weighted least squares, some familiarty with
calculus and numerical methods, some work with matrices as many
interpolations are found through solving a linear system, and ideally some
knowledge of Fourier and other frequency-domain methods.
Re: Lam Gia Thuan - GSoC19 - Numbers 96: A few questions about the topic!
Posted by Eric Barnhill <er...@gmail.com>.
Lam,
A warm welcome to you. I have replied within your message below.
On Mon, Apr 1, 2019 at 4:49 PM thuan <du...@gmail.com> wrote:
>
>
> 1. *What is the complete scope of this project?* Is it only NUMBERS-96
> or all NUMBERS-related JIRAs? I want to know it to ensure where to
> focus.
>
It is only NUMBERS-96 and would focus on interpolation.
> 2. *Is it okay if I am not familiar with Interpolation**'now'?* The
> truth is, Interpolation is an area I have not known about, which is
> why I find this task more exciting since I can definitely learn
> something completely new.
>
Ideally you have:
> 3. Are there any specific requirements in terms of skills? *How do you
> assure that I have the skills (now or in the near future) that you
> need for this task?*
>
Your proposal should point to some examples of previous Java coding that
show you have the necessary knowledge of Java and sufficient mathematical
background.
> 4. By porting and redeveloping, is it only about translating to Java 8?
> I mean: *Will there be any research areas for improving the
> performance of these algorithms in time complexity and memory*? I
> really want to know, since I am thinking of a thesis topic after
> this and it would be great if I can make use of this project.
>
I would be more concerned you grasped the basics of the interpolation
first. As far as this code library goes, there is almost certainly room to
improve its performance. As far as a thesis goes interpolation is a pretty
well worked out mathematical problem, but there are a lot of good CS
applications, for example in video games, that you could apply it to.
> 5. *Do we implement any algorithms other than those available in
> commons-math?*
>
The current framework in commons-math is in my opinion good and the first
priority is to turn this into a freestanding library.
> 6. By documentation, what kind of documentation would you expect? *A
> javadoc like the old commons-math or a user guide with examples like
> that of **JUnit 5
> <https://junit.org/junit5/docs/current/user-guide/>**?*
>
Both. You will need to follow Javadoc best practices, and you should
conclude the work with some kind of user friendly document.
> 7. By Java 8+, *do you expect Java 11 also*?
>
Target Java 8.
> 8. In the JIRA, there is no requirement for tests?*Will we implement
> tests? If we do, will we implement both accuracy tests and
> performance tests?* I would like to know to put them in the
> deliverables.
>
There are already tests. Porting the tests will be step 1. Then we can
evaluate how good the testing coverage is and what changes to the test
library need to be made. That would be good experience for you I think.
> By the way, the link to the package summary in [ NUMBERS-96 ] has
> one wrong character ')' at the end, so it is basically inaccessible.
>
I think Gilles just fixed that.