Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pitch: PASEA python workshop and research experience #128

Closed
wants to merge 3 commits into from

Conversation

jielaizhang
Copy link

@jielaizhang jielaizhang commented Aug 27, 2020

Submission of project pitch for "Call for proposals: Inclusion, Diversity, and Empowerment".

Title: Coding and Research Experience for Pan-African School for Emerging Astronomers (PASEA) Alumni

Summary

This project is to give coding training and research experience to PASEA alumni, who are African undergraduate and graduate students in STEM. In particular, I'd like to supervise a student to develop open source python tools to schedule simultaneous observations of telescopes from around the globe and in space.

Team

PASEA has run 4 week-long summer schools for African undergraduate and postgraduate students in STEM (2013, 2015, 2017, 2019). We now have 250 alumni from over 10 different African countries. PASEA alumni are an engaged cohort and continue to send daily messages in a WhatsApp group related to STEM, astronomy and opportunities. See https://www.astrowestafrica.org/home for more information on PASEA.

The PASEA instructional team has about 20 astronomers from all around the world, a subset of these would be interested in putting together some coding training resources. A few of us are interested in mentoring students for research projects, including myself.

We would love help in the creation or gathering of Jupyter Notebooks that can be used for training. Extra help would be appreciated in figuring out where a Jupyter hub can be hosted, and setting that up so students don't need their own computing resources.

Plan

  1. Run python training over 1 week, relevant to the proposed research project.
    1a) Set up JupyterHub so students don't need their own computing resources and just need internet and a laptop.
    1b) Project supervisor help determine content of this training, which should be relevant to the research project(s) student can choose from.
    1c) Find tutors who can help students during the training week (e.g. 1 tutor/5 students).
    1d) Recruit students based on their career goals and engagement in PASEA.

  2. Students do astronomy research project.
    2a) Recruit students for research project(s). Students would be selected based on their career goals, as well as engagement in PASEA and the 1 week python training.
    2b) Supervisor and student interact few times a week over a 3 month (full time preferable) internship.
    2c) Follow this with less frequent interactions to finish the project off part time.
    2d) Note: I would like to supervise a student to put together open source python tools for observing scheduling/ telescope coordination when multiple telescopes all around the globe, as well as in space, need to be used simultaneously. This type of observing runs are typical of the Deeper Wider Faster Project, which aims to catch the fastest bursts in the Universe and discern their nature (bursts such as fast radio bursts and kilonovae). These open source tools can be published in https://joss.theoj.org.

Impact

African undergraduate and graduate students will get python training, do research and contribute to open source python tools that help schedule and coordinate telescopes for time domain astronomy.

Four PASEA alumni are now PASEA instructors. This is a great avenue to identify more PASEA alumni who can be PASEA instructors. Having instructors who were once participants of the school is highly motivating and a huge boost for self-efficacy.

Budget

  1. $450/week stipend for student for 3 months of full time internship to do research project. ($5,800/ research project student)
  2. $200 for 1 zoom license
  3. $100/student for mobile internet so student can participate online throughout the internship. ($100/ research project student)
  4. $20/student for mobile internet so student can participate online for python workshop over 1 week ($20/ python workshop student)

@hamogu hamogu added finance 💰 inclusion-diversity-empowerment Inclusion, Diversity, and Empowerment proposals labels Aug 27, 2020
@hamogu
Copy link
Member

hamogu commented Aug 27, 2020

I like this a lot, I think it would be even better for our community if it were connected more to the Astropy Project, e.g. do you think it would make sense to include "how to open a PR to an open source project" in the Python training or is that asking too much? We might be able to find a few cases where a PR can be done, even for a Python beginner.

A suggestion on the technical side: Instead of running your own jupyterlab instance, it might be easier to use an existing "jupyter notebooks on the web" service. I've only used , e.g. https://mybinder.org/ and Google colab where the free version have limited runtime (i.e. you need to save and log out at the end of the day and then log in and import your saved notebook the next day) and memory (e.g. 2 GB, so it might enough for most, but not all projects), but there are probably paid services which offer more resources as needed.

@jielaizhang
Copy link
Author

jielaizhang commented Aug 27, 2020

Thanks @hamogu for your feedback!

I like this a lot, I think it would be even better for our community if it were connected more to the Astropy Project, e.g. do you think it would make sense to include "how to open a PR to an open source project" in the Python training or is that asking too much? We might be able to find a few cases where a PR can be done, even for a Python beginner.

Not at all! I think this would be a fantastic idea. If we get alumni from the PASEA postgraduate stream, they have already have some python experience and 1 piece of git+github experience (they had to git clone something). In general students also love contributing to something for real, and not just for their own educational experience.

I would need some help finding a beginner friendly PR though, suggestions very welcome!

A suggestion on the technical side: Instead of running your own jupyterlab instance, it might be easier to use an existing "jupyter notebooks on the web" service. I've only used , e.g. https://mybinder.org/ and Google colab where the free version have limited runtime (i.e. you need to save and log out at the end of the day and then log in and import your saved notebook the next day) and memory (e.g. 2 GB, so it might enough for most, but not all projects), but there are probably paid services which offer more resources as needed.

This seems like a good idea that would take less work and would be very appropriate for the python training week. Thanks @hamogu!! For the research project, maybe we need to add a budget item to get some paid services depending on the project. For my open source telescope coordination tool research project if the supervisor can't get computing resources from their institute. For me, I can get the student an account on my institute's super computer, which is do-able if they have "intern" status.

@hamogu
Copy link
Member

hamogu commented Sep 1, 2020

@jielaizhang Since issues get opened and closed all the time, I'm not going to point to a specific beginner-friendly issue right now, but astropy even has a specific label for that: https://github.com/astropy/astropy/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22
In some cases, it might be easier to pick an affiliated package (say add a specific search service to astroquery), depending on interest.

@jielaizhang
Copy link
Author

@jielaizhang Since issues get opened and closed all the time, I'm not going to point to a specific beginner-friendly issue right now, but astropy even has a specific label for that: https://github.com/astropy/astropy/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22
In some cases, it might be easier to pick an affiliated package (say add a specific search service to astroquery), depending on interest.

This is great, thanks Hans!

@bsipocz
Copy link
Member

bsipocz commented Sep 1, 2020

(say add a specific search service to astroquery)

I agree that affiliated packages are easier to start with, but this example is not exactly suitable for people starting out both with python, web APIs, and astronomy data archives.

@jielaizhang
Copy link
Author

(say add a specific search service to astroquery)

I agree that affiliated packages are easier to start with, but this example is not exactly suitable for people starting out both with python, web APIs, and astronomy data archives.

Noted! Thank you! Yes, it'd be good to pick something that had less components, but still affiliated with the research project(s) they would work on, or the tools they are learning to use.

@bsipocz
Copy link
Member

bsipocz commented Sep 1, 2020

A more widely used label aimed at new contributors is "package-novice". Just as with "good first issue", some of them are more suitable for people having strong programming experience, but no experience with these particular packages, while others are suitable for beginners both in programming and with the package, so it's worth checking out a few of them (many lists the solution for a bug or issue in the description, so the task is to add that solution into the codebase): https://github.com/search?q=is%3Aissue+is%3Aopen+label%3Apackage-novice

@jielaizhang
Copy link
Author

A more widely used label aimed at new contributors is "package-novice". Just as with "good first issue", some of them are more suitable for people having strong programming experience, but no experience with these particular packages, while others are suitable for beginners both in programming and with the package, so it's worth checking out a few of them (many lists the solution for a bug or issue in the description, so the task is to add that solution into the codebase): https://github.com/search?q=is%3Aissue+is%3Aopen+label%3Apackage-novice

This is very useful information. Thank you!

@kelle
Copy link
Member

kelle commented Sep 11, 2020

I think this is a great opportunity for a new collaboration so that we can build a stronger tie to the Astropy Project. @jielaizhang , would you like to start engaging with the Astropy Learn folks? That group focuses on workshops and tutorials. We use the #learn channel in the astropy slack and meet on Wed at 10am ET. Feel free to join us in the slack channel or shoot me (kellecruz@gmail.com) or @eblur an email.

@jielaizhang
Copy link
Author

I think this is a great opportunity for a new collaboration so that we can build a stronger tie to the Astropy Project. @jielaizhang , would you like to start engaging with the Astropy Learn folks? That group focuses on workshops and tutorials. We use the #learn channel in the astropy slack and meet on Wed at 10am ET. Feel free to join us in the slack channel or shoot me (kellecruz@gmail.com) or @eblur an email.

Thanks Kelle! I've joined the #learn channel on the satrapy slack. 10am EDT is my midnight here in Australia, so I am not sure when I can next join the meeting. This is really great, thanks! I think I can learn a lot for the postgraduate stream of PASEA during the actual summer school itself too. (PASEA: https://www.astrowestafrica.org/about)

@hamogu
Copy link
Member

hamogu commented Sep 25, 2020

After discussion in the astropy community, this proposal came in third, which unfortunately means that we don't have funds for it this year. However, most people felt that this proposal would be a great program to support and we hope that we can make it work next year!

That should not stop you to interact with people on the astropy project though. I hope that there is some support we can give even without money at this point. Several ideas were already thrown around in the comments above (e.g. I pointed to free jupyter-on-the-web services that might be useful for teaching). The astropy mailing list or slack can be useful to get support, too.

@hamogu
Copy link
Member

hamogu commented Sep 25, 2020

I forgot to say in my last comment: The rankings were discussed on the astropy-dev mailing list and announced by email. I'm just commenting here to close the loop and post that result in the PR, too.

@jielaizhang
Copy link
Author

Thank you @hamogu for the funding outcome! This has been a very positive experience for me, and my team. Yes, indeed many good ideas and advice has resulted too. I am now on the satrapy slack, which is useful.

I am now also exploring other funding avenues for this project, I hope they will come through.

@bsipocz
Copy link
Member

bsipocz commented Sep 29, 2020

@jielaizhang - in all recent years there has been a few astronomy related internships available in the Google Summer of Code. These projects typically require some programming experience and may be an interest for some of the students within the PASEA network. We typically know more details about the upcoming year around late January/February. For past project/project ideas see the lists here: https://openastronomy.org/gsoc/

@jielaizhang
Copy link
Author

@jielaizhang - in all recent years there has been a few astronomy related internships available in the Google Summer of Code. These projects typically require some programming experience and may be an interest for some of the students within the PASEA network. We typically know more details about the upcoming year around late January/February. For past project/project ideas see the lists here: https://openastronomy.org/gsoc/

This is fantastic, thanks for pointing me to this! I'll pass this along to the PASEA alumni.

@hamogu
Copy link
Member

hamogu commented Sep 29, 2020

Since proposals have been selected, I'm closing this PR. However, @jielaizhang if you feel we can be of any help, please continue to reach out, email, slack, or continue to comment on this (closed) issue.

@hamogu hamogu closed this Sep 29, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
finance 💰 inclusion-diversity-empowerment Inclusion, Diversity, and Empowerment proposals
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants