Software engineer, spent ~18 months on the modules team
Worked mostly on maintaining all the puppetlabs-* modules on github and the forge
Hailee: Puppet Platform!
Software engineer, platform language team
Work mostly on puppet and development tools (e.g. puppet strings)
3. How Can You Contribute?
puppet, facter, hiera, puppet server, etc.
apache, concat, firewall, mysql, stdlib, etc.
Hanging on IRC/mailing lists
4. Where to Start?
1. Find/File a ticket
2. Sign the CLA (core only)
3. Clone/fork repository
4. Create a topic branch
5. Make your fix (following contributing guidelines)
6. Write/Run tests as appropriate
7. Open a pull request
8. Be ready for back/forth and feedback
5. Following Contributing Guidelines
Check out CONTRIBUTING.md for each repository
Write good commit messages
Add documentation (when appropriate)
Add tests (when appropriate) - we can help with this!
Are you submitting your patch to the right place?
Should it be in puppet core or a module?
Should it be in an existing module or should you make your own?
6. Things You Should Know
ruby, c++, clojure, etc
ruby for core puppet
c++ for facter
clojure for puppet server
7. How to Get Help
Ask on IRC in #puppet-dev
If you need help getting started
If you have a quick question
If you need help troubleshooting/debugging an issue
Send email to firstname.lastname@example.org
Can you contain your question in an email?
Is there a longer discussion to be had?
Do you want more people to have eyes on your question?
8. Pro Tips!
Reach out to the community!
Lots of people in IRC who want to help out/discuss
If you’re new to working on OSS or with puppet start with small self-contained contributions
Don’t be discouraged by mistakes
It’s tough to get everything right the first time, we’re here to help
Just because we can’t take your PR doesn’t mean your work wasn’t valuable
Please bother us if you don’t hear anything