Give students more exposure to real-world software development scenarios (e.g., distributed development, software licensing questions, mailing-list etiquette)
While it is hard to count how many people are using free software by looking
at (say) sourceforge statistics --- some people get secondary distributions --
for packages of Maxima, the vast majority of direct downloads, at least, are for
Windows.
Sage architects seem to believe it epitomizes a high level of software
engineering. Yet it cannot be run natively on the (still) most highly
available platform.
Therefore it is first of all entirely pointless if you propose
something different, because you should have addressed that to all
students who submitted projects and not Sage – and second of all you
do not know all the other submitted proposals (which will not be
disclosed).
Harald
First of all, its the Google summer of code and not the Microsoft summer of code ;-)On Thursday, May 30, 2013 5:07:22 PM UTC+1, rjf wrote:While it is hard to count how many people are using free software by looking
at (say) sourceforge statistics --- some people get secondary distributions --
for packages of Maxima, the vast majority of direct downloads, at least, are for
Windows.That is because everyone but Microsoft has solved the problem of package management.
Every linux distribution lets you install maxima with a one-liner, cryptographic chain of trust to the packager included. Maxima for windows still requires you to download an executable file from the internet with a web browser. Your download statistics is for users without package management.Sage architects seem to believe it epitomizes a high level of software
engineering. Yet it cannot be run natively on the (still) most highly
available platform.Or as I call it, the most quickly declining platform. You would do a disservice to students to teach them today about platforms that will clearly be obsolete by the time they will enter the workforce.
I am going to respond to the comments below, since they come from a
senior member of the symbolic computation community. I would have
appreciated them a lot more if they were better informed, at least by
reading the original project proposal also posted on this list [1], and
intended as constructive criticism instead of just trolling.
[1] https://groups.google.com/forum/#!topic/sage-devel/00_Is5q_0IY
<snip>
The point of the benchmark framework is to be able to repeat the
measurements when the backends change, on different platforms, etc.
See explanation of item 2 from [1].
> 2. To determine over an arbitrary span of floats which program is
> most accurate and fastest requires a fairly
> sophisticated set of tests. For example even a function like sine
> can be delicate to evaluate, say at a high integer
> multiple of pi. And how do the functions respond at singularities?
> Just generating random arguments is
> not sensible.
Again, see explanation of item 2 from [1].
> Oh, for some programs you may need to figure out what to do with
> unbounded inputs (integers, bigfloats).
How is this related? We already have interfaces to the packages
mentioned above to handle conversion issues.
> > 1.
> > 2. create symbolic wrappers for all the special functions that
> > can be evaluated numerically by a package included in Sage,
> >
> >
> Um, I'm not sure what is required here, but maybe just bookkeeping??
Yes, these are simple wrappers in Sage. Somebody needs to write them.
> > 1.
> > 2. create a data structure for generalized hypergeometric
> > functions and extend the symbolic wrappers to obtain
> > representations in terms of generalized hypergeometric functions
> > when possible,
> > huh? Wouldn't it always be possible to express generalized
> > hypergeometric
> functions as generalized hypergeometric functions?
For example, we want the software to convert bessel_j(2,x) to
1/8*x^2*hypergeometric_pfq(0, 1, 3, -1/4*x^2).
> If you mean to simplify them, whose algorithm are you going to use?
> Or did you not know about such things?
The goal is to provide a basis to implement algorithms used in DDMF [2].
[2] http://ddmf.msr-inria.inria.fr/
I think you badly underestimate the value of a skilled Microsoft Windows expert now and over thenext decade or more.
On Thu, May 30, 2013 at 9:05 PM, rjf <fat...@gmail.com> wrote:
> As I said previously, I think the lack of
> a mentor in this area may disqualify GSoC Sage projects in this subject.
I cannot follow you.
Let's consider the following case: There are about 100 project
proposals submitted. Several ones of them are about Android, none of
them is about Windows – all the others concern different areas. Now,
please explain me:
1. How a mentor "in the area of Windows" should have an impact in
having a project about Windows in that case?
2. Why are all projects regarding areas other than "Windows"
automatically disqualified?
Interesting perspective. Where did you get the $10k/year difference?
You seem to think that Microsoft will just disappear.
continue to ignore the elephant notin the Operating System Room, namely native Windows XP, Vista, 7, 8 ...
Thank's for the above clarification.
On Thursday, May 30, 2013 12:08:02 AM UTC+2, rjf wrote:continue to ignore the elephant notin the Operating System Room, namely native Windows XP, Vista, 7, 8 ...
On Friday, May 31, 2013 7:39:02 AM UTC+1, rjf wrote:Interesting perspective. Where did you get the $10k/year difference?
I think the mentor thing is a red herring, though; the number of projects proposed on Windows probably would roughly match the number of mentors (at least by proportion), because you wouldn't likely get interested in Sage development in the first place unless you were on Linux or Mac.
On the other hand, there are people working on a cygwin port. I
haven't tested it, ... Why is it suboptimal? (one guess: you can't
Lisp Programmer $95,000.
I repeat. Generating random arguments is not sensible. (Incidentally,
you will still need to be able to generate the correct answers for these
functions. This seems to have been overlooked.
What do you do if your benchmark test shows slightly
different answers from the systems?)
My point is that this is poorly formulated as a question, and the proposed answer is also
poorly thought out.