Contributing to Chef - chef-boneyard/chef-summit-2014 GitHub Wiki

Time, Location

Friday, Kirkland, 11:00am

Convener

Flipchart

Summary of Discussions

Contributing is hard and scary scary the first time

What is it like in other communities?

Haven't done anything yet. Why is it hard? Don't know why? How do I write in a way that makes it easier to contribute? Haven't found anything about that?

Turn in pull requests, get a bug fixed.

Service discovery and mongo. Would love to contribute, looking at some of the pieces, not clear on how things are done architecturally. Scared to change something if someone did it on purpose and its not a bug. Legal implications.

Administrative background - found Linux and got in Ubuntu community. Could take burden off by editing wikis, monitoring mailing lists, writing documentations. Would like to contribute in a technical way. How do I take the next step. Somebody please use me?

Work at Chef and only a few months ago made PR for ohai. Intimidating putting code out publicly for everyone to see. Feedback can be negative. Concerned about putting out bad code.

Background of working professionally where could not touch open source. Concerned about putting out bad code and people not being nice about giving feedback. Do that in a positive fashion.

How to contribute in ways other than code. Legal aspect. Educating lawyers on open source - legal to legal. Putting IP out and why it could be good for you.

Starting out to use Chef by making test cases.

Want to get more people to contribute. Contributing is more than code. Good examples of open source projects that do this well with developer landing pages. (Chromium does a great job: http://www.chromium.org/Home )

Not getting an answer from the maintainer about whether a PR fits the philosophy of the tool and it does and implicit discouragement from contributing.

Mentoring people to contribute.

Use a lot of community cookbooks, sometimes they don't do what I want them to do do. I do a private fork, would like to throw my changes up there, but haven't gotten over the hump of contributing.

Want to create a maintainer community for cookbooks - only two people at Opscode maintaining cookbooks (and it's not their own jobs). Trying to bootstrap a maintainer group to keep cookbooks at a certain level of consistency.

Summary: BUnch of people who are advanced and want to help new people succeed New people how to get started

Document how to get started Criteria for giving commit bit - writing tests is a good sign. Help us out writing tests.

Ubuntu community sites have great language - condense all silos of information. Florida and George great examples.

Lots of people wanting to write code. Very few people want to write docs, do release management, be on IRC to help out, be on Stack Overflow, etc. RFC repo

Learn Chef site is awesome for a specific community.

Site that says this is how you build a testable cookbook is a different audience. Not a wiki, but more like Learn Chef. Targeted towards someone who doesn't keep up like this. What's the state of the art now? Google cookbook patterns that were great for Chef 9 or 10, but not valid now, for an example, and things are moving very fast. For people aren't plugged into the ecosystem. Who don't follow blog posts and RSS feeds.

At enterprise level, will never keep up to date. Tell me something that is stable, or how I can get to unicorn easily. What's the "steady" workflow and not the "unicorn" workflow. Migration from enterprise to unicorn.

Curated highlights of what is going on in the area.

ChefSpec only good for a certain cookbook style - if you write your own resources you have to write your own matchers yourself.

Give a scorecard on how well you are doing with cookbook style (you're 80% done).

Maintainers understand technical challenge thing - giving PR with tests. Communicate what a good pull request looks like. No contributing guide. How to find low hanging fruit ticket. How to pull down and set up a development environment.

Have a "how good is this" reference/matrix. Food critic as a service.

Foodcritic and documentation badges. Incentive for beginners to contribute.

Naturally good and complete stuff get a "gold badge" vs. "silver badge".

Example issues are really useful. Basho identifies set of issues that are low-hanging fruit, prompt the issue, leave it there, reference those in your contributing document.

What keeps from me from contributing - many different ways to write a cookbook. HWRPs no recipes and trying to contribute to someone else's cookbook is hard.

Respect idioms of the original author. Style of cookbook in contributing file.

How easy it is for a new Chef developer to intuit the idioms? Using minitests for all tests because doing HWRPs as an example.

Having a scorecard system that people opt-in.

Does everyone understand why HWRPs are being used more and more. Subclassing and other issues there. ChefSpec and LWRPs do not work very well. Possibly use definitions instead because they are HWRPS. Graphite cookbook should be using definitions.

Make testing experience easier? If you have to switch technology to make testing easier not a great thing.

Information that needs to get out there where choices are made.

HWRP vs. LWRP don't need help contributing - they're all in.

Worry about low hanging fruit, doc fixes, how to write a bug.

Someone cloned doc repo, but couldn't figure out how to make Spinx work.

Fine with people putting e-mail address in contributing or write something on napkin with a sharpie is fine.

Learning RSpec? Some RSpecs are terrible.

Other than docs, what are non-code things for contributing IRC and mailing lists have attentive, not "let me google that for you" answers, and stackoverflow Everyone wants to get github contributing

Standard place where newbie can find something - should be CONTRIBUTING document. Author in metadata.rb Five things needed. Can you contact me? Codified into ChefDK and "chef generate". Better than what "knife create" and "berks create" generate. Some cookbooks are cheffifed modules.

Source URL for supermarket.

fierie - foodcritic as a service in supermarket. Open to new services and add it as services in supermarket. What is good, how can I.

Presence of file, presence of string file

No elaboration on all these non-technical things people can do. Docs, meatadata scrubbing, IRC, stack overflow, help people replicate their problems in vagrant - verify bugs saying "yeah, I see that too", helping to submit good bugs, RFC process (star Chef RFC Repo - weird system, but makes sense - versioned).

Builds rep that it's not welcome.

There have been some bad days on IRC. Ask how to do something on IRC, get told they are stupid and that's not the way to do it. Victim of whoever is there. Need to know RFC on community guidelines in IRC.

What will we do now? What needs to happen next?

Start making the entry points more clear - right now, there's a dog's breakfast of stuff around. Doesn't make people feel welcome.

⚠️ **GitHub.com Fallback** ⚠️