Skip to content
Nabil Freij edited this page Feb 22, 2024 · 4 revisions

Organization: SunPy in OpenAstronomy

SunPy Gallery, Docs, Website Upgrades

  1. Student Information
DavidPS: Don't forget the link to the blog
  1. University and Education
  • University: The LNM Institute of Information Technology

  • Major: Computer Science and Engineering

  • Current Year : 1st

  • Graduate Year: 2019

  1. Programming Experience
  • Intermediate in C language

  • I recently worked with a Professor on a research project related to dark matter, dark energy, Gravitational waves in which I worked with GNU plots and also involved a lot of C programming as well.

  • Intermediate knowledge of Python and Python for Data Science. I started learning Python about 2 months ago.However I haven't worked on projects involving Python.

  • I am comfortable in writing programs in Python. Also, I am pretty comfortable working with Matplotlib.

  • I did workout all the sample examples given in the documentation analyzed on changing a particular attribute what changes come to the LightCurve/Maps.

  • I am comfortable working with Git/Github.

DavidPS: Could you add links to examples of the projects you've been involved?
  1. Proposal Abstract
  • I intend to take up the SunPy Gallery, Docs, Website upgrades idea. This would involve some research on the SunPy existing tutorials i.e. Lightcurve tutorial, SunPy overview and SunPy 0.6 Release Preview (which support Jupyter )as well as on the existing map and Lightcurves submodules, data clipping, masking, map cubing etc.

  • Also it would involve improving the SunPy documentation making it more interactive for new users. Inserting more information on these ( Plotting in SunPy, Time in SunPy,Region of interest, Customizing SunPy) would be my aim

  • The work on the website of SunPy involves writing blogs improving documentation.

  • For plotting I would use Matplotlib.

  • I did checkout the SEP_007 so I am pretty familiar with what. has been done till now on SunPy.SEP_007 The proposal makes an API change, which will move LightCurve to follow the API of the Map submodule.

