Friday, June 24, 2016

Implementing a Schedule

One week ago the work that had been done by Stephanie Douglas and Erik Tollerud was merged into astroplan. I made a straw-man API for scheduling in astroplan, partially based off their work, and submitted it as a proposal PR to get feedback on what makes sense and what should be added/changed to the way that users will interact with the schedulers.

Most of my work this week has been on creating a Schedule class that would provide a consistent format for the output of the schedulers. This process required modifying the schedulers to use the Schedule class. During my modifications I found, and fixed, a couple of bugs in their code that were causing faulty results. I also started writing the body of tests that will be needed to make sure each part of the scheduling is working properly. My PR for the changes can be found here.

Looking forward, I'm going to be working on the scheduling to make it more flexible and extensible. The first step for that will be allowing a user to input multiple targets that must be observed in succession, and the code being able to handle that properly.

Friday, June 17, 2016

Getting feedback and planning

This last week has been a productive one for me, in coding, communication and understanding the underlying framework used in astroplan. My mentors mentors Eric Jeschke, Brett Morris, and Erik Tollerud have helped me in coming up with tasks that give me a better understanding of the code and expectations while adding to astroplan. The main piece of work that I did is on a constraint that distinguished between dark grey and bright time. While writing it, I gained a better understanding of how constraints are used in astroplan and how to write tests for them. The comments on that, and a doc page for terminology that we use have, helped me understand the importance of communication is for this project. There are many other astronomers who have a better understanding of syntax and expectations than I do who can help me understand when an error occurs or a description is ambiguous.

I'm starting work on the scheduling side of things and my first task was to write out how I would imagine working with the scheduler would look like. Right now it looks like https://github.com/astropy/astroplan/pull/178, though it might change from feedback and discussion. At the code level, I'm starting to work on creating a schedule class that the schedulers can interact with.

Thursday, June 9, 2016

Gitting started

Getting started working on astroplan has been a mix of reading up on work people have already done (https://github.com/astropy/astroplan/pull/137, https://github.com/astropy/astroplan/pull/151), brainstorming scheduling styles, planning using astroplan, and figuring out how git works. Working with git has been interesting and being told what to do by Brett Morris and by Github has been very useful in learning the flow of pulling, branching, committing, pushing etc. I'm looking forward to start coding in earnest as a developer.