https://github.com/kingdido999/awesome-programming-concepts
A curated list of awesome programming concepts.
https://github.com/kingdido999/awesome-programming-concepts
List: awesome-programming-concepts
awesome-list programming
Last synced: 20 days ago
JSON representation
A curated list of awesome programming concepts.
- Host: GitHub
- URL: https://github.com/kingdido999/awesome-programming-concepts
- Owner: kingdido999
- Created: 2018-01-07T08:31:01.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-08-01T18:44:46.000Z (almost 8 years ago)
- Last Synced: 2026-03-31T16:47:49.037Z (3 months ago)
- Topics: awesome-list, programming
- Homepage:
- Size: 7.81 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Awesome Programming Concepts [](https://awesome.re)
A curated list of awesome explanations of programming concepts.
- [Programming](#programming)
- [Version Control](#version-control)
## Programming
### Channel
> You can imagine a channel in programming like a channel of water, such as a stream or a river. If you put something like a rubber duck or a boat into a stream, it will travel downstream to the end of the river.
[Source](https://doc.rust-lang.org/stable/book/second-edition/ch16-02-message-passing.html)
### Mutex
> For a real-world metaphor of a mutex, imagine a panel discussion at a conference with only one microphone. Before a panelist may speak, they have to ask or signal that they would like to use the microphone. Once they get the microphone, they may talk for as long as they would like, then hand the microphone to the next panelist who requests to speak. If a panelist forgets to hand the microphone off when they’re finished with it, no one else is able to speak. If management of the shared microphone goes wrong, the panel would not work as planned!
[Source](https://doc.rust-lang.org/book/second-edition/ch16-03-shared-state.html#mutexes-allow-access-to-data-from-one-thread-at-a-time)
### Reference Counting
> Imagine it like a TV in a family room. When one person enters to watch TV, they turn it on. Others can come into the room and watch the TV. When the last person leaves the room, they turn the TV off because it’s no longer being used. If someone turns the TV off while others are still watching it, there’d be uproar from the remaining TV watchers!
[Source](https://doc.rust-lang.org/book/second-edition/ch15-04-rc.html)
## Version Control
### Merge vs Rebase
> Merge: “Tell me your version of the story, I’ll tell you mine, and then we’ll try to piece something together out of them”
> Rebase: “Tell me your version of the story, and I will interrupt your every sentence to tell you where you’re wrong”
[Source](https://twitter.com/dan_abramov/status/952572767584604160?s=09)