ocaml-ppx / ppxlib

Base library and tools for ppx rewriters
MIT License
246 stars 97 forks source link

Some info about Outreachy winter 2021/22 #290

Open pitag-ha opened 2 years ago

pitag-ha commented 2 years ago

Hi all,

here's some information about the Outreachy application period. First of all: welcome! :partying_face:

For applicants

Thanks for contributing to the OCaml PPX ecosystem! Here's some information that's additional to the project description on the Outreachy site.

Contributions

Where to find issues

There are different repos where you can look for issues.

I might add more repos to this list later.

On the repos listed above you can find issues labelled good first issue and/or issues labelled medium.

First Steps

First of all, to contribute to any of those repos you'll need to get OCaml up and running. If you haven't already done that, you can have a look at the Up and Running With OCaml page on the ocaml.org site.

How to Contribute

Once you got OCaml up and running, you can start working on an issue on one of those repos mentioned above. For that, just have a look at the conversation of the issue to see if there's already someone currently working on it. If not, you can write a quick comment stating that you'll start working on the issue and do so.

Where to read about PPX

Unfortunately, people who are new to the PPX ecosystem and maybe also new to OCaml will probably find the documentation about PPX a bit incomplete and hard to read. Still, there are a couple of good resources about PPX:

It's also quite interesting to check out the compiler's parsetree module, i.e. the place in which the types of all kind of nodes in OCaml's AST are defined; the comments in there reflect how the source code represented by an AST node looks like. Once you're a bit more advanced and actually start manipulating an AST, you can have a look at the documentation of Ast_builder, the module which is used to construct AST nodes.

Where to ask

So as mentioned, the documentation might not always be that straight-forward.That's even more of a reason that you should never hesitate to ask! If you have a question concerning one concrete issue, you can just ask on the issue. For general questions, you can ask on discord, which you can access via this invitation link. Once you've joined discord, if you have a question about PPX that's not related to some issue, you can ask on the PPX channel. If you have a general question about something else, you can ask on another discord channel, for example on the Outreachy channel.

Mentors

You have two mentors for the application period and for the internship: @pitag-ha and @shonfeder. We're both very excited about having Outreachy applicants and later an Outreachy intern contributing to PPX! On weekends we tend to be non- or less available.

For Non-applicants

Outreachy is an initiative to give folks from under-represented groups in open-source the opportunity to do a remote internship in an open-source project. So for open-source communities, Outreachy is a great opportunity to work together with folks from lots of different backgrounds and maybe even grow the community and become more diverse! Outreachy provides the infrastructure for the internships and application process, and the open-source communities need to provide projects and mentoring. One of the projects we -i.e. the OCaml community- is participating with in this Outreachy round consists in writing some Ppxlib.Deriving derivers. So we might get some Outreachy applicants contributing to some of our PPX repos (the ones I've listed above) from Oct. 8 till Nov. 5. as part of the application process to that project :)

pkel commented 2 years ago

I cannot open the discord links in the issue. Discord denies access. Maybe you have to link permanent invites instead?

pitag-ha commented 2 years ago

Maybe you have to link permanent invites

Oh, that's a very good point, thanks! I've just updated the issue description to also add an invitation link to discord.

Btw, @pkel is an Outreachy volunteer for the Outreachy community, so he'll also be available for questions and guidance for Outreachy applicants, both for the PPX project and for the other OCaml projects :smile: