diff --git a/Blog/Misc/pluralsight_trial.md b/Blog/Misc/pluralsight_trial.md deleted file mode 100644 index ece4008b0..000000000 --- a/Blog/Misc/pluralsight_trial.md +++ /dev/null @@ -1,7 +0,0 @@ -# Pluralsight demo / trial - -Create a new Pluralsight Account with a one month demo trough Visual Studio Dev Essentials. - -1. [Create a new Microsoft account with a Microsoft live email](https://visualstudio.microsoft.com/de/dev-essentials/) -2. [Activate PluralSight benefits](https://my.visualstudio.com/Benefits?wt.mc_id=o~msft~profile~devprogram_attach&workflowid=devprogram&mkt=en-us) -3. [Confirm the registration email](https://outlook.live.com/mail/0/?JitExp=1&state=2) diff --git a/DevOps/Continuous-Integration/Formatters/Black.md b/DevOps/Continuous-Integration/Formatters/Black.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/DevOps/Continuous-Integration/GitLab-CICD/clear_artifacts.md b/DevOps/Continuous-Integration/GitLab-CICD/clear_artifacts.md index 3be48dee9..779ed7475 100644 --- a/DevOps/Continuous-Integration/GitLab-CICD/clear_artifacts.md +++ b/DevOps/Continuous-Integration/GitLab-CICD/clear_artifacts.md @@ -1,4 +1,4 @@ -# Script to clear GitLab CI/CD Artifacts +# Script to clear GitLab CI/CD Artifacts via the REST API ```python import requests diff --git a/DevOps/Continuous-Integration/Type-Checkers/MyPy.md b/DevOps/Continuous-Integration/Type-Checkers/MyPy.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/DevOps/Infrastructure-Solutions/Container/Docker/docker-ipv6.md b/DevOps/Infrastructure-Solutions/Container/Docker/docker-ipv6.md deleted file mode 100644 index 858087b1b..000000000 --- a/DevOps/Infrastructure-Solutions/Container/Docker/docker-ipv6.md +++ /dev/null @@ -1,6 +0,0 @@ -# Docker with IPv6 - -## Setup - -Test with a busybox container -`docker run --rm -it busybox sh` \ No newline at end of file diff --git a/DevOps/Infrastructure-Solutions/Container/Kubernetes/K3S/Install K3S on Raspberry PIs.md b/DevOps/Infrastructure-Solutions/Container/Kubernetes/K3S/Install K3S on Raspberry PIs.md deleted file mode 100644 index eb5406a7f..000000000 --- a/DevOps/Infrastructure-Solutions/Container/Kubernetes/K3S/Install K3S on Raspberry PIs.md +++ /dev/null @@ -1,71 +0,0 @@ - -# Manager - -## With Traefik -```bash -curl -sfL https://get.k3s.io | sh -s - --write-kubeconfig-mode 644 -``` - -## Without Traefik -```bash -curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="--no-deploy traefik" sh -s - --write-kubeconfig-mode 644 -``` - -Get a token for the worker nodes - -```bash -sudo cat /var/lib/rancher/k3s/server/token -``` - - -# Worker Node - -Set the K3S Token - -```bash -export K3S_TOKEN=blablabla -``` - - -``` -curl -sfL https://get.k3s.io | K3S_URL=https://manager01.fritz.box:6443 K3S_TOKEN=$K3S_TOKEN sh - -``` - -[Generate kubeconfig](https://docs.d2iq.com/dkp/kommander/2.0/clusters/attach-cluster/generate-kubeconfig/) - -# Create a Service Account for kubectl -```bash -kubectl -n default apply -f - < ` - -## Example - -`kubectl create job --from=cronjob/check-job test-job-1` diff --git a/DevOps/Infrastructure-Solutions/Container/Kubernetes/kubectl/busybox.md b/DevOps/Infrastructure-Solutions/Container/Kubernetes/kubectl/busybox.md deleted file mode 100644 index 2de7efcf2..000000000 --- a/DevOps/Infrastructure-Solutions/Container/Kubernetes/kubectl/busybox.md +++ /dev/null @@ -1 +0,0 @@ -`kubectl run -i --tty --rm debug --image=busybox --restart=Never -- sh` \ No newline at end of file diff --git a/DevOps/Infrastructure-Solutions/Container/Kubernetes/kubectl/label.md b/DevOps/Infrastructure-Solutions/Container/Kubernetes/kubectl/label.md deleted file mode 100644 index 02a2b4ae2..000000000 --- a/DevOps/Infrastructure-Solutions/Container/Kubernetes/kubectl/label.md +++ /dev/null @@ -1,9 +0,0 @@ -# nodes - -## add node label - -`kubectl label node node01 node-role.kubernetes.io/name` - -## delete node label - -`kubectl label node node01 node-role.kubernetes.io/name-` \ No newline at end of file diff --git a/DevOps/Infrastructure-Solutions/Container/Kubernetes/kubectl/serviceaccount.md b/DevOps/Infrastructure-Solutions/Container/Kubernetes/kubectl/serviceaccount.md deleted file mode 100644 index bfef98a7a..000000000 --- a/DevOps/Infrastructure-Solutions/Container/Kubernetes/kubectl/serviceaccount.md +++ /dev/null @@ -1,86 +0,0 @@ -# ServiceAccounts - -## Create a ServiceAccount - -gitlab-service-account.yml with ClusterRoleBinding - -```yml ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - name: gitlab-service-account - ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: gitlab-service-account-role-binding -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: cluster-admin -subjects: - - kind: ServiceAccount - name: gitlab-service-account - namespace: default -``` - -gitlab-service-account.yml with RoleBinding - -```yml ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - name: gitlab-service-account - namespace: - ---- -kind: Role -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: cicd-role - namespace: -rules: -- apiGroups: - - "" - - apps - - extensions - resources: - - '*' - verbs: - - '*' - ---- -kind: RoleBinding -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: cicd-role - namespace: -subjects: - - kind: ServiceAccount - name: gitlab-service-account -roleRef: - kind: Role - name: cicd-role - apiGroup: rbac.authorization.k8s.io -``` - -### Get the created token - -```bash -kubectl -n describe secret gitlab-service-account-token- -``` - -```bash -export K8S_SERVER="https://10.24.1.1:6443" -export K8S_CLUSTER="gitlab-test" -export K8S_USER="gitlab-service-account" -export K8S_USER_TOKEN="" - -kubectl config set-cluster $K8S_CLUSTER --server=$K8S_SERVER --insecure-skip-tls-verify=true -kubectl config set-credentials $K8S_USER --token=$K8S_USER_TOKEN -kubectl config set-context $K8S_CLUSTER --cluster=$K8S_CLUSTER --user=$K8S_USER -kubectl config use-context $K8S_CLUSTER -``` diff --git a/DevOps/Infrastructure-Solutions/Container/additional/Traefik/Excluding.md b/DevOps/Infrastructure-Solutions/Container/additional/Traefik/Excluding.md deleted file mode 100644 index 1630eb293..000000000 --- a/DevOps/Infrastructure-Solutions/Container/additional/Traefik/Excluding.md +++ /dev/null @@ -1,13 +0,0 @@ -``` -services: - whoami: - image: "traefik/whoami" - container_name: "whoami-test" - labels: - - "traefik.enable=true" - - "traefik.http.routers.whoami-test.rule=Host(`whoami-test.fritz.box`)" - - "traefik.http.routers.whoami-test.entrypoints=http" - - "traefik.http.routers.whoami-test.middlewares=intern_whitelist" - - "traefik.http.middlewares.intern_whitelist.ipwhitelist.sourcerange=192.168.2.0/23" - - "traefik.http.middlewares.intern_whitelist.ipwhitelist.ipstrategy.excludedips=192.168.2.1, 192.168.2.124" -``` \ No newline at end of file diff --git a/DevOps/Infrastructure-Solutions/Container/additional/Traefik/External Services.md b/DevOps/Infrastructure-Solutions/Container/additional/Traefik/External Services.md deleted file mode 100644 index a9b83d1b1..000000000 --- a/DevOps/Infrastructure-Solutions/Container/additional/Traefik/External Services.md +++ /dev/null @@ -1,27 +0,0 @@ -``` -http: - routers: - intern: {} - entryPoints: - - "http" - - "https" - rule: "Host(`HostRegexp(`fritz.box`, `{subdomain:[a-z]+}.fritz.box`, ...)`)" - pihole: - entryPoints: - - "http" - - "https" - rule: "Host(`pihole.fritz.box`)" - service: pihole - middlewares: - - addprefix-pihole - services: - pihole: - loadBalancer: - servers: - - url: "http://192.168.2.19:80" - passHostHeader: true - middlewares: - addprefix-pihole: - addPrefix: - prefix: "/admin" -``` \ No newline at end of file diff --git a/DevOps/Infrastructure-Solutions/Container/Docker/docker-commands.md b/DevOps/Infrastructure-Solutions/Docker/docker-commands.md similarity index 100% rename from DevOps/Infrastructure-Solutions/Container/Docker/docker-commands.md rename to DevOps/Infrastructure-Solutions/Docker/docker-commands.md diff --git a/DevOps/Infrastructure-Solutions/Container/Docker/ssh-keys.md b/DevOps/Infrastructure-Solutions/Docker/ssh-keys.md similarity index 100% rename from DevOps/Infrastructure-Solutions/Container/Docker/ssh-keys.md rename to DevOps/Infrastructure-Solutions/Docker/ssh-keys.md diff --git a/DevOps/Infrastructure-Solutions/Container/Kubernetes/K3S/raspberry.md b/DevOps/Infrastructure-Solutions/Kubernetes/K3S/raspberry.md similarity index 73% rename from DevOps/Infrastructure-Solutions/Container/Kubernetes/K3S/raspberry.md rename to DevOps/Infrastructure-Solutions/Kubernetes/K3S/raspberry.md index dcc47ad5a..b3f68a5a9 100644 --- a/DevOps/Infrastructure-Solutions/Container/Kubernetes/K3S/raspberry.md +++ b/DevOps/Infrastructure-Solutions/Kubernetes/K3S/raspberry.md @@ -12,6 +12,3 @@ sudo vim /boot/firmware/cmdline.txt Add `cgroup_enable=cpuset cgroup_enable=memory cgroup_memory=1` into end of the file. -## Links - -- [k3s on pi error - cgroup_memory=1 cgroup_enable=memory](https://github.com/k3s-io/k3s/issues/2067) diff --git a/DevOps/Infrastructure-Solutions/Container/Kubernetes/ckad.md b/DevOps/Infrastructure-Solutions/Kubernetes/ckad.md similarity index 100% rename from DevOps/Infrastructure-Solutions/Container/Kubernetes/ckad.md rename to DevOps/Infrastructure-Solutions/Kubernetes/ckad.md diff --git a/DevOps/Infrastructure-Solutions/Container/Kubernetes/kubectl/delete.md b/DevOps/Infrastructure-Solutions/Kubernetes/kubectl/delete.md similarity index 100% rename from DevOps/Infrastructure-Solutions/Container/Kubernetes/kubectl/delete.md rename to DevOps/Infrastructure-Solutions/Kubernetes/kubectl/delete.md diff --git a/DevOps/Infrastructure-Solutions/Container/Podman/migrate-compose-to-kubefiles.md b/DevOps/Infrastructure-Solutions/Podman/migrate-compose-to-kubefiles.md similarity index 100% rename from DevOps/Infrastructure-Solutions/Container/Podman/migrate-compose-to-kubefiles.md rename to DevOps/Infrastructure-Solutions/Podman/migrate-compose-to-kubefiles.md diff --git a/DevOps/Infrastructure-Solutions/Container/Podman/podman-compose-systemd-files.md b/DevOps/Infrastructure-Solutions/Podman/podman-compose-systemd-files.md similarity index 100% rename from DevOps/Infrastructure-Solutions/Container/Podman/podman-compose-systemd-files.md rename to DevOps/Infrastructure-Solutions/Podman/podman-compose-systemd-files.md diff --git a/DevOps/Infrastructure-Solutions/Container/Podman/podman-quadlets.md b/DevOps/Infrastructure-Solutions/Podman/podman-quadlets.md similarity index 99% rename from DevOps/Infrastructure-Solutions/Container/Podman/podman-quadlets.md rename to DevOps/Infrastructure-Solutions/Podman/podman-quadlets.md index 79b8275a8..6c4c61280 100644 --- a/DevOps/Infrastructure-Solutions/Container/Podman/podman-quadlets.md +++ b/DevOps/Infrastructure-Solutions/Podman/podman-quadlets.md @@ -49,5 +49,3 @@ podman logs systemd-deluge journactl -f | grep deluge ``` - -## Pods diff --git a/DevOps/Infrastructure-Solutions/Container/Podman/setup-rootless.md b/DevOps/Infrastructure-Solutions/Podman/setup-rootless.md similarity index 91% rename from DevOps/Infrastructure-Solutions/Container/Podman/setup-rootless.md rename to DevOps/Infrastructure-Solutions/Podman/setup-rootless.md index 6e29bebea..270c35d6c 100644 --- a/DevOps/Infrastructure-Solutions/Container/Podman/setup-rootless.md +++ b/DevOps/Infrastructure-Solutions/Podman/setup-rootless.md @@ -17,8 +17,8 @@ sysctl --system ## Create user ```bash -useradd -m -s /bin/bash container -sudo -iu container +useradd -m -s /bin/bash podman +sudo -iu podman ``` ## Create podman socket diff --git a/DevOps/Infrastructure-as-Code/ArgoCD/Setup Argo CD with a Helm Charts Repository.md b/DevOps/Infrastructure-as-Code/ArgoCD/Setup Argo CD with a Helm Charts Repository.md deleted file mode 100644 index 67114bf0e..000000000 --- a/DevOps/Infrastructure-as-Code/ArgoCD/Setup Argo CD with a Helm Charts Repository.md +++ /dev/null @@ -1,24 +0,0 @@ -# Install Argo CD - -[Getting Started Guide](https://argo-cd.readthedocs.io/en/stable/getting_started/) - -```bash -kubectl create namespace argocd -kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml -``` - -[Download Argo CD CLI](https://argo-cd.readthedocs.io/en/stable/cli_installation/) - -Create a load balancer to use the API Server - -```bash -kubectl patch svc argocd-server -n argocd -p '{"spec": {"type": "LoadBalancer"}}' -``` - -Get the initial admin secrets -```bash -kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d -``` - - - diff --git a/Other/DuckDNS update or set IP script.md b/Misc/DuckDNS update or set IP script.md similarity index 100% rename from Other/DuckDNS update or set IP script.md rename to Misc/DuckDNS update or set IP script.md diff --git a/Other/digital-gardening.md b/Misc/digital-gardening.md similarity index 100% rename from Other/digital-gardening.md rename to Misc/digital-gardening.md diff --git a/Networking/Cumulus Linux/about-cumulus-linux.md b/Networking/Cumulus Linux/about-cumulus-linux.md deleted file mode 100644 index 057e8f0ab..000000000 --- a/Networking/Cumulus Linux/about-cumulus-linux.md +++ /dev/null @@ -1 +0,0 @@ -# About Cumulus Linux \ No newline at end of file diff --git a/Networking/Virtualization/VXLAN/vxlan-general.md b/Networking/Virtualization/VXLAN/vxlan-general.md deleted file mode 100644 index 550ecf4d2..000000000 --- a/Networking/Virtualization/VXLAN/vxlan-general.md +++ /dev/null @@ -1,14 +0,0 @@ -# VXLAN General - -VXLAN (Virtual Extensible LAN) is a standard overlay protocol that abstracts logical virtual networks from the physical network underneath. With VXLAN simple and scalable layer 3 Clos architectures can be deployed, while extending layer 2 segments over that layer 3 network. VTEPs (VXLAN Tunnel Endpoints) are the tunnel edges. - -VXLAN uses a VLAN-like encapsulation technique to encapsulate MAC-based layer 2 Ethernet frames within layer 3 UDP packets Each virtual network is a VXLAN logical layer 2 segment. VXLAN scales to 16 million segments - a 24-bit VXLAN network identifier (VNI ID) in the VXLAN header - for multi-tenancy. - -In a large VXLAN deployment, two aspects need attention: -1. discovery of other endpoints (VTEPs) sharing the same VXLAN segments -2. avoidance of BUM frames (broadcast, unknown unicast and multicast) as they have to be forwarded to all VTEPs. - -On [[about-cumulus-linux|Cumulus Linux]] each VXLAN is locally configured using a bridge for local virtual interfaces. The bridge is taking care of the local MAC addresses (notably, using source-address learning) and the VXLAN interface takes care of the remote MAC addresses (received with BGP EVPN). - -## Links: -- [Network Virtualization](https://docs.nvidia.com/networking-ethernet-software/cumulus-linux-44/Network-Virtualization/) \ No newline at end of file diff --git a/Networking/Virtualization/network-virtualization.md b/Networking/Virtualization/network-virtualization.md deleted file mode 100644 index cfe386794..000000000 --- a/Networking/Virtualization/network-virtualization.md +++ /dev/null @@ -1,8 +0,0 @@ -# Network Virtualization - -Network virtualization is the carving up of a single physical network into many virtual networks. Virtualizing a resource allows it to be shared by multiple users. Sharing allows the efficient use of a resource when no single user can utilize the entire resource. - -Virtualization affords each user the illusion that they own the resource. In the case of virtual networks, each user is under the illusion that there are no other users of the network. To preserve the illusion, virtual networks are isolated from one another. Packets cannot accidentally leak from one virtual network to another. - -## Links: -- [Network Virtualization](https://docs.nvidia.com/networking-ethernet-software/cumulus-linux-44/Network-Virtualization/) \ No newline at end of file diff --git a/Networking/cisco/ios/acl.md b/Networking/cisco/ios/acl.md deleted file mode 100644 index 7e2cc35ab..000000000 --- a/Networking/cisco/ios/acl.md +++ /dev/null @@ -1,25 +0,0 @@ -# Cisco IOS ACL - -## Resequence Entries - -### Before - -```bash -Extended IP access list TEST - 2 permit ip host 10.10.10.1 host 10.10.10.2 - 3 permit ip host 10.10.10.3 host 10.10.10.4 -``` - -### Command - -```bash -ip access-list resequence TEST 10 10 -``` - -### After - -```bash -Extended IP access list TEST - 10 permit ip host 10.10.10.1 host 10.10.10.2 - 20 permit ip host 10.10.10.3 host 10.10.10.4 -``` diff --git a/Networking/vyos/install.md b/Networking/vyos/install.md deleted file mode 100644 index 55b0e0b2a..000000000 --- a/Networking/vyos/install.md +++ /dev/null @@ -1,11 +0,0 @@ -# Install vyos - -## Download live image - -[Nightly builds](https://vyos.net/get/nightly-builds/) - -## Install permanent on disk - -```bash -vyos@vyos:~$ install image -``` diff --git a/Operating-Systems/Linux/CLI/iotop.md b/Operating-Systems/Linux/CLI/iotop.md index 02aee6f46..be765db46 100644 --- a/Operating-Systems/Linux/CLI/iotop.md +++ b/Operating-Systems/Linux/CLI/iotop.md @@ -3,5 +3,5 @@ ## Watch processes accumulated ```bash -iotop -aoP +iotop -oPa ``` diff --git a/Operating-Systems/Linux/CLI/nmap.md b/Operating-Systems/Linux/CLI/nmap.md deleted file mode 100644 index 7ca2f34e6..000000000 --- a/Operating-Systems/Linux/CLI/nmap.md +++ /dev/null @@ -1,7 +0,0 @@ -# NMAP - -## Scan network for host with open ssh port - -```bash - -``` diff --git a/Operating-Systems/Linux/CLI/ssh.md b/Operating-Systems/Linux/CLI/ssh.md index 81b4449f4..3d7e0c13a 100644 --- a/Operating-Systems/Linux/CLI/ssh.md +++ b/Operating-Systems/Linux/CLI/ssh.md @@ -1,5 +1,12 @@ # SSH +## Jump host + +Use another system to tunnel the traffic trough: +```bash +ssh -J other.host original.host +``` + ## SOCKS Proxy ```bash diff --git a/Operating-Systems/Linux/nix/nix.md b/Operating-Systems/Linux/nix/nix.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/Other/20 rules of formulating knowledge.md b/Other/20 rules of formulating knowledge.md deleted file mode 100644 index be992009b..000000000 --- a/Other/20 rules of formulating knowledge.md +++ /dev/null @@ -1,75 +0,0 @@ -# 20 rules of formulating knowledge - -[Effective learning: Twenty rules of formulating knowledge](https://www.supermemo.com/en/archives1990-2015/articles/20rules) - -## 1. Do not learn if you don't understand - -## 2. Learn before you memorize - -You need to build an overall picture of the learned knowledge in order to memorize it. -Do not start from memorizing loosely related facts! - -## 3. Build upon the basics - -## 4. Stick to the minimum information principle - -The material you learn must be formulated in as simple way at is is. - -## 5. Cloze deletion is easy and effective - -Cloze deletion is a sentence with its parts missing and replaced by three dots. - -## 6. Use Imagery - -## 7. Use mnemonic techniques - -## 8. Graphic deletions is as good as cloze deletion - -## 9. Avoid sets - -## 10. Avoid enumeration - -## 11. Combat interference -When you learn about similar things you often confuse them. -You need to make items as unambiguous as possible. - -## 12. Optimized wording - -## 13. Refer to other memories - -## 14. Personalize and provide examples - -## 15. Rely on emotional states - -## 16. Context cues simplify wording - -## 17. Redundancy does not contradict minimum information principle - -## 18. Provide sources - -## 19. Provide data stamping - -## 20 Prioritize - - -## Summary -1. [**Do not learn if you do not understand**](https://www.supermemo.com/#Do%20not%20learn%20if%20you%20do%20not%20understand) -2. **[Learn before you memorize](https://www.supermemo.com/#Learn%20before%20you%20memorize)** - build the picture of the whole before you dismember it into simple items in SuperMemo. If the whole shows holes, review it again! -3. **[Build upon the basics](https://www.supermemo.com/#Build%20upon%20the%20basics)** - never jump both feet into a complex manual because you may never see the end. Well remembered basics will help the remaining knowledge easily fit in -4. [**Stick to the minimum information principle**](https://www.supermemo.com/#minimum%20information%20principle) - if you continue forgetting an item, try to make it as simple as possible. If it does not help, see the remaining rules (cloze deletion, graphics, mnemonic techniques, converting sets into enumerations, etc.) -5. **[Cloze deletion is easy and effective](https://www.supermemo.com/#Cloze%20deletion)** - completing a deleted word or phrase is not only an effective way of learning. Most of all, it greatly speeds up formulating knowledge and is highly recommended for beginners -6. **[Use imagery](https://www.supermemo.com/#Use%20imagery)** - a picture is worth a thousand words -7. **[Use mnemonic techniques](https://www.supermemo.com/#mnemonic%20techniques)** - read about peg lists and mind maps. Study the books by Tony Buzan. Learn how to convert memories into funny pictures. You won't have problems with phone numbers and complex figures -8. **[Graphic deletion is as good as cloze deletion](https://www.supermemo.com/#Graphic%20deletion)** - obstructing parts of a picture is great for learning anatomy, geography and more -9. **[Avoid sets](https://www.supermemo.com/#Avoid%20sets)** - larger sets are virtually un-memorizable unless you convert them into enumerations! -10. **[Avoid enumerations](https://www.supermemo.com/#Enumerations)** - enumerations are also hard to remember but can be dealt with using cloze deletion -11. **[Combat interference](https://www.supermemo.com/#Interference)** - even the simplest items can be completely intractable if they are similar to other items. Use examples, context cues, vivid illustrations, refer to emotions, and to your personal life -12. **[Optimize wording](https://www.supermemo.com/#Optimize%20wording)** - like you reduce mathematical equations, you can reduce complex sentences into smart, compact and enjoyable maxims -13. **[Refer to other memories](https://www.supermemo.com/#Refer%20to%20other%20memories)** - building memories on other memories generates a coherent and hermetic structure that forgetting is less likely to affect. Build upon the basics and use planned redundancy to fill in the gaps -14. **[Personalize and provide examples](https://www.supermemo.com/#Personalize%20and%20provide%20examples)** - personalization might be the most effective way of building upon other memories. Your personal life is a gold mine of facts and events to refer to. As long as you build a collection for yourself, use personalization richly to build upon well established memories -15. **[Rely on emotional states](https://www.supermemo.com/#Rely%20on%20emotional%20states)** - emotions are related to memories. If you learn a fact in the sate of sadness, you are more likely to recall it if when you are sad. Some memories can induce emotions and help you employ this property of the brain in remembering -16. **[Context cues simplify wording](https://www.supermemo.com/#Context%20cues)** - providing context is a way of simplifying memories, building upon earlier knowledge and avoiding interference -17. **[Redundancy does not contradict minimum information principle](https://www.supermemo.com/#Redundancy)** - some forms of redundancy are welcome. There is little harm in memorizing the same fact as viewed from different angles. Passive and active approach is particularly practicable in learning word-pairs. Memorizing derivation steps in problem solving is a way towards boosting your intellectual powers! -18. **[Provide sources](https://www.supermemo.com/#sources)** - sources help you manage the learning process, updating your knowledge, judging its reliability, or importance -19. **[Provide date stamping](https://www.supermemo.com/#date%20stamping)** - time stamping is useful for volatile knowledge that changes in time -20. [**Prioritize**](https://www.supermemo.com/#Prioritize) - effective learning is all about prioritizing. In _incremental_ _reading_ you can start from badly formulated knowledge and improve its shape as you proceed with learning (in proportion to the cost of inappropriate formulation). If need be, you can review pieces of knowledge again, split it into parts, reformulate, reprioritize, or delete. See also: [Incremental reading](https://www.supermemo.com/archives1990-2015/help/read), [Devouring knowledge](https://www.supermemo.com/), [Flow of knowledge](https://www.supermemo.com/), [Using tasklists](https://www.supermemo.com/) \ No newline at end of file diff --git a/Programming-Languages/Bash.md b/Programming/Bash.md similarity index 100% rename from Programming-Languages/Bash.md rename to Programming/Bash.md diff --git a/Programming-Languages/Go/Build.md b/Programming/Go/Build.md similarity index 100% rename from Programming-Languages/Go/Build.md rename to Programming/Go/Build.md diff --git a/Programming-Languages/Go/Concurrency.md b/Programming/Go/Concurrency.md similarity index 100% rename from Programming-Languages/Go/Concurrency.md rename to Programming/Go/Concurrency.md diff --git a/Programming-Languages/Go/Formatting.md b/Programming/Go/Formatting.md similarity index 100% rename from Programming-Languages/Go/Formatting.md rename to Programming/Go/Formatting.md diff --git a/Programming-Languages/Go/profiling.md b/Programming/Go/profiling.md similarity index 100% rename from Programming-Languages/Go/profiling.md rename to Programming/Go/profiling.md diff --git a/Programming-Languages/JSON.md b/Programming/JSON.md similarity index 100% rename from Programming-Languages/JSON.md rename to Programming/JSON.md diff --git a/Programming-Languages/Python/Performance Analysis.md b/Programming/Python/Performance Analysis.md similarity index 100% rename from Programming-Languages/Python/Performance Analysis.md rename to Programming/Python/Performance Analysis.md diff --git a/Programming-Languages/Python/Python-Libraries/FastAPI.md b/Programming/Python/Python-Libraries/FastAPI.md similarity index 100% rename from Programming-Languages/Python/Python-Libraries/FastAPI.md rename to Programming/Python/Python-Libraries/FastAPI.md diff --git a/Programming-Languages/Python/Python-Libraries/Pathlib.md b/Programming/Python/Python-Libraries/Pathlib.md similarity index 100% rename from Programming-Languages/Python/Python-Libraries/Pathlib.md rename to Programming/Python/Python-Libraries/Pathlib.md diff --git a/Programming-Languages/Python/Python-Libraries/PyTest.md b/Programming/Python/Python-Libraries/PyTest.md similarity index 100% rename from Programming-Languages/Python/Python-Libraries/PyTest.md rename to Programming/Python/Python-Libraries/PyTest.md diff --git a/Programming-Languages/Python/profiling.md b/Programming/Python/profiling.md similarity index 100% rename from Programming-Languages/Python/profiling.md rename to Programming/Python/profiling.md diff --git a/Programming-Languages/Python/typing-in-python.md b/Programming/Python/typing-in-python.md similarity index 100% rename from Programming-Languages/Python/typing-in-python.md rename to Programming/Python/typing-in-python.md diff --git a/Programming-Languages/Python/venvs.md b/Programming/Python/venvs.md similarity index 100% rename from Programming-Languages/Python/venvs.md rename to Programming/Python/venvs.md diff --git a/Programming-Languages/Rust/Memory Management.md b/Programming/Rust/Memory Management.md similarity index 100% rename from Programming-Languages/Rust/Memory Management.md rename to Programming/Rust/Memory Management.md diff --git a/Programming-Languages/YAML.md b/Programming/YAML.md similarity index 100% rename from Programming-Languages/YAML.md rename to Programming/YAML.md diff --git a/Programming/general/stack.md b/Programming/general/stack.md deleted file mode 100644 index 7ac5688f2..000000000 --- a/Programming/general/stack.md +++ /dev/null @@ -1,8 +0,0 @@ -# What is a stack? - -A stack is a data structure used to store a collection of objects. -Individual items can be added and stored in a stack using a push operation. Objects can be retrieved using a pop operation, which removes an item from the stack. - -When an object is added to a stack, it is placed on the top of all previously entered items. - -A stack in which items are removed from the top is considered a "LIFO" - Last in, First Out. In a "FIFO" - First In, First Out items are removed from the bottom.