All Projects → PrinciplesDotDev → principles

PrinciplesDotDev / principles

Licence: GPL-3.0 license
An open-source list of principles used in software engineering

Projects that are alternatives of or similar to principles

Easymvp
A full-featured framework that allows building android applications following the principles of Clean Architecture.
Stars: ✭ 1,312 (+458.3%)
Mutual labels:  principles
Java Design Patterns
Design patterns implemented in Java
Stars: ✭ 71,923 (+30505.53%)
Mutual labels:  principles
NamingThings
Content on tips, tricks, advice, practices for naming things in in software/technology
Stars: ✭ 31 (-86.81%)
Mutual labels:  principles
State Of The Art Shitcode
💩State-of-the-art shitcode principles your project should follow to call it a proper shitcode
Stars: ✭ 2,207 (+839.15%)
Mutual labels:  principles
Write Readable Javascript Code
📖 All about writing maintainable JavaScript
Stars: ✭ 244 (+3.83%)
Mutual labels:  principles
hacker-laws-tr
💻📖 Programcıların faydalı bulacağı yasalar, teoriler, prensipler ve desenler. #hackerlaws
Stars: ✭ 810 (+244.68%)
Mutual labels:  principles
Design Patterns For Humans
An ultra-simplified explanation to design patterns
Stars: ✭ 32,376 (+13677.02%)
Mutual labels:  principles
design-patterns-explained
Explanation for most of the well-known design patterns with examples and figures.
Stars: ✭ 18 (-92.34%)
Mutual labels:  principles
Data Making Guidelines
📘 Making Data, the DataMade Way
Stars: ✭ 248 (+5.53%)
Mutual labels:  principles
clean-code-javascript-ko
🛁 Clean Code concepts adapted for JavaScript - 한글 번역판 🇰🇷
Stars: ✭ 1,767 (+651.91%)
Mutual labels:  principles
Books
Books worth spreading
Stars: ✭ 161 (-31.49%)
Mutual labels:  principles
Clean Code Javascript Tr
JavaScript için Uyarlanmış Temiz Kod Kavramları
Stars: ✭ 232 (-1.28%)
Mutual labels:  principles
programming-principles
Categorized overview of Programming Principles & Patterns
Stars: ✭ 289 (+22.98%)
Mutual labels:  principles
Clean Code Javascript
🛁 Clean Code concepts adapted for JavaScript
Stars: ✭ 62,912 (+26671.06%)
Mutual labels:  principles
notes
My personal tutorials and notes.
Stars: ✭ 34 (-85.53%)
Mutual labels:  principles
Hacker Laws Zh
💻📖对开发人员有用的定律、理论、原则和模式。(Laws, Theories, Principles and Patterns that developers will find useful.)
Stars: ✭ 9,446 (+3919.57%)
Mutual labels:  principles
api-principles
The applicable SBB API Principles
Stars: ✭ 31 (-86.81%)
Mutual labels:  principles
job-interview-solid-principles-test
A programming job interview questions that test the understanding of basic principles and patterns
Stars: ✭ 32 (-86.38%)
Mutual labels:  principles
clean-architecture
Recommendations for sufficiently clean architecture for local database storage and persistent storage.
Stars: ✭ 11 (-95.32%)
Mutual labels:  principles
OOD-Principles-Kotlin
The Principles of OOD in Kotlin 1.3.61
Stars: ✭ 12 (-94.89%)
Mutual labels:  principles

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

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].