Monday, 22 August 2016

Dessert.

So as GSOC comes to an end it’s time to serve dessert. I haven’t been good at keeping this up to date, though I have a couple of non-posted entries but alas the time has come to wrap this up. While I still have some small features which currently lie in two PRs (#4 & #5) to finish developing we are releasing saba 0.1without these.

My PR#5241 to astropy is currently open but I think I have made most of the corrections required. The code within it provides a means of inserting external fitters into the astropy.modeling.fitting namespace. This is achieved by loading entry points which are then tested to check they extend the fitter class before being inserted into fitting.

Saba is name of the package I have developed (help from my mentors), we have just moved the repo into the astropy org (in case I win the lottery or mortally am injured in a car accident - depending on which of my mentors you ask). Saba acts as an interface between Sherpa an x-ray fitting package and Astropy’s modeling subpackage through the use of a fitter which acts as a Bridge between the APIs of the two packages. The documentation can be found here. Documentation…

We we’re intending to make the two sets of models work together however, we decided instead to extend the fitting options to allow the use of sherpa’s MCMC object. So in some ways we exceeded the brief, in others we didn’t.

I’ve learnt a lot during GSOC, having weekly actions gave am something to focus on - short term goals meant that I didn’t wander too far off track but left room for experimentation. The code reviews helped to shape my code into a cleaner structure and made me implement better practices (docstrings - although I still forget sometimes). My use of git has become semi-proficient although sometimes I forget to get off master. I’ve learn’t about continuous integration services and I’ve had my fair share of problems with them. The pypi packaging was pretty easy but I’ve still yet to get conda working.

So although this isn’t really the end as I still have somethings to finish (conda packaging, a couple of pull requests to close and no doubt lots of issues to fix), this projects is going to relegated to breaks from writing my thesis.

A massive thank you to Tom, Omar, Moritz and Doug for their help and insight during the project. They made this an enjoyable experience. Also thanks to my better half for the projects logo which makes Tom want to use the package.