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

Hacktoberfest 2020 #1119

Closed
SKuipers opened this issue Oct 4, 2020 · 2 comments
Closed

Hacktoberfest 2020 #1119

SKuipers opened this issue Oct 4, 2020 · 2 comments

Comments

@SKuipers
Copy link
Member

SKuipers commented Oct 4, 2020

Logo Sponsors Dark

Hello! It’s October again and that means it’s Hacktoberfest! 😃 Whether you’re an open source veteran or completely new, there are many ways to participate in Hacktoberfest and contribute to Gibbon. Be sure to sign up on the website first so that your first four pull requests count towards a free t-shirt!

Where to start?

If you are new to open source or GitHub, check out the tutorials that the DigitalOcean folks have put together: An Introduction to Open Source. We also have some developer docs available at https://docs.gibbonedu.org/developers/ If you have any questions getting your development environment setup, feel free to post in the comments below.

The Gibbon team has been working on refactoring our codebase the past couple versions, and there’s everything from housekeeping items to advanced refactoring items still outstanding. We’ve put together some ideas to get you started, but we also welcome other contributions. When in doubt, please ask us first in the comments below. Thanks!

Entry-level:

  • Replacing session variables:
    Throughout the codebase you’ll see $_SESSION[$guid]['variableName'] being used to access session variables. These can be replaced with the $gibbon->session->get('variableName') method.
  • Adding null coalesce operators:
    Null coalesce was introduced in PHP7 and you’ll see many areas of the codebase still using isset() checks on variables, especially $_GET and $_POST variables. These can be replaced with the more succinct format of $variableName = $_GET['variableName'] ?? '';
  • Documentation:
    Our documentation needs some love! Adding or updating the docs is a great way to contribute and create pull requests even if you're not a programmer. Our docs are hosted on GitHub and can be edited through the web UI by creating a pull request (no command line necessary). The best way to find and edit or add pages is through the docs themselves. Look for the "Edit page" and "New page" buttons.

Mid-level:

  • Refactoring Forms:
    There are still some forms left to refactor in the Free Learning module. Check out the issue here for more info: Reafactoring Forms #820
  • Adding translation to modules:
    Our amazing translators have been asking to translate the additional modules. To do this, we'll first need to add the translation function to any unique strings in these modules. This can be done with the __m() function. For example, 'This is a string' becomes __m('This is a string').

Advanced:

  • Refactoring Tables:
    There are lots of tables left to refactor. Check out the Refactoring Tables issue for a list of the additional modules needing refactored. There are also tonnes of tables left in the core, just search for the HTML <table tag and you'll find 'em. We have a tracking spreadsheet for these, feel free to email support@gibbonedu.org and we can add you.

Give a shout with any questions.

Happy Hacktoberfest! 👩‍💻 👨‍💻

@rossdotparker
Copy link
Member

This is fantastic Sandra! I'm going to try and get stuck in during the next week or two.

@SKuipers SKuipers closed this as completed Nov 3, 2020
@SKuipers
Copy link
Member Author

SKuipers commented Nov 3, 2020

That's a wrap, Hacktoberfest 2020 is now complete. Thank you to everyone who participated in the hackathon! 🧑‍💻 👩‍💻 We had several participants from around the world and one school even had cake! Hopefully you got all 4 pull requests in and got your free t-shirt or tree 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants