Tag Archives: SunPy

Progress mid term

After a month into gsoc coding period, I have learnt many new things about python and git and also how OSS community work. This has been a great experience for me to work with people who are so willing to help a beginner! 
Currently I have created a PR to merge various files that has been quantified which includes:

1) sunpy/image/coalignment.py

2) sunpy/image/tests/test_coalignment.py

3) sunpy/instr/rhessi.py

4) sunpy/physics/transforms/differential_rotation.py

5) sunpy/physics/transforms/tests/test_differential_rotation.py

6) sunpy/sun/sun.py

7) sunpy/sun/tests/test_sun.py

8) sunpy/util/tests/test_unit_conversion.py [will be removed soon]

9) sunpy/util/unit_conversion.py [will be removed soon]

There were many roadblocks and mistakes that took consumed many hours but they were interesting. I messed up and pushed a error branch to master which could have deleted all my progress. I learnt the hard way that I should not mess with git without thinking! 

Also the spectra integration(which I have done, and i will create a PR soon) was quite tough to understand for me. On the bright side I learnt many new features of python going through that code! 
My next tasks would be to integrate maps and wcs with astropy. 

PR link

Completed work till now.

Last post, I mentioned that I will work on spectra module, but it didn’t go that way. As for now, I have finished integrating these modules:

1) /sunpy/sun/sun.py

2) /sunpy/coords/util.py

3) /sunpy/util/unit_conversion.py

I have also written tests for them, but unfortunately, I could not get the util.py one to work. I will look at it later, when I again get in the mood to write tests( writing tests is not as fun as I thought it would be). I will work on integrating other modules, while keeping the /sunpy/map to the last. 

Coding period, beginning

Its been two days since the coding period began. I have started working on the integration of astropy units in Sun module, as I believe it will easier to start with, and to understand the codebase of SunPy. Also I plan to create some weekly, tasks for myself, to get things done and it will act as a deadline for me. These weekly tasks will include completing
certain number of modules for that week. I also hope that integrating the codebase, a certain number of modules which I should decide on, will serve as a good mid-term evalution goal for me.
As for now, I have(hopefully) completed the integration of sunpy.sun package. I have yet to add the necessary doc strings.
I have also started the sunpy.coords module integration.
Also in these coming two weeks I plan to complete the integration of:
sunpy.coords module
-util.py

sunpy.map module
-compositemap.py
-mapbase.py

And if possible:
sunpy.spectra module
-spectrogram.py
-spectrum.py

As for what I have done upto now, here are some links.
1) sun.py

2) test_sun.py

3) util.py

That is all I have done up until now. And the changes I have made, might not be the the best possible approach. So its highly likely that I will be changing it again as I go on learning about it.

Community Period end

This would be my second post here in this blog. As the name of this period implies, this time is used to communicating with my mentors, and other people in SunPy as well as reading docs and other important documents.
My exams finished on 7th May so before that I basically did nothing related to project. But to get up to speed I spent more time  to read the docs, codebase and practice code. Proper references and good materials to read was suggested by David, on a teleconference that we did on 8/05/2014. Unfortunately I missed a SunPy dev meeting thats held on every Monday at 21:30(+5:30gmt). Also it seems like Monday 21:30 would be a bad time for me. 
Reading the docs and codebase, I came across various roadblocks and got to know that there are many things I don’t understand. Fortunately I used this time to level up my knowledge. Although there is still a lot of things I have to know, but that can’t be done just by reading. 
In brief I used this time to go through astropy.units module to know how to integrate it with sunpy codebase. I played around with quantities to get a better idea about it. There was also a wcs tutorial that David gave me to read. Further I used this time to get familiar with git.
This will mark the end of community period(3 days after writing this post). I feel excited as well as nervous as this would be my first big scale project. Hopefully I will have a wonderful summer working on this project! 

Getting selected for GSoC 2014

Even now I have a hard time believing that I was actually selected for GSoC. Regardless, I am in great joy that it actually happened.
I first got to know about SunPy whilst I was searching for an organisation that I could contribute after looking in the accepted groups under Python umbrella. I have an interest in astronomy, especially related to all the mysterious objects found in universe. But I hardly have any knowledge about all the technical details. Still I decided to contribute and make some connection with the people in SunPy.
Days passed and I learnt many new things, which I couldn’t have if it was not for people there. I started to realize the amazing capabilities of python and learnt so many new features about python. As GSoC came closer, they released the idea page and I immediately started researching about it. It took me atleast 20 days to prepare the proposal and finalize it.
Looking at other proposals, I realized I very less chance to actually make it, but fortunately because of the number of seats, I made it. Although me and one more student have been assigned the same project, but its probably better if we do different projects.