The markov-chain-monte-carlo scientific computing library community is founded on the UC Davis Principles of Community, adapted for our collaborative open-source scientific computing environment. We are committed to fostering an inclusive community that advances robust, reproducible Monte Carlo simulation and research software.
Every person has value and deserves to be treated with respect and courtesy, regardless of their background, experience level, or contributions to the project. We recognize that contributors come from diverse academic, professional, and personal backgrounds, bringing different perspectives that strengthen our community.
We are committed to:
- High-quality code: Writing well-documented, tested, and maintainable implementations of sampling algorithms and diagnostics
- Rigorous validation: Ensuring Metropolis-Hastings mechanics, proposal contracts, and numerical checks are mathematically sound and computationally robust
- Knowledge sharing: Providing clear documentation, examples, and educational resources about Markov Chain Monte Carlo methods
- Continuous improvement: Welcoming feedback, bug reports, and suggestions for enhancement
- Academic integrity: Properly attributing research, algorithms, and code contributions
Our work builds upon decades of Monte Carlo, statistical physics, and computational statistics research. We:
- Acknowledge and cite the mathematical foundations our library relies upon
- Respect the broader Rust ecosystem and follow community conventions
- Contribute back to the scientific computing and open-source communities
- Collaborate respectfully with researchers, students, and practitioners worldwide
- Maintain compatibility and interoperability with related libraries and tools
In all our interactions, we:
- Provide accurate information about the library's capabilities and limitations
- Acknowledge when we don't know something or need help
- Report bugs and issues honestly and constructively
- Give credit where credit is due for contributions and ideas
- Are transparent about our decision-making processes
We encourage:
- Technical discussions about algorithmic approaches, numerical robustness, performance optimization, and API design
- Questions from newcomers to MCMC, scientific computing, or Rust programming
- Constructive criticism of code, documentation, and design decisions
- Diverse perspectives on problem-solving and research applications
- Respectful debate about technical tradeoffs and design choices
We do this through:
- Clear, respectful communication in issues, pull requests, and discussions
- Patient explanation of statistical and numerical concepts
- Thoughtful code reviews that help improve quality
- Constructive feedback on documentation and examples
We create an inclusive environment by:
- Using welcoming and inclusive language
- Respecting differing viewpoints and experiences
- Gracefully accepting constructive criticism
- Focusing on what is best for the community and the advancement of the field
- Being patient with those learning MCMC and Rust concepts
- Avoiding jargon when simpler explanations suffice
- Providing multiple ways to engage (code, documentation, examples, testing)
Unacceptable behavior includes:
- Harassment, intimidation, or discrimination based on any personal characteristics
- Disrespectful or unprofessional language or behavior
- Personal attacks or ad hominem arguments in technical discussions
- Deliberately excluding or discouraging participation based on background or experience
- Publishing private information without consent
- Academic misconduct, including plagiarism or misrepresentation of contributions
If you experience or witness behavior that doesn't align with these principles, you have several options:
- Address it directly (if you feel comfortable) - Sometimes a gentle, respectful conversation can resolve misunderstandings
- Contact the maintainer privately via the private reporting form - Use this channel for non-public conduct concerns
- Open a GitHub issue - For public discussions about community behavior or policy
Reports sent through the private reporting form will be treated confidentially and will not be posted publicly.
When you reach out:
- I will make a good faith effort to respond when I am able
- I will treat all reports with respect and discretion
- I aim to understand all perspectives before taking any action
- My primary goal is maintaining a productive, welcoming environment for everyone
Depending on the situation, responses might include:
- A private conversation to clarify expectations
- Mediation between community members
- Public clarification of community standards
- Moderation of specific content (hiding, editing, or removing inappropriate posts)
- In serious cases, temporary or permanent restrictions on participation
Please understand that:
- This is an open-source project maintained primarily by volunteers
- Response times will vary based on availability and other commitments
- I am not a professional mediator or legal expert
- For serious legal matters, you may need to contact appropriate authorities
- The focus is on maintaining a productive technical community, not resolving all interpersonal conflicts
This Code of Conduct applies to all project spaces including:
- GitHub repository (issues, pull requests, discussions, releases)
- Code reviews and technical communications
- Conference presentations about the library
- Academic publications referencing this work
- Email communications with maintainers
- Social media discussions about the project
This Code of Conduct may be updated as the community grows and evolves. Changes will be discussed openly and community input is welcome.
These principles are adapted from the UC Davis Principles of Community, which were developed through a collaborative process involving the entire UC Davis community. We thank UC Davis for providing this thoughtful framework for inclusive community building.
Last updated: May 2026