GSoC 2007 Report Mike Haertel: Lin Alg - sympy/sympy GitHub Wiki

GSoC 2007 Linear Algebra Report

My Project

I proposed a linear algebra module for !SymPy including the standard stuff like determinants, inversion and such

Pre-SOC

Contacting the project member was a good idea. I got great feedback regarding my project content and difficulty. Also, meeting people (even if via email) was great since they were very cool and put me at ease.

Startup

First piece of advice: contact your mentor ASAP and set down a schedule or plan of contact and stick to it. Constant contact with your mentor is key.

The best thing to do when learning the code is to pick a simple module is deconstruct the code. My !LinAlg one is pretty straight-forward (hint, hint). So pick one and really figure that code out. Maybe write a couple of play function here and there.

During

Second piece of advice: keep in touch with the community via the mailing list. They have great ideas of possible suggestions.

I had a very nice outline thanks to the mailing list members and so coding it all out went quite smoothly. Working on my own time takes a bit of discipline so I tried to keep the same stretch of a few hours free for work everyday.

I suspect one of the things that help out a lot is to overestimate the time you think things will take. I got sidetracked more than once writing additional functions I needed.

Wrap-up

I finish my content a bit early so I wrote a tutorial and an extra function or two. This is where the mailing list was very handy since they helped suggestion addition work I could take on.

Overall

I think that SOC programs vary from group to group. I can say that !SymPy is an exceptional project to work for since everyone is active and patient with newcomers - which is always appreiciated.