Blog

by Florin Bidirean

Call for Contributors

Calling all programmers! We welcome all contributors to our Laminas components and Mezzio microframework. If you want to help us and the PHP community move forward, develop new skills and add a desirable entry into your resume, our door is open for you.

Why You Should Contribute

Personal Skill Development

One of the best reasons to contribute to an open-source project is personal skill development. You have the opportunity to work with real-world codebases which may be more complex than your personal projects. We employ a workflow that encourages best practices like code reviews, testing, documentation, and collaboration. Even if you aren't versed in PHP, Laminas, or Mezzio, it's a chance to work with a new language, framework (or microframework), and architectural patterns. All of these contribute to making you a more effective programmer.

Deeper Understanding of Software

If you are already using Laminas components and the Mezzio microframework, this part is for you. You know how tools are used. The next step is to look under the hood for a better understanding of design decisions, trade-offs, performance and security considerations. This is your chance to learn why things are done, not just how.

You Influence Development

If a component doesn't have a feature you find useful in your projects, go ahead and propose its implementation. Contributors shape a project's roadmap and priorities. The end result is that you improve tools you personally use, so ultimately your own workflow benefits from your open-source contributions. If a feature is approved, it's likely going to be beneficial for other implementers as well.

Improved Software Quality

Whether you are fixing bugs, adding new features, or improving the documentation, you can be sure that the codebase will benefit from your contributions. Open-source software thrives on collective improvement from regular programmers just like you. The code maintainers will, of course, check your proposed updates thoroughly, so we can all benefit from quality code in our projects that are based on Laminas and Mezzio.

Community and Networking

Laminas and Mezzio have skilled maintainers from around the world. By contributing to our components, you get to collaborate with us directly. Mentorship often happens naturally through code reviews and discussions, even if it's not formally structured. By joining our contributors, you become part of a community that promotes the sharing of knowledge. This is beneficial for both programmers who implement the tools and the codebase that is improved as a result of your hard work.

Career and Résumé Benefits

This applies more to you experienced programmers out there. So you know your way around PHP, but want to let the PHP community know you exist. Contributing to Laminas and Mezzio is a good way to put yourself on the map. Then you can include the experience in your résumé or even brag on programming forums that you wrote a section of code. It's definitive proof that you have initiative, teamwork, and problem-solving skills which are highly valued by employers in the industry.

More Than Just Code

It might seem intimidating to join a community of experienced developers who are already working with PHP, Laminas, and Mezzio for years, but documentation contributions are equally important as code. As a user of Laminas or Mezzio, you are in a unique position to offer insight on where docs don't provide enough guidance or assume too much knowledge, for example. We welcome developers of all experience levels, and you will find us to be a friendly and inclusive community.

How Can I Contribute

  • Documentation Improvements and Fixes
    • The technical part of our documentation can help get you started.
  • Fixing stuck builds
    • Using Continuous Integration (CI) tools like Renovate.
  • QA Improvements
    • Using static analysis tools such as Psalm.
  • Code Improvements
    • Applying strict types, typed properties, params, returns.
    • Updates for compatibility with particular versions of PHP, often the most recent one.
    • General work on outdated dependencies.
    • Reviewing Pull Requests (PRs).

Below you have the current lists of issues and pull requests tagged with Help Wanted that can benefit from your input right now:

Other Stuff

Check out the issues page on our repositories for any other open items you can contribute to. You help us even when contributing less-impactful changes like these:

  • Spelling or grammar fixes.
  • Typo correction, white space, and formatting changes.
  • Comment clean up.
  • Bug fixes that change default return values or error codes stored in constants.
  • Adding or changing exception messages.
  • Changes to 'metadata' files like composer.json.
  • Moving source files from one directory to another.

First Steps

If you're a first-time contributor, we have several channels that allow you to contact us for guidance:

Make sure to check the Laminas contributing guidelines for the technical steps to submit your contribution.

Conclusion

Contributing to open source develops your skill, builds credibility, connects with others just like you, and makes a meaningful impact in the software community. So why wait? Join us know!

Additional Resources