[sage-devel] Re: cannot exponentiate a Python int by a real number

2011-02-02 Thread Jason Grout

On 2/2/11 9:57 PM, David Roe wrote:

But int(2)**(1.5) causes the same bug that Dan observed.

I think it's actually a bug and should have a trac ticket.


You're right.  I've opened http://trac.sagemath.org/sage_trac/ticket/10736

Jason

--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org



Re: [sage-devel] Re: cannot exponentiate a Python int by a real number

2011-02-02 Thread David Roe
But int(2)**(1.5) causes the same bug that Dan observed.

I think it's actually a bug and should have a trac ticket.
David

On Wed, Feb 2, 2011 at 22:51, Jason Grout wrote:

> int(2)^(1.5)

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


[sage-devel] Re: cannot exponentiate a Python int by a real number

2011-02-02 Thread Jason Grout

On 2/2/11 9:48 PM, Dan Drake wrote:

This is slightly annoying and unexpected:

 sage: 2^(1.5)
 2.82842712474619
 sage: int(2)^(1.5)
 ---
 TypeError Traceback (most recent call last)

 /home/drake/research/motzkin_plateau/  in()
 TypeError: unsupported operand type(s) for ** or pow(): 'int' and 
'sage.rings.real_mpfr.RealLiteral'

This surprised me when I had something like this:

[n^(1.5) for n in range(5)]

It's trivial to work around this, with ZZ(n) or with [0..4] or whatever,
but it was unexpected. Is this a bug? Does it deserve a trac ticket, or
a smarter user?



It's int(2)**(1.5).  The ** is the exponentiation operator in python. 
We just override the xor operator (^) to also be exponentiation for Sage 
integers.


Jason

--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


[sage-devel] cannot exponentiate a Python int by a real number

2011-02-02 Thread Dan Drake
This is slightly annoying and unexpected:

sage: 2^(1.5)
2.82842712474619
sage: int(2)^(1.5)
---
TypeError Traceback (most recent call last)

/home/drake/research/motzkin_plateau/ in ()
TypeError: unsupported operand type(s) for ** or pow(): 'int' and 
'sage.rings.real_mpfr.RealLiteral'

This surprised me when I had something like this:

[n^(1.5) for n in range(5)]

It's trivial to work around this, with ZZ(n) or with [0..4] or whatever,
but it was unexpected. Is this a bug? Does it deserve a trac ticket, or
a smarter user?

Thanks,

Dan

--
---  Dan Drake
-  http://mathsci.kaist.ac.kr/~drake
---


signature.asc
Description: Digital signature


Re: [sage-devel] Re: FAQ suggestion: I'm a programmer, how can I contribute to Sage?

2011-02-02 Thread Robert Bradshaw
On Wed, Feb 2, 2011 at 1:21 PM, kcrisman  wrote:
>
>>
>> A steering committee might be a good idea, we have JSage which
>> somewhat fulfills this role.
>
> ???
>
> You don't mean the fantastically outdated 
> http://www.sagemath.org/jsage/editors.html
> ...
>
> Do you?  Notwithstanding that this is a good idea (but one which has
> seemed to always fizzle before, like 'editors' etc.).

Well, that was the original intent, and you're right, that hasn't
panned out like planned. E.g. see
http://groups.google.com/group/sage-devel/browse_thread/thread/7c808e84427004/e12d852927e58d9d?lnk=gst#e12d852927e58d9d
and 
http://groups.google.com/group/sage-devel/browse_thread/thread/3d55b95b6873a3f2/7e60b1544d523ec8?lnk=gst
. Fortunately its use is rare, but if it were something more formal
and involved, it might be more rightly called a steering committee.

- Robert

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


[sage-devel] Re: FAQ suggestion: I'm a programmer, how can I contribute to Sage?

2011-02-02 Thread kcrisman

>
> A steering committee might be a good idea, we have JSage which
> somewhat fulfills this role.

???

You don't mean the fantastically outdated 
http://www.sagemath.org/jsage/editors.html
...

Do you?  Notwithstanding that this is a good idea (but one which has
seemed to always fizzle before, like 'editors' etc.).

- kcrisman

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: FAQ suggestion: I'm a programmer, how can I contribute to Sage?

2011-02-02 Thread Tom Boothby
On Wed, Feb 2, 2011 at 7:33 AM, David Kirkby  wrote:
> As a matter of interst, how many people do you expect make use of code
> to solve Rubiks cube? Do you really think that should have been in the
> main Sage library, or would it have been more appropiate to have such
> functionality as optional item?

Well, there are about 45 students enrolled in this course:

http://people.math.sfu.ca/~jtmulhol/math302/

for which we use Sage extensively.

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: FAQ suggestion: I'm a programmer, how can I contribute to Sage?

2011-02-02 Thread Robert Bradshaw
On Wed, Feb 2, 2011 at 7:33 AM, David Kirkby  wrote:
> On 2 February 2011 09:55, Robert Bradshaw  
> wrote:
>> On Tue, Feb 1, 2011 at 6:21 AM, Dr. David Kirkby
>
>>> Sage is something people work on in their spare time, so you can't dictate
>>> to people what they do. But if there was a plan, people could be encouraged
>>> to work on what is considered important. Student projects could be based
>>> around specific goals.
>>>
>>> We should also have status reports. See for example some of the archived
>>> FreeBSD status reports.
>>>
>>> http://www.freebsd.org/news/status/report-2009-04-2009-09.html
>>> http://www.freebsd.org/news/status/report-2008-10-2008-12.html
>>> http://www.freebsd.org/news/status/report-2008-07-2008-09.html
>>>
>>> To me at least, it seems the vast majority of people ware working on what
>>> interests them,
>>
>> Yes, exactly, though I would like to point out that while few things
>> are of interest to the entire Sage community, most code that goes in
>> is of interest to large groups of people.
>
> That's not the impression  I get, when I've seen many times comments
> that X is broken, but nobody is using  X anyway. I've also seen
> comments that "I'm probably the only one using feature Y"

Things that are broken is a heavily skewed sample to things that are not used.

> But I see no logical argument for having any code that is only of use
> to one or two people.

I actually agree here, especially now that Sage has more than one or
two users. I might draw the line lower than you though (if a dozen
people use it, put it in).

> As a matter of interst, how many people do you expect make use of code
> to solve Rubiks cube? Do you really think that should have been in the
> main Sage library, or would it have been more appropiate to have such
> functionality as optional item?

As this gets brought up many times, let me clarify the history (I'm
the one who added it). David Joiner was releasing his popular math
book 
http://jhupbooks.press.jhu.edu/ecom/MasterServlet/GetItemDetailsHandler?iN=9780801890130&qty=1&viewMode=3&loggedIN=false&JavaScript=y
and, among other things, expanding it to talk about Sage. Sage was
extreemly new at this point, so this was a great chance to get
exposure, and one of the examples was showing how to solve a Rubik's
cube using Sage to demonstrate group theory. Of course the Rubik's
group is a very special group, so solving it using the generic word
problem is a very slow way of going about it, and I didn't want Sage
to be known as "the software that takes 75000 times longer than it
should to solve the Rubik's cube." Optimal solutions are a also a very
interesting problem from the group-theoretic perspective, and so it
made sense to put that in along with it. Now it's widely distributed
in print, so removing it would be a bad idea (even if the marketing
side of things was no longer an issue).

>>>  * No documented plan
>>>  * No real documented estimates of time scales
>>>  * No status reports for the project as a whole.
>>
>> Anyone could come up with a plan, but who would enforce it?
>
> Nobody could enforce it. I've made it very clear on a project where
> people devote their time for zero financial reward, you can't force
> them to do anything.
>
>> Who would
>> allocate the resources to make it happen?
>
> Not everything would happen. Nobody will "make" it happen, but you
> will increase the probability of good things happening if one has some
> goals and plans.
>
>> Most large OSS projects have
>> full-time staff as well as many non-paid contributors--we don't.
>
> Do you believe it would be easier to attract funding if those
> considering funding a project could see a set of goals and plans? Or
> do you think people/companies considering funding software projects
> would not care if a project had a plan?

Most grant proposals and other requests for funding have very specific
plans, people, timelines, etc. attached to them. In light of your (and
other people's) concerns, I think it would be very good if there were
a more central location to see this, what people were working on, and
status reports. I may have come across as portraying sage development
as too individualistic--much work is done by individuals, but the
level of a single grant with one or more PIs, their collaborators,
students, etc. with clear-cut goals and timelines has provided a good
level of organization that gets things done, but the funded grants
tend to be of narrower focus than all of Sage.

A steering committee might be a good idea, we have JSage which
somewhat fulfills this role.

- Robert

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: build error for sage 4.6.1 on OS X 10.5.8

2011-02-02 Thread Volker Braun
On Wednesday, February 2, 2011 7:52:08 PM UTC, John H Palmieri wrote:
>
> if [ "$SAGE64" = "yes" ]; then
>echo "64 bit build"
>CFLAGS="-O2 -g -fPIC -m64 "; export CFLAGS
>LDFLAGS="-m64"; export LDFLAGS
> fi
>

Just overwrite CFLAGS/LDFLAGS, no ap/prepending? Nice.

if [ "x`uname -sm`" = "xSunOS i86pc" ] && [ "x$SAGE64" = xyes ]  ; then
># Need to add --with-dffi=no to disable assembly code on OpenSolaris 
> x64. 
># and Solaris 10 on x64. 
># The option is only given if all the following are true
># 1) Solaris, Solaris Express or OpenSolaris (SunOS) 
># 2) Intel or AMD CPU 
># 3) 64-bit build
>./configure --prefix="$SAGE_LOCAL" --with-dffi=no
> else
>./configure --prefix="$SAGE_LOCAL" 
> fi
>

That seems to be the only legit use. Though in an ideal world ECL would have 
an autoconf macro to check that they have suitable assembly code.


-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: build error for sage 4.6.1 on OS X 10.5.8

2011-02-02 Thread John H Palmieri


On Wednesday, February 2, 2011 8:50:36 AM UTC-8, Volker Braun wrote:
>
> Dave, can you elaborate on what SAGE64 is good for besides adding -m64? 
> Adding the compiler flag could easily be done in the gcc wrapper:
>
> http://trac.sagemath.org/sage_trac/ticket/10572
>
> Sorry if this is slightly OT.
>

I just unpacked all of the spkg files and did "grep SAGE64 -R ." from 
SAGE_ROOT/spkg/standard, and got lots of hits.  Here are a few examples:

>From boehm:

if [ "$SAGE64" = "yes" ]; then
   echo "64 bit build"
   CFLAGS="-O2 -g -fPIC -m64 "; export CFLAGS
   LDFLAGS="-m64"; export LDFLAGS
fi

*

>From ecl:

if [ "x$SAGE64" = "xyes" ]  ; then
   echo "Building a 64-bit version of ECL"
   CFLAGS="$CFLAGS $CFLAG64"
   CXXFLAGS="$CXXFLAGS $CXXFLAG64"
   LDFLAGS="$LDFLAGS $CFLAG64"
fi

  [snip]

if [ "x`uname -sm`" = "xSunOS i86pc" ] && [ "x$SAGE64" = xyes ]  ; then
   # Need to add --with-dffi=no to disable assembly code on OpenSolaris 
x64. 
   # and Solaris 10 on x64. 
   # The option is only given if all the following are true
   # 1) Solaris, Solaris Express or OpenSolaris (SunOS) 
   # 2) Intel or AMD CPU 
   # 3) 64-bit build
   ./configure --prefix="$SAGE_LOCAL" --with-dffi=no
else
   ./configure --prefix="$SAGE_LOCAL" 
fi

*

>From eclib:

if [ "$SAGE64" = "yes" ]; then
DYN_FLAGS="-m64"; export DYN_FLAGS
PICFLAG="-m64 -fPIC"
fi
export PICFLAG

-- 
John

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: FAQ suggestion: I'm a programmer, how can I contribute to Sage?

2011-02-02 Thread William Stein
On Wed, Feb 2, 2011 at 8:49 AM, Aleksej Saushev  wrote:
> Robert Bradshaw  writes:
>
>> On Tue, Feb 1, 2011 at 6:21 AM, Dr. David Kirkby
>>  wrote:
>>>
>>> and those changes get put into Sage, without any discussion
>>> of what's actually needed in Sage, and what should be written as an external
>>> program.
>>
>> I think part of this is due to the historical context in which Sage
>> arose. Pre-Sage, the open source mathematical landscape consisted of a
>> few large pieces (e.g. Pari, Gap, Maxima) and dozens of specialized
>> libraries (gfan, ntl, ...) most of which were hard to build, needed
>> manually managed dependencies, and didn't interoperate with each
>> other. The Sage community is often accused of being full of more
>> mathematicians than programmers, and though to some people manually
>> configuring, compiling, and installing various interdependent
>> libraries is all in a days work this is not what mathematicians enjoy
>> spending their time doing (if they even have the background at all).
>
> FreeBSD ports collection and NetBSD portable pkgsrc exist for a decade
> at least. They make all packages build with "make all", install with
> "make install", and track dependencies.
>
>> Along comes Sage with it's kitchen sink strategy (and a huge amount of
>> hard work to get all these systems to build out of the box) and it's
>> hailed as "the easiest way to get X" for many X which were before only
>> available separately. Since then it's grown as we now have many of
>> these these programs working together, hundreds of thousands of lines
>> of new code, and a (subjectively) nice Python and notebook interface.
>
> Along comes monolythic Sage that can't build on neither major BSD
> platform, even though all principal components are there and Sage
> is written in Python itself.

