ocaml.org icon indicating copy to clipboard operation
ocaml.org copied to clipboard

Outreachy Summer 2024

Open SaySayo opened this issue 11 months ago • 49 comments

Hi all,

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

For non-applicants confused by this issue, see this section.

For Applicants

Thanks for choosing to contribute to the OCaml ecosystem! This is the right place to start if you're considering applying to the following project:

  • Run OCaml Exercises Everywhere

Installing OCaml on Your System

Quick Installation

The quickest way to install OCaml currently is using the OCaml Platform Installer.

You'll need to install some dependencies if they're not already installed. This can be done easily using a package manager.

If you're running an Ubuntu/Debian system you can run the following command in your terminal. If you're using Windows, here are the specific instructions, but it is probably easier and quicker to use WSL2 on Windows and then using the Linux/macOS instructions.

sudo apt install bzip2 make gcc bubblewrap rsync patch curl unzip

After your dependencies are installed run the below install script.

bash < <(curl -sL https://ocaml.org/install-platform.sh)

Install the Platform tools.

ocaml-platform

Other Installation Methods

If the OCaml Platform installation method does not suit you then you can take a look at the other installation methods described on ocaml.org: here or there.

Contributions

Before being able to fully contribute to the project, here are simple steps you must follow!

First step: seting up OCaml

If you want to apply to any of the those projects, the first step for you will be to compile OCaml. Please, read through Installing OCaml on Your System. If you're using Windows, here are the specific instructions, but it is probably easier and quicker to use WSL2 on Windows and then using the Linux/macOS instructions.

Now you should be able to go through the basics of OCaml, please follow this tutorial: Your First Day with OCaml.

For more details about the OCaml language you can read this guide about the language.

Try to pick up a few exercises to practice along the way!

Second step: seting up ocaml.org locally

Once OCaml is successfully installed, you also need to install an opam switch that uses a version of OCaml that ocaml.org currently supports, and install the dependencies.

If you are not familiar with Github, a good practice is to fork a repository before working on it. Go on the ocaml.org repository and click on fork.

You can now clone your fork (https://github.com/USERNAME/ocaml.org) to get a local copy of it: git clone [email protected]:USERNAME/ocaml.org.git (of course replace USERNAME with your actual github username, without the @).

Add the original repository as the "upstream" remote:

cd ocaml.org git remote add upstream [email protected]:ocaml/ocaml.org.git

Once you have a local repository, let's build:

make switch To locally run the ocaml.org website, simply run:

make start You should then be able to open the website in your browser at the following URL http://localhost:8080.

Once you've achieved that, please let us know here on the issue that you have. And if you have troubles with it, don't hesitate to ask!

Third step: a good first issue

Once you got the website to run locally, you're ready to start contributing. To make a successful contribution:

  • Search for open and unassigned issues with the following tags: good-first-issue and outreachy
  • Pick one and try to complete the task described.
  • Create a pull request. The task does not have to be completely implemented to create the PR, but your PR can't be empty. After opening the pull requests, tag the project mentors @cuihtlauac and @SaySayo for a review and also if you have any questions or clarifications related to the changes you made on the pull requests.

Ask Questions!

You are bound to get stuck somewhere and that's perfectly fine because that means you're moving towards progress!

If you don't know how to move forward with the problem you're stuck with then don't hesitate to ask .

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 ocaml.org you can ask on the ocaml.org channel. If you have a general question about something else, e.g. how to get OCaml up and running, you can ask on another discord channel, for example on the Outreachy channel.

Happy hacking :)

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.

A Note on Using ChatGPT and Generative AI for Contributions

We, the mentors for ocaml.org-related projects, have discussed the role of ChatGPT and generative AI during this contribution period and have identified some of the following--non-exhaustive list of--problems in using this technology to contribute.

We don't want these tools to be substitutes for your judgement and understanding. We don't want your responsibility to be deferred to these tools since they are often wrong and hence unreliable. We want to make sure mentors spend their time and efforts helping you improve and learn.

Your judgement and understanding

We don't want contributors to be using generated contributions in situations where we want you to make your judgement. Submitting generated code with little or no understanding as a contribution would be an extreme case of this.

We think if you make a contribution you should be exercising your own judgement and trying your best to solve some problem. Your effort and hard-work are the true essence of any contribution.

Borrowing code has almost always been fine, but even when you do that you are expected to make the judgement to borrow it in the first place. It also is still your responsibility to test that code and abstractly know why that code is there to begin with.

Responsibility

A large part of open-source involves is about taking on responsibility. We think that use of these tools should not take away from that.

Mentor time

With all the contributions, the mentor would be trying to read through this contribution and provide any feedback so that the contributor can learn from this and improve. This takes time and effort on the mentor's part. This would be wasted if they realize half-way that the code was AI-generated.

Mentors want to help you learn and improve. This is difficult or even impossible to do if you don't show them your own work.

Concluding remarks

We only request you to be mindful of all this.

If you happened to use ChatGPT for something like brain-storming ideas for a contribution, that's ok. We ask you in that case to let your mentor know. Giving them the heads up might help them save time and even put you in a better position of trust.

SaySayo avatar Mar 06 '24 01:03 SaySayo

Hi, I'm Pranay. My initial application for outreachy is accepted. I'm interested in working on this project. I am going through the given instructions above and have installed OCaml on Ubuntu. The link of "exercises to practice" is not working.

pranayrauni avatar Mar 06 '24 08:03 pranayrauni

Hello @pranayrauni, Welcome! Can I ask what link you're referring to? If you want to learn more about the ocaml language, you can find link to the tutorials here

Aquilaafuadajo avatar Mar 06 '24 08:03 Aquilaafuadajo

Thank you @SaySayo for this guide. I'm currently setting up my development environment and look forward to asking questions and contributing successfully too.

jahielkomu avatar Mar 06 '24 08:03 jahielkomu

Hello @pranayrauni, Welcome! Can I ask what link you're referring to? If you want to learn more about the ocaml language, you can find link to the tutorials here

Here is the link: https://ocaml.org/problems

pranayrauni avatar Mar 06 '24 08:03 pranayrauni

Oh... I see, @pranayrauni Problems have been renamed to exercises, so you can try accessing it from here https://ocaml.org/exercises

Aquilaafuadajo avatar Mar 06 '24 08:03 Aquilaafuadajo

@SaySayo the link to exercises have been updated to https://ocaml.org/exercises, can you please help update it in case others encounter this issue

Aquilaafuadajo avatar Mar 06 '24 08:03 Aquilaafuadajo

Oh... I see, @pranayrauni Problems have been renamed to exercises, so you can try accessing it from here https://ocaml.org/exercises

Thank you very much

pranayrauni avatar Mar 06 '24 09:03 pranayrauni

okay @pranayrauni or @SaySayo or @Aquilaafuadajo I'm unable to run; bash < <(curl -sL https://ocaml.org/install-platform.sh) successfully.

I get a response error of; bash: line 1: syntax error near unexpected token newline' bash: line 1: '

What I'm I missing? Thanks.

jahielkomu avatar Mar 06 '24 10:03 jahielkomu

Hello @SaySayo I'm Sobia Aman from Pakistan. I'm interested in Ocaml projectand want to contribute in it. I'm just landed here and now trying to setup Ocaml environment locally :)

SobiaAman avatar Mar 06 '24 10:03 SobiaAman

Welcome @SobiaAman, if you need any help with setup and tasks you can drop them here or in the discord channel

Aquilaafuadajo avatar Mar 06 '24 10:03 Aquilaafuadajo

@Aquilaafuadajo are you able to help me with the installation issue I'm facing as indicated above?

jahielkomu avatar Mar 06 '24 10:03 jahielkomu

Thanks @Aquilaafuadajo will let you know if i need any help, Thanks for asking :)

SobiaAman avatar Mar 06 '24 10:03 SobiaAman

Anyone please share the link of discord channel as well.

SobiaAman avatar Mar 06 '24 11:03 SobiaAman

hello @SobiaAman , have you been able to install on Linux

jahielkomu avatar Mar 06 '24 11:03 jahielkomu

@jahielkomu not yet i'm getting error which you're getting (ocaml) zakia@DESKTOP-I2B0R5O:~$ bash < <(curl -sL https://ocaml.org/install-platform.sh) bash: line 1: syntax error near unexpected token newline' bash: line 1: '

Did you resolved the issue? why this link https://ocaml.org/install-platform.sh gives 404 error?

SobiaAman avatar Mar 06 '24 11:03 SobiaAman

No I haven't yet @SobiaAman . I'm hoping for any guidance from @SaySayo or those who have gone past that point.

jahielkomu avatar Mar 06 '24 11:03 jahielkomu

Hello @SaySayo @Aquilaafuadajo i'm stuck at bash < <(curl -sL https://ocaml.org/install-platform.sh) it gives me an error

bash: line 1: syntax error near unexpected token `newline'
bash: line 1: `<!DOCTYPE html>'

Secondly i tried to access the shell script but it is not available at https://ocaml.org/install-platform.sh hence it returns 404 error. Kindly help me in this regard. Thanks

SobiaAman avatar Mar 06 '24 11:03 SobiaAman

That is exactly the same thing on my end @SobiaAman

jahielkomu avatar Mar 06 '24 11:03 jahielkomu

Hi @SobiaAman @jahielkomu Can you try following the guide here https://ocaml.org/docs/installing-ocaml#install-platform-tools to set up your environment When through, confirm your OCaml and opam installation by running ocaml --version and opam --version respectively. If confirmed, follow the guide on HACKING and README to run the project. Let us know if you encounter any error along the line

amarachigoodness74 avatar Mar 06 '24 11:03 amarachigoodness74

I have installed the setup succesfully, finally up and running Ocaml on my WSL2 (ubuntu 20.-04) . Can someone let me know what to do after that, running the exercises or go to good-first issue as i want to apply in "Run OCaml Exercises Everywhere". I'm comparatively new to Ocaml but eager to learn Ocaml. image image

SobiaAman avatar Mar 06 '24 13:03 SobiaAman

i have joined outreachy discord channel but strangly nobody is there, am i missing something?? Can someone help

SobiaAman avatar Mar 06 '24 14:03 SobiaAman

Hi everyone, my name is Mucha, I am a full stack dev from Kenya, happy to be here as part of Outreachy24

mnaibei avatar Mar 06 '24 15:03 mnaibei

here

W

Hi everyone, my name is Mucha, I am a full stack dev from Kenya, happy to be here as part of Outreachy24

Welcome Mucha, it's nice having you here

kemsguy7 avatar Mar 06 '24 18:03 kemsguy7

Welcome everyone! Are you still having installation issues? @jahielkomu @SobiaAman, did you also join the specific outreachy channel on discord?

SaySayo avatar Mar 07 '24 02:03 SaySayo

@SobiaAman Picking a good first issue would be the best next step. Indicate interest in an issue you want to try out and wait for a confirmation to go ahead and work on it from the mentors or maintainers

amarachigoodness74 avatar Mar 07 '24 04:03 amarachigoodness74

Hi @SobiaAman @jahielkomu Can you try following the guide here https://ocaml.org/docs/installing-ocaml#install-platform-tools to set up your environment When through, confirm your OCaml and opam installation by running ocaml --version and opam --version respectively. If confirmed, follow the guide on HACKING and README to run the project. Let us know if you encounter any error along the line

Thank you for this guide, I have successfully installed and I'm running it locally.

jahielkomu avatar Mar 07 '24 08:03 jahielkomu

Hello, I have been able to setup and currently running ocaml locally.

Screenshot 2024-03-07 104937

EjiroLaurelD avatar Mar 07 '24 09:03 EjiroLaurelD

Hello everyone, my name is Wisdom, I am happy to be here as part of Outreachy24

nwakaku avatar Mar 07 '24 17:03 nwakaku

Hi @SaySayo, I am Stella Ugoo-Okonkwo an Outreachy applicant and am happy to be here. I am interested in contributing to this project and currently am going through the above instructions to enable me make a good contribution.

Ozyugoo avatar Mar 07 '24 18:03 Ozyugoo

Hello Everyone! I am Ayushi, an Outreachy applicant from India. I am so excited to be here to collaborate with you all and make amazing contributions!

ayushichoudhary-19 avatar Mar 07 '24 20:03 ayushichoudhary-19