Slide 1

Slide 1 text

Mohit Aghera Drupal Developer Effective ways to contribute to Drupal

Slide 2

Slide 2 text

I’m Mohit Aghera Who am I? Today I’ll cover: Drupal Developer @ PreviousNext. Drupal.org: mohit_aghera Twitter: mohit-rocks ● Types of contributions that we can make ● Things to keep in mind while doing contributions ● Best practices for meaningful contributions

Slide 3

Slide 3 text

Established in early 2009 to provide full service consulting, design and development for large scale Drupal websites. Who is PreviousNext? Successfully delivered many Drupal based projects for Government, Higher Education, Media and Communications clients. Very experienced team with long term staff members. Strong contribution and involvement in the Drupal community.

Slide 4

Slide 4 text

Who have we worked with?

Slide 5

Slide 5 text

Why should I contribute❓❓ 🤔

Slide 6

Slide 6 text

Motivation for Contributions🏅🫶📈 ● Reputation, recognition ● Giving back to community ● Personal growth, skill development ● Solving problems and making an impact ● Learning from peer review and feedback

Slide 7

Slide 7 text

What can you contribute to! 󰳕📄📦🧪 ● Code Contributions ● Documentation Contributions ● User Support ○ Support on forum ○ Drupal stackexchange ● Community Organizing ● Event organising, Volunteering ● Testing and Quality Assurance ● Marketing ● Mentoring ● Translations

Slide 8

Slide 8 text

Effective ways to do code contributions

Slide 9

Slide 9 text

Find what motivates you 💡⚡ ● Identify which part of core excites you the most ● Emphasis on learning rather than getting credits ● Contribute to specific sub-system

Slide 10

Slide 10 text

Benefits! ● You’re less like to do low hanging contributions ● More learning and exploring ● Attain in-depth knowledge of Drupal core.

Slide 11

Slide 11 text

Avoid low hanging contributions 🌳 ● Avoid creating empty forks for issues ● Avoid the urge to re-roll issues ● Put more focus on learning rather than credits ● Avoid working on PHPCs issues

Slide 12

Slide 12 text

Re-rolling issues 🗞 ● Perform re-roll “only” when required ● Ensure that it doesn’t cause regression ● Validate the existing test cases ● Run “commit-code-check.sh” from “core/scripts” folder

Slide 13

Slide 13 text

Issue review guidelines 📝 ● Follow the issue review guidelines here ● Avoid reporting false RTBC issues ● Add proper comments and perform code reviews

Slide 14

Slide 14 text

Initiative driven contribution🤝 󰞵 🙌 ● Join core initiatives and be a part of it ● Strategic initiatives vs community initiatives ● Don’t just attend meetings, do the actual work on issues ● Take ownership and accountability

Slide 15

Slide 15 text

Initiative driven contribution - Benefits ● You don’t need to hunt issues 🕵 ● Get good familiarity with certain part of core ● Gain attention in the community 👀

Slide 16

Slide 16 text

Writing PHPUnit test cases 🧪 ● Write test cases for the bugs and issues ● Follow “Needs tests” tag

Slide 17

Slide 17 text

Testing and QA contributions ♿🧪 ● Follow the issue testing guide ● Accessibility testing ○ Join #accessibility slack channel ○ Be a part of the meetings and provide good inputs ● Don’t RTBC any issue after testing it ○ It might need code review as well. Just keep that in needs review

Slide 18

Slide 18 text

Documentation Contributions 📄📃 ● Review module guides and contribute to documentation ● Join #documentation channel on Drupal slack. ● You can be the maintainer of certain documentation guides.

Slide 19

Slide 19 text

Event contributions 📦✈ ● Event planner or organiser ● Drupal Camp organiser ● Drupal Meetup organiser ● Be a part of session selection committees

Slide 20

Slide 20 text

Marketing contributions 🌏📈👕 ● Collaborate with other marketing teams globally ● Work on “Promote Drupal” initiative ● Design Drupal swag ● Develop marketing material and share with community

Slide 21

Slide 21 text

A quick recap.

Slide 22

Slide 22 text

Do’s and Don’ts ✅ ● Use your time wisely ● Do focused contributions ● Find your niche and leverage that ● Get into habit of contribution ● Write meaningful comments when you fix something ● Follow issue etiquettes guidelines ● Collaborate and communicate ❌ ● Don’t do spammy contributions ● Stay away from PHPCs focussed contributions ● Avoid unnecessary re-rolls ● Avoid minor patches like info.yml changes ● Don’t write comments using ChatGPT(seriously??) ● Avoid random re-post of earlier patch ● Don’t upload the screenshot of applied patches

Slide 23

Slide 23 text

Questions? Twitter @mohit-rocks Slack mohit_aghera on Drupal Slack

Slide 24

Slide 24 text

Other links and documentation ● https://www.drupal.org/drupalorg/docs/marketplace/abuse-of-the-contribution-credit-syst em About abuse of contribution credit system ● https://www.drupal.org/docs/develop/issues/issue-procedures-and-etiquette/issue-etique tte Issue etiquetes ● https://www.drupal.org/drupalorg/docs/marketplace/services-listing#s-standards-of-cond uct-once-listed Avoid credit farming ● https://www.drupal.org/community/contributor-guide/contribution-areas ● https://www.previousnext.com.au/blog/5-simple-tips-increase-your-drupal-contributions- without-gaming-system ● https://opensource.com/article/23/3/positive-communication-open-source