That's false.  Even if it were true, BSD is largely irrelevant to the
point Robert is making, as it has such a small install base (certainly
less than 0.1% of mathematicians use it).

 -- William

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


[sage-devel] Cygwin port, the lack of "top" and memory usage #9170

2011-02-02 Thread David Kirkby
http://trac.sagemath.org/sage_trac/ticket/9170

has the title "cygwin: get_memory_usage isn't implemented, e.g.,
because there's no top"

Whilst I think measuring memory usage via "top" is not a good idea, a
quick Google shows that "top" is available on Cygwin.

http://stackoverflow.com/questions/3503681/cygwin-top-command-see-processes-for-all-users

It's apparenttly "(part of procps library under System)."

It's possible that trac ticket could be closed.

I've not added this comment to the trac ticket, as I've forgot my trac
password and are using a computer where it's not stored. I'll stick
some comment on in a few hours time, when at home.

Dave

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: FAQ suggestion: I'm a programmer, how can I contribute to Sage?

2011-02-02 Thread David Kirkby
On 2 February 2011 16:43, Jason Grout  wrote:
> On 2/2/11 10:33 AM, rjf wrote:
>>
>> 1. What happens if you don't have a plan?
>
>>
>> 2. Who makes a plan?
>>
>
> You have long experience with other open-source projects.  Have they had
> plans?  (I'm really genuinely curious).  Who made it?  How
> comprehensive/detailed was it?  Was the plan a "success" (i.e., was it worth
> making?)  Was the plan followed?  How did you give incentive to follow the
> plan?

> Jason

Obviously that is for Richard to answer, but you also need to consider
that a lot has been learned about software development over the years.
The field has advanced since Richard was actively involved in some of
these projects.

Many software projects have failed, and people have analysed the
reasons for the failure.

http://en.wikipedia.org/wiki/Software_project_management#Project_planning.2C_monitoring_and_control

states the most common reasons for failure are

   1. Unrealistic or unarticulated project goals
   2. Inaccurate estimates of needed resources
   3. Badly defined system requirements
   4. Poor reporting of the project's status
   5. Unmanaged risks
   6. Poor communication among customers, developers, and users
   7. Use of immature technology
   8. Inability to handle the project's complexity
   9. Sloppy development practices
  10. Poor project management
  11. Stakeholder politics
  12. Commercial pressures

There's a little bit about planning on that page

http://en.wikipedia.org/wiki/Software_project_management#Project_planning.2C_monitoring_and_control

There are many models of software development, but most or all of them
have elements of

 * Defining the goals/specifications
 * Planning how to achieve the above.
 * Modifying plans where necessary.
 * Reporting the status of the project.

I think Sage would be in a better position to attract both

* developers
* investors to fund development

if Sage was seen to have more clearly defined goals, and plans on how
to achieve them.

Dave

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: FAQ suggestion: I'm a programmer, how can I contribute to Sage?

2011-02-02 Thread daly
On Wed, 2011-02-02 at 10:43 -0600, Jason Grout wrote:
> On 2/2/11 10:33 AM, rjf wrote:
> > 1. What happens if you don't have a plan?
>  >
>  > 2. Who makes a plan?
>  >
> 
> You have long experience with other open-source projects.  Have they had 
> plans?  (I'm really genuinely curious).  Who made it?  How 
> comprehensive/detailed was it?  Was the plan a "success" (i.e., was it 
> worth making?)  Was the plan followed?  How did you give incentive to 
> follow the plan?

Axiom has a set of goals, made by me, such as 
http://axiom-developer.org/axiom-website/currentstate.html

This gives a place to capture ideas and long term plans.

A "plan" might imply a schedule and, as far as I'm aware,
nobody knows how to schedule software development. This
is especially true of free software.

Is it a success? Well, a lot of the tasks have been
accomplished, some have been abandoned, and some will
take years to finish (e.g. making Axiom fully literate).

How did I give incentive to follow the plan?
Ideas that were discussed and agreed upon were added
to the list of goals. Some of them have been completed
(e.g. the boot language is gone), some of them have died
(e.g. the CCL port is dead), and some of them caused
much controversy (e.g. competing with MMA, autoconf,
boot language) and were "decided" by me. Those who
disagreed forked. 

A project cannot be all things to all people and
someone has to decide what the long term goals are.
But I don't think that a "plan" is useful except 
maybe in the short term among a group of developers.
Open source does not really attract "groups" in my
experience. It is usually a set of single-person
efforts.

Tim Daly




-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: build error for sage 4.6.1 on OS X 10.5.8

2011-02-02 Thread Volker Braun
On Wednesday, February 2, 2011 3:55:27 PM UTC, Dr. David Kirkby wrote:
>
> There is never any point in setting SAGE64=no. [...] ONLY if it is set
> to "yes" will anything different happen. That is usually adding the
> compiler flag "-m64", though in some cases it's a bit more complex.
>
Dave, can you elaborate on what SAGE64 is good for besides adding -m64? 
Adding the compiler flag could easily be done in the gcc wrapper:

http://trac.sagemath.org/sage_trac/ticket/10572

Sorry if this is slightly OT.

>

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


[sage-devel] Re: FAQ suggestion: I'm a programmer, how can I contribute to Sage?

2011-02-02 Thread Aleksej Saushev
Robert Bradshaw  writes:

> On Tue, Feb 1, 2011 at 6:21 AM, Dr. David Kirkby
>  wrote:
>>
>> and those changes get put into Sage, without any discussion
>> of what's actually needed in Sage, and what should be written as an external
>> program.
>
> I think part of this is due to the historical context in which Sage
> arose. Pre-Sage, the open source mathematical landscape consisted of a
> few large pieces (e.g. Pari, Gap, Maxima) and dozens of specialized
> libraries (gfan, ntl, ...) most of which were hard to build, needed
> manually managed dependencies, and didn't interoperate with each
> other. The Sage community is often accused of being full of more
> mathematicians than programmers, and though to some people manually
> configuring, compiling, and installing various interdependent
> libraries is all in a days work this is not what mathematicians enjoy
> spending their time doing (if they even have the background at all).

FreeBSD ports collection and NetBSD portable pkgsrc exist for a decade
at least. They make all packages build with "make all", install with
"make install", and track dependencies.

> Along comes Sage with it's kitchen sink strategy (and a huge amount of
> hard work to get all these systems to build out of the box) and it's
> hailed as "the easiest way to get X" for many X which were before only
> available separately. Since then it's grown as we now have many of
> these these programs working together, hundreds of thousands of lines
> of new code, and a (subjectively) nice Python and notebook interface.

Along comes monolythic Sage that can't build on neither major BSD
platform, even though all principal components are there and Sage
is written in Python itself.


-- 
HE CE3OH...

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


[sage-devel] Re: FAQ suggestion: I'm a programmer, how can I contribute to Sage?

2011-02-02 Thread Jason Grout

On 2/2/11 10:33 AM, rjf wrote:

1. What happens if you don't have a plan?

>
> 2. Who makes a plan?
>

You have long experience with other open-source projects.  Have they had 
plans?  (I'm really genuinely curious).  Who made it?  How 
comprehensive/detailed was it?  Was the plan a "success" (i.e., was it 
worth making?)  Was the plan followed?  How did you give incentive to 
follow the plan?



A professor does not "write a grant to the NSF  or Microsoft or the
NSA".
A professor writes a PROPOSAL  or APPLIES for a grant.
The granting agency AWARDS a grant.  (or not)


I believe I was the one to misuse the term.  Yes, I know the difference; 
thanks for the correction.


Thanks,

Jason



--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


[sage-devel] GSOC 2011

2011-02-02 Thread Harald Schilly
Is there already a google summer of code 2011 thread? If not, here it is.

Basic questions:
1. should we try again?
2. who could be a mentor?

I think, trying the same as last year with a focus on the notebook doesn't 
hurt - especially because of the rewrite with new ideas.

H

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


[sage-devel] Re: FAQ suggestion: I'm a programmer, how can I contribute to Sage?

2011-02-02 Thread rjf
1. What happens if you don't have a plan?

2. Who makes a plan?

Answer 1.
  People choose what to do themselves. For example, making a program
that almost
no one uses faster, maybe breaking it in some subtle way that is not
noticed for
a long time.   Adding a feature "because it can be added".  Making the
program
slower to load and larger by adding some table of data. Failure to do
something
that many people want done, but no one is inclined to do because it is
messy or
requires additional expertise not immediately at hand.

  Sometimes people suggest to other people  (like professors tell
students) what
to do.  The assumption here is the professor has better taste etc,
which is not
always true.

  You end up with a system that is a conglomeration of what people
contributed,
filtered by whoever had a last hand in deciding what to include, which
means
that occasionally good stuff gets left on the cutting room floor.

  Maybe the system ultimately becomes dysfunctional in too many ways
and is
dropped, perhaps to be replaced by something somehow "better".

Answer 2.
  Some subset of participants, maybe a steering group,
 perhaps seeking consensus from a larger
group. In an open-source (etc.) project this is unclear, since any
single individual
can take all existing code and make a project fork. Also, individuals
can  say that they don't want to do some task. This can, of course, be
just the right thing to do in some conceivable circumstances.

In a situation in which rewards are offered (e.g. money, advanced
degrees,
shares of stock, your name on a plaque), the group making the awards
sometimes
has more input on the plan.

Sometimes a plan is made by an individual (allegedly the case of Steve
Jobs at Apple).

Regarding 'grants'
The academic (or whoever)  writes a Grant Proposal.  or Proposes to do
some work.
The funding agency accepts or rejects the proposal.  If accepted, the
agency
and the proposer typically agree to a contract.  Maybe they write a
"grant contract"
or a "grant agreement".

I mention this because Robert misused the term (and he is hardly alone
in doing so...)

A professor does not "write a grant to the NSF  or Microsoft or the
NSA".
A professor writes a PROPOSAL  or APPLIES for a grant.
The granting agency AWARDS a grant.  (or not)

RJF

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: build error for sage 4.6.1 on OS X 10.5.8

2011-02-02 Thread David Kirkby
On 1 February 2011 20:17, jtyard  wrote:
> Thanks Georg,
>
> Before I posted my question, I had tried an earlier build with
> SAGE64="yes", but (of course) that didn't work and I received the same
> error that I posted.  Then I had set SAGE64="no", tried again and got
> the same error.

There is never any point in setting SAGE64=no. All the bits of code in
Sage which make use of the variable SAGE64 are written to check if it
is "yes" - all in lower case. So setting it to "YES", "no", "NO",
"foobar" or unsetting it all have the same effect. ONLY if it is set
to "yes" will anything different happen. That is usually adding the
compiler flag "-m64", though in some cases it's a bit more complex.

To my knowledge, this variable is only needed on older versions of OS
X, and all versions of Solaris. However, there is generally no code
that checks the operating system and SAGE64 at the same time, though
there are the odd exceptions. (There used to be lots which checked if
the variable was set to "yes" and the operating system was OS X, but
that has all been removed, so the variable SAGE64 works on Solaris
where it is needed now, and would also work on HP-UX or any other
platform where binaries default to 32-bit, but can be 64-bit.)

dave

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: FAQ suggestion: I'm a programmer, how can I contribute to Sage?

2011-02-02 Thread David Kirkby
On 2 February 2011 09:55, Robert Bradshaw  wrote:
> On Tue, Feb 1, 2011 at 6:21 AM, Dr. David Kirkby

>> Sage is something people work on in their spare time, so you can't dictate
>> to people what they do. But if there was a plan, people could be encouraged
>> to work on what is considered important. Student projects could be based
>> around specific goals.
>>
>> We should also have status reports. See for example some of the archived
>> FreeBSD status reports.
>>
>> http://www.freebsd.org/news/status/report-2009-04-2009-09.html
>> http://www.freebsd.org/news/status/report-2008-10-2008-12.html
>> http://www.freebsd.org/news/status/report-2008-07-2008-09.html
>>
>> To me at least, it seems the vast majority of people ware working on what
>> interests them,
>
> Yes, exactly, though I would like to point out that while few things
> are of interest to the entire Sage community, most code that goes in
> is of interest to large groups of people.

That's not the impression  I get, when I've seen many times comments
that X is broken, but nobody is using  X anyway. I've also seen
comments that "I'm probably the only one using feature Y"

But I see no logical argument for having any code that is only of use
to one or two people.

As a matter of interst, how many people do you expect make use of code
to solve Rubiks cube? Do you really think that should have been in the
main Sage library, or would it have been more appropiate to have such
functionality as optional item?

>>  * No documented plan
>>  * No real documented estimates of time scales
>>  * No status reports for the project as a whole.
>
> Anyone could come up with a plan, but who would enforce it?

Nobody could enforce it. I've made it very clear on a project where
people devote their time for zero financial reward, you can't force
them to do anything.

> Who would
> allocate the resources to make it happen?

Not everything would happen. Nobody will "make" it happen, but you
will increase the probability of good things happening if one has some
goals and plans.

> Most large OSS projects have
> full-time staff as well as many non-paid contributors--we don't.

Do you believe it would be easier to attract funding if those
considering funding a project could see a set of goals and plans? Or
do you think people/companies considering funding software projects
would not care if a project had a plan?

> - Robert

Dave

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: FAQ suggestion: I'm a programmer, how can I contribute to Sage?

2011-02-02 Thread Robert Bradshaw
On Tue, Feb 1, 2011 at 6:21 AM, Dr. David Kirkby
 wrote:
> On 02/ 1/11 08:50 AM, David Roe wrote:
>
>> I think most people agree that a Windows port is important.
>
> But there's no plan for Sage, which sets out priorities and reasonable
> estimates of time.
>
>> But it still
>> hasn't happened.  My impression is that the reasons for that are primarily
>> that it's
>> 1) hard,
>> 2) not interesting to most Sage developers.
>>
>> There's not much that we can do about the difficulty; if we want it to
>> happen we need to address the second point.  Sage isn't a project where we
>> can really tell people that they have to work on something.  Personally,
>> I'm completely uninterested in working on a Windows port.
>
> I don't know how hard it is, but I got the impression from William only a
> few months back that it did not need a lot of work. But I've come very
> suspicious about time estimates from many Sage developers.
>
> One ticket I was aware was outstanding was that SYMPOW was not working. That
> got fixed when I realised it was an issue on Solaris, so I sorted it out.
>
>> We've tried hiring someone to work on porting Sage to Windows, and it
>> wasn't
>> that successful.
>
> My understanding was that Microsoft sponsored a student for a short period
> of time (2-3 months). It was blatantly obvious to me that it would have not
> been done in that time scale. I think that was supposed to be a native port
> too - not Cygwin. A native port is a *much* harder problem.
>
> To my knowledge, there was nobody else paid to work on a Windows port, but I
> may be wrong.
>
> I know Micheal was paid to work on the *Solaris* port, but went off on a
> tangent and did his own thing. To my knowledge, Micheal was the only full
> time person paid to work on Sage.
>
> But if there was a plan for Sage, like there is for other projects, with
> estimated dates for specific targets, and those kept slipping, then we would
> be aware there's a problem.
>
> Regularly slipping time scales should then be fed back to the people making
> the estimates. They would hopefully realise they were unrealistic in their
> expectations.
>
> Once that is realised, more realistic time scales would be set for future
> Sage goals. Then priorities could be set, based on knowledge of what are
> realistic time scales.
>
> All this is pretty much standard software engineering principles.
>
>> Just waiting until people decide to work on it isn't
>> achieving anything.  One way we've traditionally had success in gathering
>> momentum for a project is hosting a Sage Days workshop.  One focused on
>> Windows development might achieve something, if we can find the funding
>> for
>> it.
>
> Some of the problems seem to be firmly in the hands of people who have
> written code in the Sage library, which simply does not work properly on
> Cygwin. They should be able to sort that out.
>
> Some of the portability issues are not trivial IMHO, but just need hard
> work. I agree it's not the most interesting thing. I also think the time
> estimates I've seen are totally unrealistic.
>
> What is obvious to me is how close the correlation is between Cygwin issues
> and code I'd previously identified as being very badly written.
>
> I can't help feeling William was unwise to start Psage before the Cygwin
> port of Sage was complete.
>
>> The only other thing I can think of would be to hire someone, IF we can
>> find
>> someone with the necessary qualifications and determination.  I don't know
>> how feasible that is, or whether funding for that project would be
>> available.  I have to think that the people who might have funded it may
>> be
>> discouraged by previous failures.
>
> I personally would not let previous failures put me off. Micheal spent a
> couple of years working on a Solaris port, but his failure did not put me
> off. I knew it could be done.
>
>> Even though I don't want to work on it, I'll be a cheerleader for those of
>> you who do.  :-)
>> David
>
> Sage is something people work on in their spare time, so you can't dictate
> to people what they do. But if there was a plan, people could be encouraged
> to work on what is considered important. Student projects could be based
> around specific goals.
>
> We should also have status reports. See for example some of the archived
> FreeBSD status reports.
>
> http://www.freebsd.org/news/status/report-2009-04-2009-09.html
> http://www.freebsd.org/news/status/report-2008-10-2008-12.html
> http://www.freebsd.org/news/status/report-2008-07-2008-09.html
>
> To me at least, it seems the vast majority of people ware working on what
> interests them,

Yes, exactly, though I would like to point out that while few things
are of interest to the entire Sage community, most code that goes in
is of interest to large groups of people.

> and those changes get put into Sage, without any discussion
> of what's actually needed in Sage, and what should be written as an external
> program.

I think part of this is due to the 

Re: [sage-devel] Re: FAQ suggestion: I'm a programmer, how can I contribute to Sage?

2011-02-02 Thread Martin Albrecht
On Tuesday 01 February 2011, kcrisman wrote:
> I respectfully submit that this part of the discussion should move to
> sage-flame.

+1

-- 
name: Martin Albrecht
_pgp: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x8EF0DC99
_otr: 47F43D1A 5D68C36F 468BAEBA 640E8856 D7951CCF
_www: http://martinralbrecht.wordpress.com/
_jab: martinralbre...@jabber.ccc.de

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: FAQ suggestion: I'm a programmer, how can I contribute to Sage?

2011-02-02 Thread Robert Bradshaw
On Tue, Feb 1, 2011 at 3:28 PM, Jason Grout  wrote:
> On 2/1/11 5:12 PM, kcrisman wrote:
>>
>> Maybe a few of us should get together and offer a bounty...
>
> Or write a grant!

I don't think funding is the sole (primary?) bottleneck--if we had a
(modest) pile of cash, who would we hire? I honestly can't think of
anyone that has the time, expertise, and motivation right now. That
being said, I am optimistic that it will happen.