DavidPS: It would be better if the links are to the sunpy repository
         (unless you are changing something that you want to show)
  1. Software Packages to be used Numpy, Matplotlib,Scipy,Astropy Numpy : Since, the project involves working with scientific data. This requires the use of Numpy . Matplotlib : It will be used for plotting lightcurves as well as is essential when changing a bit of data of maps submodule. Sphinx : Sphinx is a tool that allows us to create as many restructured documents as we want and then it merges them together into a single website or a book.It uses HTML, LaTeX as its output format. I do have a good knowledge of HTML,LaTeX and have started using Sphinx as well. Since Scipy,Astropy are dependencies of SunPy, I might need them while working on the project.

  2. How will I complete the Project

      I started  looking into SunPy about 2-3 weeks back. I was
      pretty active on IRC asking out mentors about SunPy. I am pretty
      familiar with the software now. My main task is to look into all the
      things I could do with Jupyter Notebooks(as I don't know much about it).
      On the programming part, I keep looking into Python Docs, Edx courses.
    
      I will go through the documentation again and again so that I
      can make it better and better. Since the topic in spotlight is
      LightCurves so I will try to add to the documentation of LightCurves as
      much as possible.
    
      I am a beginner and did go through SunPy documentation lately,
      so I remember on which topics I faced issues so will try to include them
      so that new users don't face the issues I faced
    
      The website's gallery tab is in beta version so I will try to
      improve the gallery and also if I am able to do major changes to SunPy ,
      I will try preparing SunPy enhancement proposals(SEP).
    
  3. Benefits to the Community

      Since I started my journey of development in SunPy lately I
      might be able to address more issues that beginners face than someone
      else. The website of SunPy is still in development state until the
      completion of my project it would be in a better state than it is at
      present. Small things that otherwise may not come into notice of
      developers will be solved as my main aim would be to work on
      documentation, website etc.
    
  4. Open Source experience

      **Google Code-In 2015**: I participated in Google Code-In 2015 and
      was successful in completing a task under the community FOSSAsia in
      which I learned using Git, IRC, IRC etiquettes. Also, I did work on a
      Hello World example task of RTEMS organization due to which I got to
      know how to build things.
      Link : <http://hemantskhatri.blog.com/2016/01/09/google-code-in/>
    
DavidPS: add links to these, that way mentors can get a better picture of
         such projects.
      Recently I made 2 pull requests:
  1. #1710: It involved change in Developer's guide document, also changed another file for the issue #1704.

  2. #1707: This pull request tried to make a diskspace check before downloading sample data . My work on this is still on.

I have been a Ubuntu user for more than 6 months .

  1. TIMELINE

22 April -23 May (Community Bonding Period)

This period will be dedicated to knowing about the project more and more. I would seek answers as in what format(bug fixes, tutorials, SEP's) do my mentors want me to improve the website and the documentation(Region Of Interest ,Customizing SunPy etc), which subtopics does the SunPy community expect me to focus on the most.

23 May – 20 June

This period will be dedicated to inserting tasks in the Docs and refactoring the Net Documentation. Probably improving present docs and inserting new ones in SunPy User Guide (mainly Plotting in SunPy, Time in SunPy, Region of Interest, Customizing SunPy) would be my main target. Some Possible options would be:

  1. Adding histogram, customization using Matplotlib basic tutorial

to Plotting in SunPy. – 1 week(23 May - 30 May)

  1. Since ROI module is still under development I will make it more

developed so that it contains more information about a particular time range. 1-2 weeks (30 May- 10 June)

  1. Customizing SunPy contains docs related to only specifying

location of files being used. Probably I plan to add more ways to customize it. Though presently I have no such idea in mind. – 1 week (10 June - 15 June)

  1. SunPy lightcurve under API reference is probably too short.

Adding more options to lightcurves such as merging two graphs or customizing these curves . – 1 week (15 June - 20 June)

20 June – 27 June

This week will act like a buffer , things that have been left incomplete will be done else if nothing's incomplete I plan to begin my work on SunPy gallery.

27 June – 25 July

This period will be dedicated to improving and adding examples to SunPy gallery. Probably a SunPy map tutorial,also I plan to add some video tutorials on basics of Lightcurves and Maps.These videos will be of 5-10 minutes that would teach basic concepts as well as how to plot maps and lightcurves, modifying them etc.(10 days)

Also, the main task would be to make full use of Jupyter notebooks (which I would have learned by then).I would mentors' guidance regarding Jupyter notebooks and how well I can make use of it. Adding tutorials for various options available with Matplotlib could be one option as well.(15-20 days)

DavidPS: a break down as the block above would be helpful.
         Complement these with details like which kind of video
         tutorials you have in mind (shorts, long, video only, etc.)

25 July- 15 August

Insert Tasks for the Website would be done in this period.Website has a pretty old-fashioned layout. I plan make the website layout a bit better by adding background images in the About and Blog webpage. Also here I would review my work on the website continuously in my college. (7-10 days)

A much need FAQ section could be added to the website. Also, if time permits I would add some tutorials for Astropy as well. FAQ section would contain questions related to Google Summer of Code, how to start contributing , fixing issues, using Git/Github etc. (5 days)

Would look forward to some bug fixing or further changes in documentation.(5 days)

DavidPS: Same thing as above, more detail the better.

15 August – 29 August Writing tidy code, tests about which I plan to learn in near future, improve documentation and submitting code sample.

I have a keen interest in Cosmology and Astronomy . I will use the knowledge I acquired in my SunPy project in the research project I have been involved and also in other tasks related to computer science and astronomy. This is not the end,I will be continuously involved in the community contributing to it's development by fixing bugs solving issues etc.

DavidPS: There's an orthographic mistake here!
         Also, how/why would you keep involved with the community?
  1. Commitments

I have my end Semester exams from 15 April – 8 May so I won't be able to devote most of the time to the project. Still I would try my best to take out 2-3 hours a day for the project.

Also due to a family function in mid-June I might take 2 days off. Rest I have no other summer plans so would be working around 6-7 hours a day making it around 35-40 hours a week. I have 24*7 access to high-speed internet. I have not participated in GSoC before and I am not applying to any other organization .

  1. About Me

I am a first-year Undergrad at The LNM Institute of Information Technology, Jaipur, India.

My interests are Data science, Problem solving. I also took a course in Discrete Mathematical Structures, Shell Programming . My open Source journey began from November 2015 when I participated in Google Code-In. Though I didn't contribute much but I learned the basics of open source i.e. Git, IRC etc. Other than Python I am pretty good at C programming and also used it recently for my research project about which I had mentioned earlier in this document. On the non-technical side, I am a Badminton Player.

  1. Eligibility

Yes, I am eligible to receive payments from Google. To contact feel free to drop me a mail on hemant.skhatri@gmail.com .

DavidPS: in general looks good, but it could be improved with the
         points I've mentioned above.
         Good luck!
Clone this wiki locally