Git Product home page Git Product logo

principles's Introduction

principles-logo@2x 2a8f2ec701e4

Principles

An open-source list of principles used in software engineering and leadership to improve capability.

If you have your own principles, you can contribute them to the repository (see below)

This repository is also the main data source for https://principles.dev. Any changes here will be reflected on the website.

principle-capability-behavior-triangle

Creating your first principle

You can create your principle by using the Editor and what you need to include by reading how to write a principle.

Contributing

If you want to make Software Engineering better for everybody, please make a pull request. You can create a pull request and add your own principles or update others with the merge target set to release branch.

You might want to read why create a principle.

There are many ways to contribute to the project, from simple to most rewarding:

  • Correct mistakes - This could be spelling, grammar or getting the point across more clearly.
  • Edit a principle - enrich its content. Nearly all principles can be improved by adding in more information or better reasoning.
  • Copy an existing principle - Derive a principle from elsewhere. Make sure it has a permissible license (e.g., MIT, CC BY-SA).
  • Create a principle - Have a principle of your own? Please share it with the world on principles.dev.

If you're creating or copying a principle. You should at least read through the how to write a principle quickstart section before you begin. Having a look at existing principles on the site will help you understand what's required.

Will my principle be accepted?

One of the most significant sources of friction you will experience that will hold you back from contributing is whether you feel your principle will be rejected or not. No one wants to put in work for someone to turn around and say no.

It will generally be approved if it reaches the requirement for a basic principle.

Reasons for lack of approval are:

  • Low quality - The principle is unable to change someone's behavior or capability because it's missing crucial information or context.
  • Not containing what it is and why
  • The principle is offensive, inflammatory, or is generally targetted at being hostile towards a different group (e.g., don't use X language, X technology, etc.)
  • Grammar or spelling mistakes (which are easily correctable)

If you are unsure, it's ok to open an issue on this repository to discuss a principle to get some general pointers. If you create a pull request and any of the above problems exist, don't worry, the maintainers will point them out, and you'll have opportunities to correct it.

Also, try your best before reaching out to the maintainers. That means reading the documentation beforehand and understanding this project. If you've spent a lot of time on something, the maintainers will be more willing to help you.

Thank you for reading and making Software Engineering better for everyone.

Keeping in touch

Sign up for an account at https://principles.dev and follow @principles_dev to learn more about principles.

Licensing

Principles are generally licensed under Creative Commons Attribution-ShareAlike 4.0 International. But may be licensed under other creative commons license. Refer to the individual principle meta-data for license claims.

e.g. license = "CC BY-SA 4.0"

Principles may also be licensed under a dual GPLv3.0 license to allow software distribution under the same terms. Refer to the individual principle meta data for license claims.

e.g. allow_dual_licensing_to_GPLv3 = true

principles's People

Contributors

adamcraven avatar kealanparr avatar streamer45 avatar swyxio avatar russmiles avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.