- Robert

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: FAQ suggestion: I'm a programmer, how can I contribute to Sage?

2011-02-02 Thread Robert Bradshaw
On Tue, Feb 1, 2011 at 3:10 AM, Emil Widmann  wrote:
>> > While I use Sage daily on my research I decided that I could not use sage
>> on my classes for freshmen students until it works on windows.
>
> I am curious, why is using the virtual machine image not feasable?

We have a virtual machine. Obviously many people don't find this to be
good enough.

> On new computers it should run with acceptable speed. In classroom it
> should be even possible to setup a simple server with the VM?

I think for many (most?) classroom scenarios, setting up a server is
by far the best option. Of course being able to install it on their
own machines is still valuable (I do) but that group tends to not be
as Windows-dominated.

- Robert

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


[sage-devel] anthropological analysis of Fedora's online development community

2011-02-02 Thread Minh Nguyen
Hi folks,

The following blog post contains a distillation of a Master's
student's anthropological research on the Fedora online development
community:

http://www.cyber-anthro.com/beta-an-exploration-of-fedora%E2%80%99s-online-open-source-development-community/

There are numerous points in there worth considering in the context of
the Sage project. In particular, note this excerpt:


A possible solution to any perceived barriers to becoming a
contributor could be addressed by providing easy ways of finding and
accessing people already within the community who can and want to
help.

As an interviewee stated:

"So I think we are pretty bad at having resources where novices can
stumble across things on their own and "get into" the community all by
themselves. But we’re really good at – when an existing community
member meets a new person, they can usually help them get started very
well. And that’s the thing – I think that our materials, perhaps,
should be more geared towards "find a person to help you through this
stuff." I think they try to be, but they aren’t always clear enough.
Because being part of the community is about working with the people.


The above brings to mind the numerous Sage Days workshop.

-- 
Regards
Minh Van Nguyen

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org