Re: [sage-devel] Making the transition from user to developer
Thank you so much for these ideas. On Thursday, July 12, 2018 at 7:44:45 AM UTC-7, mathzeta2 wrote: > > On 12/07/2018 05:28, Ursula Whitcher wrote: > > On 7/11/2018 3:19 PM, prof...@gmail.com wrote: > >> What would be a good way for a Sage user with a basic programming > >> background to learn about Sage development and how codebases are > >> built? Projects ultimately of interest so far are (1) a > >> "show-my-steps" feature for differentiation in Sage or (2) a feature > >> for generating proofs by induction for some class of problems. Are > >> there any relevant tutorial-like things? > > > > A very good way is to attend a Sage Days. > > > > There are some tutorials in the Developers' Guide: > > > > https://doc.sagemath.org/html/en/developer/ > > > > A good first project is nearly always finding something unclear in the > > Developers' Guide and fixing it. > > > > Does "a basic programming background" include some knowledge of Python? > > If not, picking up a little bit of Python is a good place to start. > > > > --Ursula Whitcher. > > > > These are good tips. > > More concretely, for the specific project (1), have you looked into > SymPy's manualintegrate module? Quoting the docs [1]: > > "The option manual=True can be used to use only an algorithm that tries > to mimic integration by hand. This algorithm does not handle as many > integrands as the other algorithms implemented but may return results in > a more familiar form. The manualintegrate module has functions that > return the steps used (see the module docstring for more information)." > > Some examples on SymPy Gamma: > http://www.sympygamma.com/input/?i=integrate+log(x^2)#intsteps > http://www.sympygamma.com/input/?i=integrate%28x*sin%283*x%29%2C+x%29 > and the sourcecode for that can be found at > https://github.com/sympy/sympy_gamma/blob/master/app/logic/intsteps.py > > SymPy is included in Sage, and it might be nice to integrate (pardon the > pun) it better. > > Regards, > TB > > [1] http://docs.sympy.org/latest/modules/integrals/integrals.html > -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
Re: [sage-devel] Making the transition from user to developer
Thanks for the great tips. And yes, I heart Python. On Wednesday, July 11, 2018 at 7:28:48 PM UTC-7, Ursula Whitcher wrote: > > On 7/11/2018 3:19 PM, prof...@gmail.com wrote: > > What would be a good way for a Sage user with a basic programming > > background to learn about Sage development and how codebases are built? > > > Projects ultimately of interest so far are (1) a "show-my-steps" feature > > for differentiation in Sage or (2) a feature for generating proofs by > > induction for some class of problems. Are there any relevant > > tutorial-like things? > > A very good way is to attend a Sage Days. > > There are some tutorials in the Developers' Guide: > > https://doc.sagemath.org/html/en/developer/ > > A good first project is nearly always finding something unclear in the > Developers' Guide and fixing it. > > Does "a basic programming background" include some knowledge of Python? > If not, picking up a little bit of Python is a good place to start. > > --Ursula Whitcher. > -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
Re: [sage-devel] Making the transition from user to developer
On 12/07/2018 05:28, Ursula Whitcher wrote: On 7/11/2018 3:19 PM, profgr...@gmail.com wrote: What would be a good way for a Sage user with a basic programming background to learn about Sage development and how codebases are built? Projects ultimately of interest so far are (1) a "show-my-steps" feature for differentiation in Sage or (2) a feature for generating proofs by induction for some class of problems. Are there any relevant tutorial-like things? A very good way is to attend a Sage Days. There are some tutorials in the Developers' Guide: https://doc.sagemath.org/html/en/developer/ A good first project is nearly always finding something unclear in the Developers' Guide and fixing it. Does "a basic programming background" include some knowledge of Python? If not, picking up a little bit of Python is a good place to start. --Ursula Whitcher. These are good tips. More concretely, for the specific project (1), have you looked into SymPy's manualintegrate module? Quoting the docs [1]: "The option manual=True can be used to use only an algorithm that tries to mimic integration by hand. This algorithm does not handle as many integrands as the other algorithms implemented but may return results in a more familiar form. The manualintegrate module has functions that return the steps used (see the module docstring for more information)." Some examples on SymPy Gamma: http://www.sympygamma.com/input/?i=integrate+log(x^2)#intsteps http://www.sympygamma.com/input/?i=integrate%28x*sin%283*x%29%2C+x%29 and the sourcecode for that can be found at https://github.com/sympy/sympy_gamma/blob/master/app/logic/intsteps.py SymPy is included in Sage, and it might be nice to integrate (pardon the pun) it better. Regards, TB [1] http://docs.sympy.org/latest/modules/integrals/integrals.html -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
Re: [sage-devel] Making the transition from user to developer
On 7/11/2018 3:19 PM, profgr...@gmail.com wrote: What would be a good way for a Sage user with a basic programming background to learn about Sage development and how codebases are built? Projects ultimately of interest so far are (1) a "show-my-steps" feature for differentiation in Sage or (2) a feature for generating proofs by induction for some class of problems. Are there any relevant tutorial-like things? A very good way is to attend a Sage Days. There are some tutorials in the Developers' Guide: https://doc.sagemath.org/html/en/developer/ A good first project is nearly always finding something unclear in the Developers' Guide and fixing it. Does "a basic programming background" include some knowledge of Python? If not, picking up a little bit of Python is a good place to start. --Ursula Whitcher. -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
[sage-devel] Making the transition from user to developer
What would be a good way for a Sage user with a basic programming background to learn about Sage development and how codebases are built? Projects ultimately of interest so far are (1) a "show-my-steps" feature for differentiation in Sage or (2) a feature for generating proofs by induction for some class of problems. Are there any relevant tutorial-like things? -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.