Skip to content

Commit

Permalink
[sync] Updates from awesome-template
Browse files Browse the repository at this point in the history
Signed-off-by: kdeldycke <[email protected]>
  • Loading branch information
kdeldycke committed Nov 3, 2024
1 parent 0cc7d1c commit 80758bb
Show file tree
Hide file tree
Showing 9 changed files with 209 additions and 60 deletions.
14 changes: 8 additions & 6 deletions .github/ISSUE_TEMPLATE/new-link.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -40,13 +40,15 @@ body:
label: Self checks
options:
- label: >
I have [read the Code of
Conduct](https://github.com/kdeldycke/awesome-falsehood/blob/main/.github/code-of-conduct.md)
I have [read the Code of Conduct
](https://github.com/kdeldycke/awesome-falsehood/blob/main/.github/code-of-conduct.md)
- label: >
I applied all rules from the [Contributing
guide](https://github.com/kdeldycke/awesome-falsehood/blob/main/.github/contributing.md)
I applied all rules from the [Contributing guide
](https://github.com/kdeldycke/awesome-falsehood/blob/main/.github/contributing.md)
- label: >
I have checked there is no other [Issues](https://github.com/kdeldycke/awesome-falsehood/issues) or [Pull
Requests](https://github.com/kdeldycke/awesome-falsehood/pulls) covering the same topic to open
I have checked there is no other
[Issues](https://github.com/kdeldycke/awesome-falsehood/issues) or [Pull
Requests](https://github.com/kdeldycke/awesome-falsehood/pulls) covering the same topic
to open
validations:
required: true
210 changes: 163 additions & 47 deletions .github/contributing.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,49 +2,9 @@

Your contributions are always welcome! Here are some guidelines.

## Good Candidates
## Status

Before contributing, make sure the new link you'd like to add is a good
candidate.

Here is a non-restrictive list of items which are good candidates for inclusion
in this awesome list.

### Falsehood Articles

Articles following the *falsehood* schema are prime candidates for inclusion in
this awesome list.

These articles starts with the hypothesis that developers have a naive and
simple view of a domain. Then proceed to list a set of candid assumptions that
might be held by programmers. Each one is intentionally false, and in their
best form are illustrated with a counter-example.

A list of falsehood is crafted as a progression that is designed to refine
concepts. Having read the whole list of falsehood, the reader should possess a
better overview of a domain while dispelling its myths, point out common
pitfalls and demonstrate its subtleties.

*falsehood* articles are, in a sense, a suite of wordy unit-tests covering
extensive edge-cases provided by real-world usage. The world is messy.
Discovering a domain to be much more complex than anticipated will lead to
frustrations. And cause flipping tables `(╯°□°)╯︵ ┻━┻`. This is the sign of a
great candidate for that list!

Articles featuring items that are applicable to one product (or a service) and
one only can't be considered as generic enough and should be avoided.

### Libraries

Programming libraries or modules are good candidates too, if they solve or
reduce the complexities pointed to by *falsehood* articles above.

That way we can put back tables in place. `┬─┬ ノ( ゜-゜ノ)`

### Data Structures

Data models and structures generic enough to cover and address most of the
falsehoods are also welcome in this page.
This repository has reached an equilibrium state. We are past its accumulation phase, and in the middle of the curation process. Meaning we're more into refining its concepts, smooth the progression and carefully evaluating the addition of new content.

## Pull-requests and issues

Expand Down Expand Up @@ -93,16 +53,20 @@ If one of these rule conflict with the linter, the linter's rule should takes pr

### Sections

- Sections are in alphabetical order, as all topics are independent from each others.
- Sections **are not in the alphabetical order**, to provide a progression, from general to specific topics.

> [!IMPORTANT]
> In `awesome-falsehood`, sections **are in alphabetical order**, as all topics are independent from each others.
- Section might feature one paragraph introduction and a figure (graph, drawing, photo).

### Item title

- Link title must be stripped out of the "*Programmers believe*" part to keep it compact.

- URLs must use HTTPs protocol, if available.

> [!IMPORTANT]
> In `awesome-falsehood`, link titlea must be stripped out of the "*Programmers believe*" part to keep it compact.
- No `` and `` curved quotation marks. This is reserved for original content quotation in descriptions.

- To quote, use either the single or double variations: `'` and `"`. Keep them properly balanced.
Expand All @@ -111,7 +75,7 @@ If one of these rule conflict with the linter, the linter's rule should takes pr

- Try to provide an actionable TL;DR as a description, quoting the original text if it stands by itself.

- [Removes `TL;DR:` prefix in description](https://github.com/kdeldycke/awesome-iam/commit/537cbfd8beaca18d44a0962e107a6db9171a0345). Every description is a short summary anyway.
- [Removes `TL;DR:` prefix in description](https://github.com/kdeldycke/awesome-engineering-team-management/commit/da298ec1c39fe62fd4553e1a6de0ad4494602c57). Every description is a short summary anyway.

- Quotes should be properly delimited with the `` and `` curved quotation marks.

Expand Down Expand Up @@ -154,4 +118,156 @@ One-liners to fix-up some common formatting mistakes. Use with great caution and
$ sed -i 's/`$/`\./g' ./readme.md
```

[Other one-liners are available](https://kevin.deldycke.com/2006/12/text-date-document-processing-commands/) on my blog.
[Other one-liners are available](https://kevin.deldycke.com/2006/text-date-document-processing-commands/) on my blog.

## Editorial line

The general editorial line for each list is [hinted in their introduction](https://github.com/kdeldycke/awesome-template#readme).

There's also some specific rules depending on the list:

### [`awesome-engineering-team-management`](https://github.com/kdeldycke/awesome-engineering-team-management): item orders

Items are roughly ordered like so:

1. At first we'll find content appealing to software developers or new managers. We're reaching for accessibility and targets the wider audience and provide a gentle introduction.
1. Then we can have a couple of real use-cases or anecdotes, which makes the subject more hands-on and relatable.
1. Third we might add a couple of reference material to generalize concepts, provide methodical solutions and expose broader thinking frameworks.
1. At the end comes the most cynical or bleak content, which have some utility as cautionary tales, or as warning signals of deteriorating conditions.

### [`awesome-falsehood`](https://github.com/kdeldycke/awesome-falsehood): candidates

Before contributing, make sure the new link you'd like to add is a good
candidate.

Here is a non-restrictive list of items which are good candidates for inclusion
in the `awesome-falsehood` list.

#### Falsehood articles

Articles following the *falsehood* schema are prime candidates for inclusion in
this awesome list.

These articles starts with the hypothesis that developers have a naive and
simple view of a domain. Then proceed to list a set of candid assumptions that
might be held by programmers. Each one is intentionally false, and in their
best form are illustrated with a counter-example.

A list of falsehood is crafted as a progression that is designed to refine
concepts. Having read the whole list of falsehood, the reader should possess a
better overview of a domain while dispelling its myths, point out common
pitfalls and demonstrate its subtleties.

*falsehood* articles are, in a sense, a suite of wordy unit-tests covering
extensive edge-cases provided by real-world usage. The world is messy.
Discovering a domain to be much more complex than anticipated will lead to
frustrations. And cause flipping tables `(╯°□°)╯︵ ┻━┻`. This is the sign of a
great candidate for that list!

Articles featuring items that are applicable to one product (or a service) and
one only can't be considered as generic enough and should be avoided.

#### Libraries

Programming libraries or modules are good candidates too, if they solve or
reduce the complexities pointed to by *falsehood* articles above.

That way we can put back tables in place. `┬─┬ ノ( ゜-゜ノ)`

#### Data structures

Data models and structures generic enough to cover and address most of the
falsehoods are also welcome in this page.

## FAQ

Some cases to illustrate the curation process.

### Can I rewrite your sentences and paragraphs?

Yes. I'm a non-native speaker, so some of my writings might be a little bit fancy. If you can propose a shorter, to the point, and accurate version of my initial text, go for it! These improvements [adds a lot of readability for both kind of readers](https://github.com/kdeldycke/awesome-falsehood/pull/105).

### Can I propose YouTube videos for the list?

Yes, but try to pin-point the start of the video to a relevant time. Like with the `&t=13m30s` parameter in YouTube URLs.

Better than a video: have a link to its written transcript. Or presentation slides if it doesn't dillute the point being made.

### Can I link to an X thread?

Yes, but try to search first in the content produced by the author: sometimes the said author edited its rant into a more digestible article elsewhere. We'll prefer to link to that.

### How to prevent link-rot?

[As pointed by a contributor](https://github.com/kdeldycke/awesome-engineering-team-management/issues/52#issue-1499417056):

> The links here have a tendency to go offline. For this to be a resource of long term value, link-rot can be avoided by archiving the pages.
Which is true.

I have no issue replacing the original URL with an alternative archived/cached link if the original is no longer reachable.

Broken URLs are frustrating. We will fix them one by one. Some have been moved to a new domain. Some have completely disappear, so we'll replace them with a `archive.org` link.

If you find a broken one, please propose a PR to fix it. Or just report it as an issue and I'll do the work.

### How are you going to archive articles that went offline?

This question points to the paradox that we need to archive them *before* they go offline.

There is no rush to pre-emptively archive content. Incentives exists for others to do it:

- This list is popular enough for its content to be picked up by regular archival crawlers.
- Popular content in this list are naturally archived by users who value them.
- Authors who cares about their content, or benefits from the SEO juice this list provides, have an incentive to keep them available at their original URL.

Despites these incentives, there is still a non-zero chance for content to disappear entirely from the web, with no archived copy in `archive.org`. That's not the end of the world. Maybe the content wasn't worth it, and not good for inclusion in the first place. Think of this edge-case as a natural selection process on content, which helps natural curation.

### Why removes inactive GitHub projects?

Unmaintained GitHub repositories are usually [archived by their owners](https://docs.github.com/en/repositories/archiving-a-github-repository/archiving-repositories). But some are de-facto unmaintained, or abandoned as-is by their author, without being explicitly archived.

Either way, if the space they addresses is crowded, and there are other repositories referenced in the list, the link is a good candidate for deletion to reduce noise.

On the other hand, if the project has been forked or rebooted elsewhere, we can now point out to the new location.

### Why my commercial project is not in the list?

Probably because the core content is behind a paywall. Especially if there are better resources online, which are more extensive, and freely accessible.

This is especially true for SaaS and other licensed software. If there is an open-source project available, we'd rather point to that instead of commercial solutions.

These alternatives don't need to be better. They qualify if they're good enough to derives inspiration from, or starts something without barriers to entry.

So for as set of multiple overlapping projects, we will consider commercial ones as duplicates and remove them, to keep the list lean.

### Why my link was rejected?

If your link was rejected, it must have been motivated and explained to the contributor as a comment to your PR.

Some reasons for rejection, which often overlaps, includes:

- deviance from these contribution guidelines
- violation of the [code of conduct](code-of-conduct.md)
- duplicate content
- lack of motivation in what the new link adds to the existing corpus
- lack of originality
- overcrowded section that [needs more curation than additional content](https://github.com/kdeldycke/awesome-iam/pull/76)
- [commercially-sponsored content only proposed for SEO](https://github.com/kdeldycke/awesome-falsehood/pull/31#issuecomment-407667679)
- lack of feedback from the contributor on raised questions

### How can I force a link into the list?

If your contribution has been declined, there is a way to bypass the curation rules. You can [purchase a sponsorship](https://github.com/sponsors/kdeldycke) and have your product, logo and link at the top of this repository! 🤗 Like [Descope did for a year](https://twitter.com/kdeldycke/status/1676963147104784386) on the [awesome IAM list](https://twitter.com/kdeldycke/status/1676963147104784386).

## FAQ for [`awesome-falsehood`](https://github.com/kdeldycke/awesome-falsehood)

This questions are specifics to the [Awesome Falsehood](https://github.com/kdeldycke/awesome-falsehood) project.

### Why don't you copy the falsehoods in the list?

This might be a good idea to compile all falsehoods in the repository. It would allow the community to maintain them, and enrich them. It could also improve the overall quality as most external articles don't make the effort to illustrate or explain why a falsehood is a falsehood.

But that is a big endeavor, so to keep things simple, we just make a collection of external articles in this list. In the mean time, if you'd like to add falsehoods, I will ask potential contributors to [host them elsewhere](https://github.com/kdeldycke/awesome-falsehood/issues/46).

Also, if we had to host the raw falsehoods in this repository, we might have to [check on the licence and seek permission from the original author](https://github.com/kdeldycke/awesome-falsehood/issues/24#issuecomment-354112401).
32 changes: 32 additions & 0 deletions .github/gitleaks.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
[allowlist]
description = "False positives"
commits = [
### kdeldycke/awesome-billing
# Twitter status IDs.
"5b54ac1befb7a768a18b2abd4a7b091766ee7609",
"4607e5923f1889ce5136b1a6bdfbddd769cd7fc3",
"1cfd0513359a5ce20b538b6a637d40c4cc50a37f",

### kdeldycke/awesome-engineering-team-management
# Twitter status IDs.
"044ccf813c180d1b52fa550549f1e3ffe7ad3176",
"4ee04962090c60f9d2bd26e507584c95b2f039cb",
"e945e90fbcd4b610d71cbe766b1c909b51c674a5",
"bdae66b4dbc54fcf66aa2c5bf61598c894a6172d",
"6462b4a4b0335823f2a9e8412a1c10a38561900e",
"ac1dd92507ed071da3ac5270484a152bfef93aa2",
"e9eb3864157f504cb29fab33d4f63748302c963d",
"a43eef1b55fff47879fe671abbebc7e279d59999",
"1a5e33dd31d129a1335ae2418ec43bf1d43c3760",
"0e05ffafc90dd4ea337aca7372c983e143ba48a8",
"0e93d0ced146e4a32a1838b1aa4dbf2d20703964",
"df0e49b612e68b9389c671463640e5d17b479231",
"b743e4aecc5822c51aa088312b20d4965720aa7e",
"94c532529b78b20e9363bded9e2788dd03a59832",
"f0fe92563a14f93dbe07579ff735b844cfb69a7d",
"a804606fb0794615df5c078ab220b615796e1ba9",
"14d523e38ebe8f2859646c4cb9736b1843802476",
"36c488d8b52f66120d51b0fbb7b93667453461fe",
"1da97b40558cd6c5941edd2db9f9a58407d5a3bf",
"56f8e6771c88625ed82e6663961fc2874c53f874",
]
2 changes: 1 addition & 1 deletion .github/workflows/autofix.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ name: Autofix
jobs:

autofix:
uses: kdeldycke/workflows/.github/workflows/autofix.yaml@v3.4.7
uses: kdeldycke/workflows/.github/workflows/autofix.yaml@v4.4.0
2 changes: 1 addition & 1 deletion .github/workflows/autolock.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ name: Autolock
jobs:

autolock:
uses: kdeldycke/workflows/.github/workflows/autolock.yaml@v3.4.7
uses: kdeldycke/workflows/.github/workflows/autolock.yaml@v4.4.0
3 changes: 1 addition & 2 deletions .github/workflows/docs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,4 @@ name: Docs
jobs:

docs:
uses: kdeldycke/workflows/.github/workflows/[email protected]
secrets: inherit
uses: kdeldycke/workflows/.github/workflows/[email protected]
2 changes: 1 addition & 1 deletion .github/workflows/label-sponsors.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@ name: Label sponsors
jobs:

label-sponsors:
uses: kdeldycke/workflows/.github/workflows/label-sponsors.yaml@v3.4.7
uses: kdeldycke/workflows/.github/workflows/label-sponsors.yaml@v4.4.0
2 changes: 1 addition & 1 deletion .github/workflows/labels.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ name: Labels
jobs:

labels:
uses: kdeldycke/workflows/.github/workflows/labels.yaml@v3.4.7
uses: kdeldycke/workflows/.github/workflows/labels.yaml@v4.4.0
2 changes: 1 addition & 1 deletion .github/workflows/lint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ name: Lint
jobs:

lint:
uses: kdeldycke/workflows/.github/workflows/lint.yaml@v3.4.7
uses: kdeldycke/workflows/.github/workflows/lint.yaml@v4.4.0

0 comments on commit 80758bb

Please sign in to comment.