diff --git a/404.html b/404.html index ff5c765546b..d2f563cacd6 100644 --- a/404.html +++ b/404.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/achievements-activities-awards/index.html b/about-me/achievements-activities-awards/index.html index 348fda2fa2e..4af96896613 100644 --- a/about-me/achievements-activities-awards/index.html +++ b/about-me/achievements-activities-awards/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/experience/index.html b/about-me/experience/index.html index d6d7dafd0f5..a340083ca75 100644 --- a/about-me/experience/index.html +++ b/about-me/experience/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/faqs/index.html b/about-me/faqs/index.html index e3edbef7ff4..911baf00beb 100644 --- a/about-me/faqs/index.html +++ b/about-me/faqs/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/ideas/creating-a-business-startup/index.html b/about-me/ideas/creating-a-business-startup/index.html index 7f4c7d28816..b9d2e442987 100644 --- a/about-me/ideas/creating-a-business-startup/index.html +++ b/about-me/ideas/creating-a-business-startup/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/ideas/donations/index.html b/about-me/ideas/donations/index.html index 0069621cbac..17437b95e3f 100644 --- a/about-me/ideas/donations/index.html +++ b/about-me/ideas/donations/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/ideas/education/index.html b/about-me/ideas/education/index.html index bc9858bfff4..1f1753a13a5 100644 --- a/about-me/ideas/education/index.html +++ b/about-me/ideas/education/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/ideas/improvements-feedbacks/index.html b/about-me/ideas/improvements-feedbacks/index.html index c50a3c57aae..f3ec0f8681a 100644 --- a/about-me/ideas/improvements-feedbacks/index.html +++ b/about-me/ideas/improvements-feedbacks/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/ideas/index.html b/about-me/ideas/index.html index f1fe4eb2403..0bdd393a002 100644 --- a/about-me/ideas/index.html +++ b/about-me/ideas/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/ideas/intro/index.html b/about-me/ideas/intro/index.html index ee8ab169cf0..f30768f4953 100644 --- a/about-me/ideas/intro/index.html +++ b/about-me/ideas/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/ideas/non-profit/index.html b/about-me/ideas/non-profit/index.html index 499e5798a55..74cbc5e4239 100644 --- a/about-me/ideas/non-profit/index.html +++ b/about-me/ideas/non-profit/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/ideas/others/index.html b/about-me/ideas/others/index.html index 619cba087f9..98f895ae2dc 100644 --- a/about-me/ideas/others/index.html +++ b/about-me/ideas/others/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/ideas/society/index.html b/about-me/ideas/society/index.html index 1a061d7f6bc..56a516c62d8 100644 --- a/about-me/ideas/society/index.html +++ b/about-me/ideas/society/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/ideas/startup-ideas-physical/index.html b/about-me/ideas/startup-ideas-physical/index.html index f77e6d0f997..a31ba299e66 100644 --- a/about-me/ideas/startup-ideas-physical/index.html +++ b/about-me/ideas/startup-ideas-physical/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/ideas/startup-quotes/index.html b/about-me/ideas/startup-quotes/index.html index cf549121171..2bd1a3738c4 100644 --- a/about-me/ideas/startup-quotes/index.html +++ b/about-me/ideas/startup-quotes/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/ideas/startups-ideas-saas/index.html b/about-me/ideas/startups-ideas-saas/index.html index 09b496f3ad3..4910b910542 100644 --- a/about-me/ideas/startups-ideas-saas/index.html +++ b/about-me/ideas/startups-ideas-saas/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/ideas/thoughts-future-ideas-vision-prediction/index.html b/about-me/ideas/thoughts-future-ideas-vision-prediction/index.html index 59284897874..5dd91d8e710 100644 --- a/about-me/ideas/thoughts-future-ideas-vision-prediction/index.html +++ b/about-me/ideas/thoughts-future-ideas-vision-prediction/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/index.html b/about-me/index.html index 7d5d948e475..eb98f72785d 100644 --- a/about-me/index.html +++ b/about-me/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/paper-publications-references/index.html b/about-me/paper-publications-references/index.html index deef9a72bb3..49680d20bd2 100644 --- a/about-me/paper-publications-references/index.html +++ b/about-me/paper-publications-references/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/personality/index.html b/about-me/personality/index.html index 2b4dfcda80a..3dc338fbbee 100644 --- a/about-me/personality/index.html +++ b/about-me/personality/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/44-agri-tech-digital-transformation-case-study/index.html b/about-me/projects/44-agri-tech-digital-transformation-case-study/index.html index 844f0a6ef4a..3df68795d19 100644 --- a/about-me/projects/44-agri-tech-digital-transformation-case-study/index.html +++ b/about-me/projects/44-agri-tech-digital-transformation-case-study/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/45-traditional-ai-case-studies/index.html b/about-me/projects/45-traditional-ai-case-studies/index.html index 92b6f06ddc8..b02ee5beb80 100644 --- a/about-me/projects/45-traditional-ai-case-studies/index.html +++ b/about-me/projects/45-traditional-ai-case-studies/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering/index.html b/about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering/index.html index e09be130013..0b651522dfd 100644 --- a/about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering/index.html +++ b/about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/47-genai-case-study-careers360/index.html b/about-me/projects/47-genai-case-study-careers360/index.html index 185422774b1..50d2c1a2f7b 100644 --- a/about-me/projects/47-genai-case-study-careers360/index.html +++ b/about-me/projects/47-genai-case-study-careers360/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/48-rag-genai-presentation/index.html b/about-me/projects/48-rag-genai-presentation/index.html index 80a9e986aca..74b7750cc04 100644 --- a/about-me/projects/48-rag-genai-presentation/index.html +++ b/about-me/projects/48-rag-genai-presentation/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/49-data-practical-use-cases/index.html b/about-me/projects/49-data-practical-use-cases/index.html index 64b300bcae7..736c8059991 100644 --- a/about-me/projects/49-data-practical-use-cases/index.html +++ b/about-me/projects/49-data-practical-use-cases/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/50-use-cases-aiml-logistics-warehousing/index.html b/about-me/projects/50-use-cases-aiml-logistics-warehousing/index.html index 4f05acd0b7c..0b1767611c3 100644 --- a/about-me/projects/50-use-cases-aiml-logistics-warehousing/index.html +++ b/about-me/projects/50-use-cases-aiml-logistics-warehousing/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/51-case-study-anomaly-detection/index.html b/about-me/projects/51-case-study-anomaly-detection/index.html index 8f81da6997d..ccf6020c3bc 100644 --- a/about-me/projects/51-case-study-anomaly-detection/index.html +++ b/about-me/projects/51-case-study-anomaly-detection/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/52-pull-request-risk-tagging-heuristics/index.html b/about-me/projects/52-pull-request-risk-tagging-heuristics/index.html index a5a70c45ea6..18bab464578 100644 --- a/about-me/projects/52-pull-request-risk-tagging-heuristics/index.html +++ b/about-me/projects/52-pull-request-risk-tagging-heuristics/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/53-mozark-cloud-cost-optimization/index.html b/about-me/projects/53-mozark-cloud-cost-optimization/index.html index ee34fc8d35c..fde7aab9e8f 100644 --- a/about-me/projects/53-mozark-cloud-cost-optimization/index.html +++ b/about-me/projects/53-mozark-cloud-cost-optimization/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/54-airflow-kafka-migration/index.html b/about-me/projects/54-airflow-kafka-migration/index.html index 790284e7a43..d06805c5d88 100644 --- a/about-me/projects/54-airflow-kafka-migration/index.html +++ b/about-me/projects/54-airflow-kafka-migration/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/55-azure-social-media-analytics/index.html b/about-me/projects/55-azure-social-media-analytics/index.html index 7798a57089b..e06abdfd1ee 100644 --- a/about-me/projects/55-azure-social-media-analytics/index.html +++ b/about-me/projects/55-azure-social-media-analytics/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/56-freecharge-cost-optimization-dba/index.html b/about-me/projects/56-freecharge-cost-optimization-dba/index.html index aad3c085396..5f472d60a6b 100644 --- a/about-me/projects/56-freecharge-cost-optimization-dba/index.html +++ b/about-me/projects/56-freecharge-cost-optimization-dba/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/57-careers360-cost-optimization/index.html b/about-me/projects/57-careers360-cost-optimization/index.html index 00bc58cb287..78c7001aa98 100644 --- a/about-me/projects/57-careers360-cost-optimization/index.html +++ b/about-me/projects/57-careers360-cost-optimization/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/58-aws-gen-ai-hackathon-rag/index.html b/about-me/projects/58-aws-gen-ai-hackathon-rag/index.html index f57c05c0536..131a950d7c2 100644 --- a/about-me/projects/58-aws-gen-ai-hackathon-rag/index.html +++ b/about-me/projects/58-aws-gen-ai-hackathon-rag/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/59-data-engineering-product-pitch-iot-industry/index.html b/about-me/projects/59-data-engineering-product-pitch-iot-industry/index.html index 34ebb397c28..db76bdbe542 100644 --- a/about-me/projects/59-data-engineering-product-pitch-iot-industry/index.html +++ b/about-me/projects/59-data-engineering-product-pitch-iot-industry/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/60-data-engineering-case-studies/index.html b/about-me/projects/60-data-engineering-case-studies/index.html index d1fcbabf6c0..892b32e0bf9 100644 --- a/about-me/projects/60-data-engineering-case-studies/index.html +++ b/about-me/projects/60-data-engineering-case-studies/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/61-general-application-management-case-study/index.html b/about-me/projects/61-general-application-management-case-study/index.html index 0693e6824dc..1de7d9cb84b 100644 --- a/about-me/projects/61-general-application-management-case-study/index.html +++ b/about-me/projects/61-general-application-management-case-study/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/62-application-management-case-study-telecom/index.html b/about-me/projects/62-application-management-case-study-telecom/index.html index e3391f65f67..513a4339a46 100644 --- a/about-me/projects/62-application-management-case-study-telecom/index.html +++ b/about-me/projects/62-application-management-case-study-telecom/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/63-mlops-master-document/index.html b/about-me/projects/63-mlops-master-document/index.html index b5deb3897ca..0187a1df306 100644 --- a/about-me/projects/63-mlops-master-document/index.html +++ b/about-me/projects/63-mlops-master-document/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/64-mlops-case-studies/index.html b/about-me/projects/64-mlops-case-studies/index.html index f509c409d06..aa5dfc37695 100644 --- a/about-me/projects/64-mlops-case-studies/index.html +++ b/about-me/projects/64-mlops-case-studies/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/65-problems-in-iot-industry/index.html b/about-me/projects/65-problems-in-iot-industry/index.html index 89530d38bf2..beb89846614 100644 --- a/about-me/projects/65-problems-in-iot-industry/index.html +++ b/about-me/projects/65-problems-in-iot-industry/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/66-iot-case-studies/index.html b/about-me/projects/66-iot-case-studies/index.html index aaf50d07b04..931a9c9e3be 100644 --- a/about-me/projects/66-iot-case-studies/index.html +++ b/about-me/projects/66-iot-case-studies/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/67-data-engineering-battle-cards/index.html b/about-me/projects/67-data-engineering-battle-cards/index.html index 09f7af4e133..dff28f5cb89 100644 --- a/about-me/projects/67-data-engineering-battle-cards/index.html +++ b/about-me/projects/67-data-engineering-battle-cards/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/70-interview-datainsight-alerting-engine/index.html b/about-me/projects/70-interview-datainsight-alerting-engine/index.html index 2a027c9f4f0..700065061a5 100644 --- a/about-me/projects/70-interview-datainsight-alerting-engine/index.html +++ b/about-me/projects/70-interview-datainsight-alerting-engine/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/71-opstree-standard-proposal-format/index.html b/about-me/projects/71-opstree-standard-proposal-format/index.html index acf0e9e42ef..7094dc15c24 100644 --- a/about-me/projects/71-opstree-standard-proposal-format/index.html +++ b/about-me/projects/71-opstree-standard-proposal-format/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/75-bake-io-data-engineering/index.html b/about-me/projects/75-bake-io-data-engineering/index.html index 8ea2a8c68aa..9f1a27dd96e 100644 --- a/about-me/projects/75-bake-io-data-engineering/index.html +++ b/about-me/projects/75-bake-io-data-engineering/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/80-stashfin/index.html b/about-me/projects/80-stashfin/index.html index 353169fcc31..c82a7bf1e5c 100644 --- a/about-me/projects/80-stashfin/index.html +++ b/about-me/projects/80-stashfin/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/81-stashfin-terms/index.html b/about-me/projects/81-stashfin-terms/index.html index b904cd3444a..e11a8eef298 100644 --- a/about-me/projects/81-stashfin-terms/index.html +++ b/about-me/projects/81-stashfin-terms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/82-stashfin-metrics/index.html b/about-me/projects/82-stashfin-metrics/index.html index 82ed3482611..02b3df9e2d3 100644 --- a/about-me/projects/82-stashfin-metrics/index.html +++ b/about-me/projects/82-stashfin-metrics/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/85-stashfin-twitter-bot/index.html b/about-me/projects/85-stashfin-twitter-bot/index.html index 1c700b98430..ca07d06c058 100644 --- a/about-me/projects/85-stashfin-twitter-bot/index.html +++ b/about-me/projects/85-stashfin-twitter-bot/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/86-stashfin-customer-support/index.html b/about-me/projects/86-stashfin-customer-support/index.html index d25a2d60356..33b700e3f0d 100644 --- a/about-me/projects/86-stashfin-customer-support/index.html +++ b/about-me/projects/86-stashfin-customer-support/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/87-stashfin-team-management-culture/index.html b/about-me/projects/87-stashfin-team-management-culture/index.html index a25c2b51a8d..c3840ca24b5 100644 --- a/about-me/projects/87-stashfin-team-management-culture/index.html +++ b/about-me/projects/87-stashfin-team-management-culture/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/88-stashfin-security-iam-apis/index.html b/about-me/projects/88-stashfin-security-iam-apis/index.html index 4a64253c8a9..b9270d6fdd8 100644 --- a/about-me/projects/88-stashfin-security-iam-apis/index.html +++ b/about-me/projects/88-stashfin-security-iam-apis/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/89-stashfin-devops-overhaul/index.html b/about-me/projects/89-stashfin-devops-overhaul/index.html index 0b4dfe11ab3..ca77be5c2c6 100644 --- a/about-me/projects/89-stashfin-devops-overhaul/index.html +++ b/about-me/projects/89-stashfin-devops-overhaul/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/90-stashfin-tech-stack-infra/index.html b/about-me/projects/90-stashfin-tech-stack-infra/index.html index c4565f31885..e5c671b3189 100644 --- a/about-me/projects/90-stashfin-tech-stack-infra/index.html +++ b/about-me/projects/90-stashfin-tech-stack-infra/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/91-stashfin-aiml-use-cases/index.html b/about-me/projects/91-stashfin-aiml-use-cases/index.html index 2d9c39bfb1e..2791981cdb4 100644 --- a/about-me/projects/91-stashfin-aiml-use-cases/index.html +++ b/about-me/projects/91-stashfin-aiml-use-cases/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/98-others/index.html b/about-me/projects/98-others/index.html index e477cb19f2e..cb36a1c0ba5 100644 --- a/about-me/projects/98-others/index.html +++ b/about-me/projects/98-others/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/99-ciso-cybersecurity/index.html b/about-me/projects/99-ciso-cybersecurity/index.html index 0c395305bf9..a1eee8b73b7 100644 --- a/about-me/projects/99-ciso-cybersecurity/index.html +++ b/about-me/projects/99-ciso-cybersecurity/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/projects/index.html b/about-me/projects/index.html index c692fc3d534..0552ed5fbe3 100644 --- a/about-me/projects/index.html +++ b/about-me/projects/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/about-me/social-links/index.html b/about-me/social-links/index.html index ae72bd489d3..a96fd40e2bc 100644 --- a/about-me/social-links/index.html +++ b/about-me/social-links/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/big-data/characteristics/index.html b/ai/big-data/characteristics/index.html index 121512007bc..b7997927335 100644 --- a/ai/big-data/characteristics/index.html +++ b/ai/big-data/characteristics/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/big-data/data-masking/index.html b/ai/big-data/data-masking/index.html index 96ceaf3330a..77e4384a43f 100644 --- a/ai/big-data/data-masking/index.html +++ b/ai/big-data/data-masking/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/big-data/data-preprocessing/index.html b/ai/big-data/data-preprocessing/index.html index ae32389b98a..4c2fafd35c6 100644 --- a/ai/big-data/data-preprocessing/index.html +++ b/ai/big-data/data-preprocessing/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/big-data/data-quality/index.html b/ai/big-data/data-quality/index.html index f1212f0b28a..ffbd3245afb 100644 --- a/ai/big-data/data-quality/index.html +++ b/ai/big-data/data-quality/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/big-data/data/index.html b/ai/big-data/data/index.html index 2a9219051be..f1f2ef7f43f 100644 --- a/ai/big-data/data/index.html +++ b/ai/big-data/data/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/big-data/design-of-hbase/index.html b/ai/big-data/design-of-hbase/index.html index f1628f92208..289d9d65fc1 100644 --- a/ai/big-data/design-of-hbase/index.html +++ b/ai/big-data/design-of-hbase/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/big-data/design-of-key-value-stores/index.html b/ai/big-data/design-of-key-value-stores/index.html index df9b94b877a..bb99e8e547c 100644 --- a/ai/big-data/design-of-key-value-stores/index.html +++ b/ai/big-data/design-of-key-value-stores/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/big-data/design-of-zookeeper/index.html b/ai/big-data/design-of-zookeeper/index.html index bfa91f5d9df..2d633cb2bc7 100644 --- a/ai/big-data/design-of-zookeeper/index.html +++ b/ai/big-data/design-of-zookeeper/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/big-data/index.html b/ai/big-data/index.html index fb14b3c0f8e..35acba36838 100644 --- a/ai/big-data/index.html +++ b/ai/big-data/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/big-data/intro/index.html b/ai/big-data/intro/index.html index da4600f3646..b40d052673d 100644 --- a/ai/big-data/intro/index.html +++ b/ai/big-data/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/big-data/page-rank/index.html b/ai/big-data/page-rank/index.html index eece7a3a52c..bd8f2378920 100644 --- a/ai/big-data/page-rank/index.html +++ b/ai/big-data/page-rank/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/big-data/parameter-servers/index.html b/ai/big-data/parameter-servers/index.html index b488fc86576..18d00042e1c 100644 --- a/ai/big-data/parameter-servers/index.html +++ b/ai/big-data/parameter-servers/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/big-data/processing-engine/index.html b/ai/big-data/processing-engine/index.html index 9399ab3a805..b16a5ca1daf 100644 --- a/ai/big-data/processing-engine/index.html +++ b/ai/big-data/processing-engine/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/big-data/tools/index.html b/ai/big-data/tools/index.html index d72eb920ec8..e71a2ca0d0e 100644 --- a/ai/big-data/tools/index.html +++ b/ai/big-data/tools/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/big-data/types-of-data/index.html b/ai/big-data/types-of-data/index.html index b4d0d6cab21..63df68514f9 100644 --- a/ai/big-data/types-of-data/index.html +++ b/ai/big-data/types-of-data/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/computer-vision-cv/convolutional-neural-network-cnn/index.html b/ai/computer-vision-cv/convolutional-neural-network-cnn/index.html index 1de1605ae3f..c5c19953802 100644 --- a/ai/computer-vision-cv/convolutional-neural-network-cnn/index.html +++ b/ai/computer-vision-cv/convolutional-neural-network-cnn/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/computer-vision-cv/cv-libraries-tools/index.html b/ai/computer-vision-cv/cv-libraries-tools/index.html index 84b21d190a8..16a01a3eef5 100644 --- a/ai/computer-vision-cv/cv-libraries-tools/index.html +++ b/ai/computer-vision-cv/cv-libraries-tools/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/computer-vision-cv/examples/index.html b/ai/computer-vision-cv/examples/index.html index 9f098369b67..936280516fd 100644 --- a/ai/computer-vision-cv/examples/index.html +++ b/ai/computer-vision-cv/examples/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/computer-vision-cv/image-data-labeling-tools/index.html b/ai/computer-vision-cv/image-data-labeling-tools/index.html index 58f6ea4a5bf..98021877ba1 100644 --- a/ai/computer-vision-cv/image-data-labeling-tools/index.html +++ b/ai/computer-vision-cv/image-data-labeling-tools/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/computer-vision-cv/image-formats/index.html b/ai/computer-vision-cv/image-formats/index.html index d8eec563260..727a45eedf8 100644 --- a/ai/computer-vision-cv/image-formats/index.html +++ b/ai/computer-vision-cv/image-formats/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/computer-vision-cv/imagemagick/index.html b/ai/computer-vision-cv/imagemagick/index.html index cbcb16f40da..48f45ad2dea 100644 --- a/ai/computer-vision-cv/imagemagick/index.html +++ b/ai/computer-vision-cv/imagemagick/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/computer-vision-cv/index.html b/ai/computer-vision-cv/index.html index 9e17b38b9da..e3236490b06 100644 --- a/ai/computer-vision-cv/index.html +++ b/ai/computer-vision-cv/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/computer-vision-cv/intro/index.html b/ai/computer-vision-cv/intro/index.html index de875fd4a03..4ca9fe0cd3c 100644 --- a/ai/computer-vision-cv/intro/index.html +++ b/ai/computer-vision-cv/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow/index.html b/ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow/index.html index ed86a22655b..fb05df4355f 100644 --- a/ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow/index.html +++ b/ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/computer-vision-cv/model-building-stages/index.html b/ai/computer-vision-cv/model-building-stages/index.html index 3608c4bac05..7eb991bb240 100644 --- a/ai/computer-vision-cv/model-building-stages/index.html +++ b/ai/computer-vision-cv/model-building-stages/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/computer-vision-cv/others/index.html b/ai/computer-vision-cv/others/index.html index eeadf64b512..1e0779d3651 100644 --- a/ai/computer-vision-cv/others/index.html +++ b/ai/computer-vision-cv/others/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/computer-vision-cv/pre-trained-models/index.html b/ai/computer-vision-cv/pre-trained-models/index.html index 821b7aae843..a14632ebcc0 100644 --- a/ai/computer-vision-cv/pre-trained-models/index.html +++ b/ai/computer-vision-cv/pre-trained-models/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-science/data-analysis/index.html b/ai/data-science/data-analysis/index.html index f534d55fd1e..1934edfc76e 100644 --- a/ai/data-science/data-analysis/index.html +++ b/ai/data-science/data-analysis/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-science/data-governance/index.html b/ai/data-science/data-governance/index.html index d1170f3ed3e..f409ff5e843 100644 --- a/ai/data-science/data-governance/index.html +++ b/ai/data-science/data-governance/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-science/data-mining/index.html b/ai/data-science/data-mining/index.html index e88abfd6667..7f33fae8025 100644 --- a/ai/data-science/data-mining/index.html +++ b/ai/data-science/data-mining/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-science/datasets/index.html b/ai/data-science/datasets/index.html index 3fb9e58838a..8529c5ba35e 100644 --- a/ai/data-science/datasets/index.html +++ b/ai/data-science/datasets/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-science/index.html b/ai/data-science/index.html index d00a804635a..0b7ce729f39 100644 --- a/ai/data-science/index.html +++ b/ai/data-science/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-science/intro/index.html b/ai/data-science/intro/index.html index c515d64fb0f..60d45ad1aa6 100644 --- a/ai/data-science/intro/index.html +++ b/ai/data-science/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-science/questions/index.html b/ai/data-science/questions/index.html index ad808081b4b..589cd82a259 100644 --- a/ai/data-science/questions/index.html +++ b/ai/data-science/questions/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-science/recommender-system/index.html b/ai/data-science/recommender-system/index.html index 286c2483e74..14c080c2237 100644 --- a/ai/data-science/recommender-system/index.html +++ b/ai/data-science/recommender-system/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-science/statistics/index.html b/ai/data-science/statistics/index.html index df588263f6d..20e19b0fc6d 100644 --- a/ai/data-science/statistics/index.html +++ b/ai/data-science/statistics/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-science/topics/index.html b/ai/data-science/topics/index.html index e47d07a4427..df69e1e0215 100644 --- a/ai/data-science/topics/index.html +++ b/ai/data-science/topics/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/bi-tools/index.html b/ai/data-visualization/bi-tools/index.html index 99d3841e19b..ca0a105a1ff 100644 --- a/ai/data-visualization/bi-tools/index.html +++ b/ai/data-visualization/bi-tools/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/charts/index.html b/ai/data-visualization/charts/index.html index 258b3f692e6..58c17d7f7f7 100644 --- a/ai/data-visualization/charts/index.html +++ b/ai/data-visualization/charts/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/d3-data-driven-documents/index.html b/ai/data-visualization/d3-data-driven-documents/index.html index c9be3e61f05..dc7b7a7a713 100644 --- a/ai/data-visualization/d3-data-driven-documents/index.html +++ b/ai/data-visualization/d3-data-driven-documents/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/index.html b/ai/data-visualization/index.html index 69d7b955290..e3a3f1af4ce 100644 --- a/ai/data-visualization/index.html +++ b/ai/data-visualization/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/intro/index.html b/ai/data-visualization/intro/index.html index ee970c8f0ad..f3acfe20bfd 100644 --- a/ai/data-visualization/intro/index.html +++ b/ai/data-visualization/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/matplotlib/index.html b/ai/data-visualization/matplotlib/index.html index 3aa2eef3426..004b04dc9cd 100644 --- a/ai/data-visualization/matplotlib/index.html +++ b/ai/data-visualization/matplotlib/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/metabase/index.html b/ai/data-visualization/metabase/index.html index 85432a8fbb3..7bc5fe1e29c 100644 --- a/ai/data-visualization/metabase/index.html +++ b/ai/data-visualization/metabase/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/plotly/index.html b/ai/data-visualization/plotly/index.html index 916907d15d7..cf1a3b1f8b3 100644 --- a/ai/data-visualization/plotly/index.html +++ b/ai/data-visualization/plotly/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/powerbi/index.html b/ai/data-visualization/powerbi/index.html index 2288690ce8a..9156bec38cc 100644 --- a/ai/data-visualization/powerbi/index.html +++ b/ai/data-visualization/powerbi/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/tableau/architecture-components/index.html b/ai/data-visualization/tableau/architecture-components/index.html index df03a02518f..075f04b7a8d 100644 --- a/ai/data-visualization/tableau/architecture-components/index.html +++ b/ai/data-visualization/tableau/architecture-components/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/tableau/augmented-analytics/index.html b/ai/data-visualization/tableau/augmented-analytics/index.html index d18f0fc9155..8e142e6c055 100644 --- a/ai/data-visualization/tableau/augmented-analytics/index.html +++ b/ai/data-visualization/tableau/augmented-analytics/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/tableau/concepts/index.html b/ai/data-visualization/tableau/concepts/index.html index a32844529d9..3ea97dbf870 100644 --- a/ai/data-visualization/tableau/concepts/index.html +++ b/ai/data-visualization/tableau/concepts/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/tableau/dashboarding/index.html b/ai/data-visualization/tableau/dashboarding/index.html index d02dec2c428..ebfb82458ef 100644 --- a/ai/data-visualization/tableau/dashboarding/index.html +++ b/ai/data-visualization/tableau/dashboarding/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/tableau/data-model/index.html b/ai/data-visualization/tableau/data-model/index.html index 72c5a8b5132..96fcdc031b3 100644 --- a/ai/data-visualization/tableau/data-model/index.html +++ b/ai/data-visualization/tableau/data-model/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/tableau/data-sources/index.html b/ai/data-visualization/tableau/data-sources/index.html index 2c5503fec13..4cba1d64189 100644 --- a/ai/data-visualization/tableau/data-sources/index.html +++ b/ai/data-visualization/tableau/data-sources/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/tableau/index.html b/ai/data-visualization/tableau/index.html index 2152d6b32ae..c85d7252fdd 100644 --- a/ai/data-visualization/tableau/index.html +++ b/ai/data-visualization/tableau/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/data-visualization/tableau/others/index.html b/ai/data-visualization/tableau/others/index.html index e4e5aa511e7..ce0ccb383ea 100644 --- a/ai/data-visualization/tableau/others/index.html +++ b/ai/data-visualization/tableau/others/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/deep-learning/commands/index.html b/ai/deep-learning/commands/index.html index c8c9966f71f..33940374458 100644 --- a/ai/deep-learning/commands/index.html +++ b/ai/deep-learning/commands/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/deep-learning/components/index.html b/ai/deep-learning/components/index.html index 1d1c31ec2ac..6d881be7554 100644 --- a/ai/deep-learning/components/index.html +++ b/ai/deep-learning/components/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/deep-learning/dl-specialization/index.html b/ai/deep-learning/dl-specialization/index.html index a1e9d4bcc4b..91cdbbb07e8 100644 --- a/ai/deep-learning/dl-specialization/index.html +++ b/ai/deep-learning/dl-specialization/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/deep-learning/index.html b/ai/deep-learning/index.html index 0909f0c796c..45c01248656 100644 --- a/ai/deep-learning/index.html +++ b/ai/deep-learning/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/deep-learning/neural-network-and-deep-learning/index.html b/ai/deep-learning/neural-network-and-deep-learning/index.html index 26cb1781106..e9f5c15fb99 100644 --- a/ai/deep-learning/neural-network-and-deep-learning/index.html +++ b/ai/deep-learning/neural-network-and-deep-learning/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/deep-learning/others/index.html b/ai/deep-learning/others/index.html index 4d0b26c9423..e0c2f20126f 100644 --- a/ai/deep-learning/others/index.html +++ b/ai/deep-learning/others/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/deep-learning/resources/index.html b/ai/deep-learning/resources/index.html index 20c949d3a35..9f6bf2e83fb 100644 --- a/ai/deep-learning/resources/index.html +++ b/ai/deep-learning/resources/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/deep-learning/roadmap/index.html b/ai/deep-learning/roadmap/index.html index 7d0dd98331f..08e548a1b90 100644 --- a/ai/deep-learning/roadmap/index.html +++ b/ai/deep-learning/roadmap/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/hackathons/index.html b/ai/hackathons/index.html index 9908ce12a2c..4fac7384bd2 100644 --- a/ai/hackathons/index.html +++ b/ai/hackathons/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/index.html b/ai/index.html index 4017bfcb50a..1869a20a4a2 100644 --- a/ai/index.html +++ b/ai/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/libraries/aws-sagemaker/index.html b/ai/libraries/aws-sagemaker/index.html index d444c8fa288..f9df6bc529a 100644 --- a/ai/libraries/aws-sagemaker/index.html +++ b/ai/libraries/aws-sagemaker/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/libraries/deep-learning-frameworks/index.html b/ai/libraries/deep-learning-frameworks/index.html index 332e1738849..417aa6813a2 100644 --- a/ai/libraries/deep-learning-frameworks/index.html +++ b/ai/libraries/deep-learning-frameworks/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/libraries/distributed-training/index.html b/ai/libraries/distributed-training/index.html index 14c568831b0..826def0f8c4 100644 --- a/ai/libraries/distributed-training/index.html +++ b/ai/libraries/distributed-training/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/libraries/index.html b/ai/libraries/index.html index 6c76cce1684..c91abb46060 100644 --- a/ai/libraries/index.html +++ b/ai/libraries/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/libraries/jax/index.html b/ai/libraries/jax/index.html index 2c490063f4c..de14c2c8b1b 100644 --- a/ai/libraries/jax/index.html +++ b/ai/libraries/jax/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/libraries/keras/index.html b/ai/libraries/keras/index.html index 491b379f85f..712ac34b614 100644 --- a/ai/libraries/keras/index.html +++ b/ai/libraries/keras/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/libraries/ml-libraries/index.html b/ai/libraries/ml-libraries/index.html index e2a63bba1af..c256e026c9f 100644 --- a/ai/libraries/ml-libraries/index.html +++ b/ai/libraries/ml-libraries/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/libraries/ml-monitoring/index.html b/ai/libraries/ml-monitoring/index.html index 5345fac0ba8..6eaed7bafd6 100644 --- a/ai/libraries/ml-monitoring/index.html +++ b/ai/libraries/ml-monitoring/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/libraries/mlops-model-deployment/index.html b/ai/libraries/mlops-model-deployment/index.html index 1b7a1375b99..600ec0eff60 100644 --- a/ai/libraries/mlops-model-deployment/index.html +++ b/ai/libraries/mlops-model-deployment/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/libraries/tensorflow/core-tensorflow/index.html b/ai/libraries/tensorflow/core-tensorflow/index.html index 90fd763c9e1..c554f512463 100644 --- a/ai/libraries/tensorflow/core-tensorflow/index.html +++ b/ai/libraries/tensorflow/core-tensorflow/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/libraries/tensorflow/estimator-api/index.html b/ai/libraries/tensorflow/estimator-api/index.html index 19b69723cf2..e182bf8d218 100644 --- a/ai/libraries/tensorflow/estimator-api/index.html +++ b/ai/libraries/tensorflow/estimator-api/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/libraries/tensorflow/index.html b/ai/libraries/tensorflow/index.html index db894043b40..d60ba7b2ff0 100644 --- a/ai/libraries/tensorflow/index.html +++ b/ai/libraries/tensorflow/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/libraries/tensorflow/intro/index.html b/ai/libraries/tensorflow/intro/index.html index 28d3dc95a47..18340915b7a 100644 --- a/ai/libraries/tensorflow/intro/index.html +++ b/ai/libraries/tensorflow/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/libraries/tools/index.html b/ai/libraries/tools/index.html index bd77c1327eb..26cf190844f 100644 --- a/ai/libraries/tools/index.html +++ b/ai/libraries/tools/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/code-generators/index.html b/ai/llm/code-generators/index.html index b7f3161b1e1..1085bcf00ed 100644 --- a/ai/llm/code-generators/index.html +++ b/ai/llm/code-generators/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/design-patterns/index.html b/ai/llm/design-patterns/index.html index 59be1a23637..757138ea775 100644 --- a/ai/llm/design-patterns/index.html +++ b/ai/llm/design-patterns/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/fintech-use-cases/index.html b/ai/llm/fintech-use-cases/index.html index 85b22a9eb68..18425467a30 100644 --- a/ai/llm/fintech-use-cases/index.html +++ b/ai/llm/fintech-use-cases/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/genai-projects/index.html b/ai/llm/genai-projects/index.html index 70493aede8c..9cfb79a1c34 100644 --- a/ai/llm/genai-projects/index.html +++ b/ai/llm/genai-projects/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/index.html b/ai/llm/index.html index fafb07f0deb..9bf2454a333 100644 --- a/ai/llm/index.html +++ b/ai/llm/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/interview-questions/index.html b/ai/llm/interview-questions/index.html index b23518e9508..e38a3b1efc5 100644 --- a/ai/llm/interview-questions/index.html +++ b/ai/llm/interview-questions/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/intro/index.html b/ai/llm/intro/index.html index 2f4535fc2a9..ec86fff81b0 100644 --- a/ai/llm/intro/index.html +++ b/ai/llm/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/libraries/index.html b/ai/llm/libraries/index.html index 08c5dbdbcbd..cf13daabc40 100644 --- a/ai/llm/libraries/index.html +++ b/ai/llm/libraries/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/limitations-problems/index.html b/ai/llm/limitations-problems/index.html index 02aae44d694..f4ebfa3cb9d 100644 --- a/ai/llm/limitations-problems/index.html +++ b/ai/llm/limitations-problems/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/llm-building/index.html b/ai/llm/llm-building/index.html index 5d14e1698f5..c4446e4e70a 100644 --- a/ai/llm/llm-building/index.html +++ b/ai/llm/llm-building/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/llm-tuning/index.html b/ai/llm/llm-tuning/index.html index 85d76e097cd..cff29921ebb 100644 --- a/ai/llm/llm-tuning/index.html +++ b/ai/llm/llm-tuning/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/models/index.html b/ai/llm/models/index.html index cbb715edd54..43a7a3a0621 100644 --- a/ai/llm/models/index.html +++ b/ai/llm/models/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/natural-language-to-sql/index.html b/ai/llm/natural-language-to-sql/index.html index b4a33536e31..9910245c8e3 100644 --- a/ai/llm/natural-language-to-sql/index.html +++ b/ai/llm/natural-language-to-sql/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/prompt-engineering/index.html b/ai/llm/prompt-engineering/index.html index ddc29bd5152..486ec519b47 100644 --- a/ai/llm/prompt-engineering/index.html +++ b/ai/llm/prompt-engineering/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/prompt-examples/index.html b/ai/llm/prompt-examples/index.html index 83126f66cb6..8d10bee9929 100644 --- a/ai/llm/prompt-examples/index.html +++ b/ai/llm/prompt-examples/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/rag-hackathon-questions/index.html b/ai/llm/rag-hackathon-questions/index.html index 728e993856b..393a3260afa 100644 --- a/ai/llm/rag-hackathon-questions/index.html +++ b/ai/llm/rag-hackathon-questions/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/rag-retrieval-augmented-generation/index.html b/ai/llm/rag-retrieval-augmented-generation/index.html index 1dce1e442cf..26166d1874b 100644 --- a/ai/llm/rag-retrieval-augmented-generation/index.html +++ b/ai/llm/rag-retrieval-augmented-generation/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/llm/tools/index.html b/ai/llm/tools/index.html index 94c479c194e..e98ee4cdcfa 100644 --- a/ai/llm/tools/index.html +++ b/ai/llm/tools/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/artificial-neural-networks/index.html b/ai/ml-algorithms/artificial-neural-networks/index.html index 59c4a9022dc..cdf4ce8fe3c 100644 --- a/ai/ml-algorithms/artificial-neural-networks/index.html +++ b/ai/ml-algorithms/artificial-neural-networks/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/association-rules-and-apriori-algorithm/index.html b/ai/ml-algorithms/association-rules-and-apriori-algorithm/index.html index d5665aaa6a3..b48088edff8 100644 --- a/ai/ml-algorithms/association-rules-and-apriori-algorithm/index.html +++ b/ai/ml-algorithms/association-rules-and-apriori-algorithm/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/bagging-and-random-forest/index.html b/ai/ml-algorithms/bagging-and-random-forest/index.html index 83509f0d994..1a439eeb772 100644 --- a/ai/ml-algorithms/bagging-and-random-forest/index.html +++ b/ai/ml-algorithms/bagging-and-random-forest/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/bayes-classification/index.html b/ai/ml-algorithms/bayes-classification/index.html index 26e762a2a64..88f51100116 100644 --- a/ai/ml-algorithms/bayes-classification/index.html +++ b/ai/ml-algorithms/bayes-classification/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/boosting-and-adaboost/index.html b/ai/ml-algorithms/boosting-and-adaboost/index.html index 8ff5978544b..47885d662cb 100644 --- a/ai/ml-algorithms/boosting-and-adaboost/index.html +++ b/ai/ml-algorithms/boosting-and-adaboost/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/classification/index.html b/ai/ml-algorithms/classification/index.html index 2f36dfe72cd..ea65c3f0a31 100644 --- a/ai/ml-algorithms/classification/index.html +++ b/ai/ml-algorithms/classification/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/clustering/index.html b/ai/ml-algorithms/clustering/index.html index 566179ad48f..cd797473f89 100644 --- a/ai/ml-algorithms/clustering/index.html +++ b/ai/ml-algorithms/clustering/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/decision-tree/index.html b/ai/ml-algorithms/decision-tree/index.html index 88d52e7a1ee..6eb5b997ac2 100644 --- a/ai/ml-algorithms/decision-tree/index.html +++ b/ai/ml-algorithms/decision-tree/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/dimensionality-reduction/index.html b/ai/ml-algorithms/dimensionality-reduction/index.html index 62a80f0c253..61d962ef1c8 100644 --- a/ai/ml-algorithms/dimensionality-reduction/index.html +++ b/ai/ml-algorithms/dimensionality-reduction/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/embeddings-and-estimators/index.html b/ai/ml-algorithms/embeddings-and-estimators/index.html index 464e8bef9f3..fb2c9634bae 100644 --- a/ai/ml-algorithms/embeddings-and-estimators/index.html +++ b/ai/ml-algorithms/embeddings-and-estimators/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/ensemble-algorithms/index.html b/ai/ml-algorithms/ensemble-algorithms/index.html index 4e6db4a3ac3..b759724a4cd 100644 --- a/ai/ml-algorithms/ensemble-algorithms/index.html +++ b/ai/ml-algorithms/ensemble-algorithms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/feature-engineering/index.html b/ai/ml-algorithms/feature-engineering/index.html index 81264c41fc5..edb658ffb83 100644 --- a/ai/ml-algorithms/feature-engineering/index.html +++ b/ai/ml-algorithms/feature-engineering/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/generative-adversarial-networks-gans/index.html b/ai/ml-algorithms/generative-adversarial-networks-gans/index.html index 0e316301655..ea70af1810f 100644 --- a/ai/ml-algorithms/generative-adversarial-networks-gans/index.html +++ b/ai/ml-algorithms/generative-adversarial-networks-gans/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/graph-neural-networks-gnn/index.html b/ai/ml-algorithms/graph-neural-networks-gnn/index.html index 50bebd4cc2c..66604cdea53 100644 --- a/ai/ml-algorithms/graph-neural-networks-gnn/index.html +++ b/ai/ml-algorithms/graph-neural-networks-gnn/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/id3-c45-and-chaid/index.html b/ai/ml-algorithms/id3-c45-and-chaid/index.html index 49e5675a6ee..ef221a3ce35 100644 --- a/ai/ml-algorithms/id3-c45-and-chaid/index.html +++ b/ai/ml-algorithms/id3-c45-and-chaid/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/index.html b/ai/ml-algorithms/index.html index 11047b570d6..00c27e5c401 100644 --- a/ai/ml-algorithms/index.html +++ b/ai/ml-algorithms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/k-nearest-neighbor-knn/index.html b/ai/ml-algorithms/k-nearest-neighbor-knn/index.html index c0b81930192..e22f334a7b4 100644 --- a/ai/ml-algorithms/k-nearest-neighbor-knn/index.html +++ b/ai/ml-algorithms/k-nearest-neighbor-knn/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/learning-vector-quantization-lvq/index.html b/ai/ml-algorithms/learning-vector-quantization-lvq/index.html index dc79bc220a9..f2188d4f812 100644 --- a/ai/ml-algorithms/learning-vector-quantization-lvq/index.html +++ b/ai/ml-algorithms/learning-vector-quantization-lvq/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/linear-discriminant-analysis-lda/index.html b/ai/ml-algorithms/linear-discriminant-analysis-lda/index.html index 3dd97376f3f..b5eb3eb05f0 100644 --- a/ai/ml-algorithms/linear-discriminant-analysis-lda/index.html +++ b/ai/ml-algorithms/linear-discriminant-analysis-lda/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/linear-regression/index.html b/ai/ml-algorithms/linear-regression/index.html index 40ab15d20e2..1d4a47f0cdb 100644 --- a/ai/ml-algorithms/linear-regression/index.html +++ b/ai/ml-algorithms/linear-regression/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/logistic-regression/index.html b/ai/ml-algorithms/logistic-regression/index.html index 41fe26c24fe..74aa3133cc3 100644 --- a/ai/ml-algorithms/logistic-regression/index.html +++ b/ai/ml-algorithms/logistic-regression/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics/index.html b/ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics/index.html index add5762c79f..24ce8fac280 100644 --- a/ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics/index.html +++ b/ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/non-linear-regression/index.html b/ai/ml-algorithms/non-linear-regression/index.html index 6d30bbff200..e76465f4968 100644 --- a/ai/ml-algorithms/non-linear-regression/index.html +++ b/ai/ml-algorithms/non-linear-regression/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/others/index.html b/ai/ml-algorithms/others/index.html index 38bfcf0bf72..5565a3dcb05 100644 --- a/ai/ml-algorithms/others/index.html +++ b/ai/ml-algorithms/others/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis/index.html b/ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis/index.html index cc26e54bf1a..c76e36b21e0 100644 --- a/ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis/index.html +++ b/ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/predictive-analytics-1/index.html b/ai/ml-algorithms/predictive-analytics-1/index.html index b0883a73cd9..6bd4dd1af3b 100644 --- a/ai/ml-algorithms/predictive-analytics-1/index.html +++ b/ai/ml-algorithms/predictive-analytics-1/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/predictive-analytics-2/index.html b/ai/ml-algorithms/predictive-analytics-2/index.html index c365e048b79..5da25b67927 100644 --- a/ai/ml-algorithms/predictive-analytics-2/index.html +++ b/ai/ml-algorithms/predictive-analytics-2/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/regression/index.html b/ai/ml-algorithms/regression/index.html index efa9bd7fae9..1c663cd3323 100644 --- a/ai/ml-algorithms/regression/index.html +++ b/ai/ml-algorithms/regression/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/regularization/index.html b/ai/ml-algorithms/regularization/index.html index 0047fa1dabc..5eecbfb4fb4 100644 --- a/ai/ml-algorithms/regularization/index.html +++ b/ai/ml-algorithms/regularization/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/rule-generation-and-pattern-evaluation/index.html b/ai/ml-algorithms/rule-generation-and-pattern-evaluation/index.html index 87872a67661..1f717aa5b5d 100644 --- a/ai/ml-algorithms/rule-generation-and-pattern-evaluation/index.html +++ b/ai/ml-algorithms/rule-generation-and-pattern-evaluation/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/support-vector-machine-svm/index.html b/ai/ml-algorithms/support-vector-machine-svm/index.html index e3c2924e1d3..bbe053c3a19 100644 --- a/ai/ml-algorithms/support-vector-machine-svm/index.html +++ b/ai/ml-algorithms/support-vector-machine-svm/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-algorithms/vector-embeddings/index.html b/ai/ml-algorithms/vector-embeddings/index.html index e481830f88b..d702b2f3b84 100644 --- a/ai/ml-algorithms/vector-embeddings/index.html +++ b/ai/ml-algorithms/vector-embeddings/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-fundamentals/andrew-ng/index.html b/ai/ml-fundamentals/andrew-ng/index.html index 04295955b06..e29ff6f17c2 100644 --- a/ai/ml-fundamentals/andrew-ng/index.html +++ b/ai/ml-fundamentals/andrew-ng/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-fundamentals/index.html b/ai/ml-fundamentals/index.html index 67ec72723a6..d721f9a8080 100644 --- a/ai/ml-fundamentals/index.html +++ b/ai/ml-fundamentals/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-fundamentals/intro/index.html b/ai/ml-fundamentals/intro/index.html index f894e7fc094..a29803952dd 100644 --- a/ai/ml-fundamentals/intro/index.html +++ b/ai/ml-fundamentals/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-fundamentals/loss-function/index.html b/ai/ml-fundamentals/loss-function/index.html index 9a7efc56267..cad30ef37d4 100644 --- a/ai/ml-fundamentals/loss-function/index.html +++ b/ai/ml-fundamentals/loss-function/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-fundamentals/ml-classification/index.html b/ai/ml-fundamentals/ml-classification/index.html index 003d77b117f..c9828d97156 100644 --- a/ai/ml-fundamentals/ml-classification/index.html +++ b/ai/ml-fundamentals/ml-classification/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-fundamentals/ml-process/index.html b/ai/ml-fundamentals/ml-process/index.html index b1675b0591f..e6eeb4ed8ff 100644 --- a/ai/ml-fundamentals/ml-process/index.html +++ b/ai/ml-fundamentals/ml-process/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-fundamentals/neural-networks-3b1b/index.html b/ai/ml-fundamentals/neural-networks-3b1b/index.html index 8f3bd1abc8c..de9ee93838c 100644 --- a/ai/ml-fundamentals/neural-networks-3b1b/index.html +++ b/ai/ml-fundamentals/neural-networks-3b1b/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-fundamentals/neural-networks/index.html b/ai/ml-fundamentals/neural-networks/index.html index 95756f45312..2f910e803fd 100644 --- a/ai/ml-fundamentals/neural-networks/index.html +++ b/ai/ml-fundamentals/neural-networks/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-fundamentals/practical-ai-problems/index.html b/ai/ml-fundamentals/practical-ai-problems/index.html index 3ac40c37baf..c7d37f23525 100644 --- a/ai/ml-fundamentals/practical-ai-problems/index.html +++ b/ai/ml-fundamentals/practical-ai-problems/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-fundamentals/preliminaries/index.html b/ai/ml-fundamentals/preliminaries/index.html index 7a60cf4ec90..b0ed2d9722d 100644 --- a/ai/ml-fundamentals/preliminaries/index.html +++ b/ai/ml-fundamentals/preliminaries/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-fundamentals/questions/index.html b/ai/ml-fundamentals/questions/index.html index 6e2bd8f502e..d176ca8aa85 100644 --- a/ai/ml-fundamentals/questions/index.html +++ b/ai/ml-fundamentals/questions/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/ml-fundamentals/table-of-contents/index.html b/ai/ml-fundamentals/table-of-contents/index.html index 618b2802118..10757890a86 100644 --- a/ai/ml-fundamentals/table-of-contents/index.html +++ b/ai/ml-fundamentals/table-of-contents/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/model-evaluation/bias-variance-trade-off/index.html b/ai/model-evaluation/bias-variance-trade-off/index.html index ad31ec02630..1608040447b 100644 --- a/ai/model-evaluation/bias-variance-trade-off/index.html +++ b/ai/model-evaluation/bias-variance-trade-off/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/model-evaluation/confusion-matrix/index.html b/ai/model-evaluation/confusion-matrix/index.html index 02d01ab26c6..dabdfb46748 100644 --- a/ai/model-evaluation/confusion-matrix/index.html +++ b/ai/model-evaluation/confusion-matrix/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/model-evaluation/evaluation/index.html b/ai/model-evaluation/evaluation/index.html index 297733ed502..08dbf619050 100644 --- a/ai/model-evaluation/evaluation/index.html +++ b/ai/model-evaluation/evaluation/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/model-evaluation/generalization-and-sampling/index.html b/ai/model-evaluation/generalization-and-sampling/index.html index a32047e000f..c2572ad36da 100644 --- a/ai/model-evaluation/generalization-and-sampling/index.html +++ b/ai/model-evaluation/generalization-and-sampling/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/model-evaluation/index.html b/ai/model-evaluation/index.html index 9fcd8361a3b..13646b0c795 100644 --- a/ai/model-evaluation/index.html +++ b/ai/model-evaluation/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/model-evaluation/model-validation-monitoring/index.html b/ai/model-evaluation/model-validation-monitoring/index.html index 3418005c6fc..b1e72a9934d 100644 --- a/ai/model-evaluation/model-validation-monitoring/index.html +++ b/ai/model-evaluation/model-validation-monitoring/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/model-evaluation/optimization/index.html b/ai/model-evaluation/optimization/index.html index 4b3506ba258..866ea68a0de 100644 --- a/ai/model-evaluation/optimization/index.html +++ b/ai/model-evaluation/optimization/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/model-evaluation/others/index.html b/ai/model-evaluation/others/index.html index 898522507f7..df7b1780673 100644 --- a/ai/model-evaluation/others/index.html +++ b/ai/model-evaluation/others/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/move-37/1-markov-decision-process/index.html b/ai/move-37/1-markov-decision-process/index.html index c3ac93b798f..e9f11999a67 100644 --- a/ai/move-37/1-markov-decision-process/index.html +++ b/ai/move-37/1-markov-decision-process/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/move-37/2-dynamic-programming/index.html b/ai/move-37/2-dynamic-programming/index.html index ea8379fd6df..9c83b55d6b2 100644 --- a/ai/move-37/2-dynamic-programming/index.html +++ b/ai/move-37/2-dynamic-programming/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/move-37/3-monte-carlo-methods/index.html b/ai/move-37/3-monte-carlo-methods/index.html index e63a434477c..2f3caee8a71 100644 --- a/ai/move-37/3-monte-carlo-methods/index.html +++ b/ai/move-37/3-monte-carlo-methods/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/move-37/4-model-free-learning/index.html b/ai/move-37/4-model-free-learning/index.html index 3565ed2fd97..7e879a24c3e 100644 --- a/ai/move-37/4-model-free-learning/index.html +++ b/ai/move-37/4-model-free-learning/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/move-37/5-rl-in-continuous-space/index.html b/ai/move-37/5-rl-in-continuous-space/index.html index a0e2468def7..2586b4e9f46 100644 --- a/ai/move-37/5-rl-in-continuous-space/index.html +++ b/ai/move-37/5-rl-in-continuous-space/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/move-37/algorithms/index.html b/ai/move-37/algorithms/index.html index d80e20b5276..bf5c4d20228 100644 --- a/ai/move-37/algorithms/index.html +++ b/ai/move-37/algorithms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/move-37/index.html b/ai/move-37/index.html index cf9f3a32fd4..fec617d8502 100644 --- a/ai/move-37/index.html +++ b/ai/move-37/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/move-37/open-ai-gym/index.html b/ai/move-37/open-ai-gym/index.html index 4d7a49bcf06..6e9b1defa15 100644 --- a/ai/move-37/open-ai-gym/index.html +++ b/ai/move-37/open-ai-gym/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/move-37/others/index.html b/ai/move-37/others/index.html index 56c5f57155c..6bae18e7bb7 100644 --- a/ai/move-37/others/index.html +++ b/ai/move-37/others/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/move-37/q-learning-algorithms/index.html b/ai/move-37/q-learning-algorithms/index.html index 66e8c8e266e..ea95a9832ff 100644 --- a/ai/move-37/q-learning-algorithms/index.html +++ b/ai/move-37/q-learning-algorithms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/move-37/quizzes/index.html b/ai/move-37/quizzes/index.html index a2b4a10e52c..015660ff5de 100644 --- a/ai/move-37/quizzes/index.html +++ b/ai/move-37/quizzes/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/move-37/reinforcement-learning/index.html b/ai/move-37/reinforcement-learning/index.html index 99f08e7dd52..8097046a109 100644 --- a/ai/move-37/reinforcement-learning/index.html +++ b/ai/move-37/reinforcement-learning/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/move-37/syllabus/index.html b/ai/move-37/syllabus/index.html index 51148dac50c..61b0a815dda 100644 --- a/ai/move-37/syllabus/index.html +++ b/ai/move-37/syllabus/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/nlp/chatbot-chatops/index.html b/ai/nlp/chatbot-chatops/index.html index e4883eadb26..56eed8a5640 100644 --- a/ai/nlp/chatbot-chatops/index.html +++ b/ai/nlp/chatbot-chatops/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/nlp/chatbot-saas/index.html b/ai/nlp/chatbot-saas/index.html index b87be999ee8..dff29d9cced 100644 --- a/ai/nlp/chatbot-saas/index.html +++ b/ai/nlp/chatbot-saas/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/nlp/index.html b/ai/nlp/index.html index e12a52c5e40..e8d4b2fa8b5 100644 --- a/ai/nlp/index.html +++ b/ai/nlp/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/nlp/intro/index.html b/ai/nlp/intro/index.html index e4bb4f5f15b..7872f731a19 100644 --- a/ai/nlp/intro/index.html +++ b/ai/nlp/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/nlp/nlp-concepts/index.html b/ai/nlp/nlp-concepts/index.html index efbf0600ede..6d2d98eefc9 100644 --- a/ai/nlp/nlp-concepts/index.html +++ b/ai/nlp/nlp-concepts/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/nlp/nltk/index.html b/ai/nlp/nltk/index.html index 5a446db265c..51432eee12b 100644 --- a/ai/nlp/nltk/index.html +++ b/ai/nlp/nltk/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/nlp/word-embedding-to-transformers/index.html b/ai/nlp/word-embedding-to-transformers/index.html index 8bdaeee9a39..2f283d19687 100644 --- a/ai/nlp/word-embedding-to-transformers/index.html +++ b/ai/nlp/word-embedding-to-transformers/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/numpy/cheatsheet/index.html b/ai/numpy/cheatsheet/index.html index d9984bb73c3..6947d017d01 100644 --- a/ai/numpy/cheatsheet/index.html +++ b/ai/numpy/cheatsheet/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/numpy/data-types/index.html b/ai/numpy/data-types/index.html index 24b0bff94a8..30c00b40d56 100644 --- a/ai/numpy/data-types/index.html +++ b/ai/numpy/data-types/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/numpy/index.html b/ai/numpy/index.html index d2e8f22fef7..257001e3772 100644 --- a/ai/numpy/index.html +++ b/ai/numpy/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/numpy/internals/index.html b/ai/numpy/internals/index.html index 7b7c9fa81a1..e2c4c766f6f 100644 --- a/ai/numpy/internals/index.html +++ b/ai/numpy/internals/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/numpy/intro/index.html b/ai/numpy/intro/index.html index f2e6686191f..01f93431523 100644 --- a/ai/numpy/intro/index.html +++ b/ai/numpy/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/numpy/ndarray-object/index.html b/ai/numpy/ndarray-object/index.html index 65565a031fe..19eb25bf7f3 100644 --- a/ai/numpy/ndarray-object/index.html +++ b/ai/numpy/ndarray-object/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/numpy/numpy-reference/index.html b/ai/numpy/numpy-reference/index.html index 84d7c0923d8..16c32b51baf 100644 --- a/ai/numpy/numpy-reference/index.html +++ b/ai/numpy/numpy-reference/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/others-resources-interview-learning-courses/index.html b/ai/others-resources-interview-learning-courses/index.html index 02331919e6e..2a97427ced5 100644 --- a/ai/others-resources-interview-learning-courses/index.html +++ b/ai/others-resources-interview-learning-courses/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/pandas/cheatsheet/index.html b/ai/pandas/cheatsheet/index.html index ac8b1a8480d..53a0bc2c72d 100644 --- a/ai/pandas/cheatsheet/index.html +++ b/ai/pandas/cheatsheet/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/pandas/commands/index.html b/ai/pandas/commands/index.html index 2bf82f0117f..95caf648ecf 100644 --- a/ai/pandas/commands/index.html +++ b/ai/pandas/commands/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/pandas/data-structures/index.html b/ai/pandas/data-structures/index.html index 8873bcced30..1cfba8c3bcd 100644 --- a/ai/pandas/data-structures/index.html +++ b/ai/pandas/data-structures/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/pandas/examples/index.html b/ai/pandas/examples/index.html index f1abd2a4ec0..ab20708dce4 100644 --- a/ai/pandas/examples/index.html +++ b/ai/pandas/examples/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/pandas/index.html b/ai/pandas/index.html index 0b7e316e654..6edd6c30eb0 100644 --- a/ai/pandas/index.html +++ b/ai/pandas/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/pandas/others/index.html b/ai/pandas/others/index.html index 3065dfbbb24..0fdb2861154 100644 --- a/ai/pandas/others/index.html +++ b/ai/pandas/others/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/pandas/pandas-intro/index.html b/ai/pandas/pandas-intro/index.html index 9c387e560df..303ee5b1bf2 100644 --- a/ai/pandas/pandas-intro/index.html +++ b/ai/pandas/pandas-intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/pandas/user_guide/index.html b/ai/pandas/user_guide/index.html index a940c157bb0..b025dd92b2f 100644 --- a/ai/pandas/user_guide/index.html +++ b/ai/pandas/user_guide/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/scikit-learn/commands/index.html b/ai/scikit-learn/commands/index.html index c5e389e31d2..1407f5962d6 100644 --- a/ai/scikit-learn/commands/index.html +++ b/ai/scikit-learn/commands/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/scikit-learn/index.html b/ai/scikit-learn/index.html index 362be7875d0..2b78e7672d0 100644 --- a/ai/scikit-learn/index.html +++ b/ai/scikit-learn/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/scikit-learn/intro/index.html b/ai/scikit-learn/intro/index.html index f63e60a35db..132777c7d0f 100644 --- a/ai/scikit-learn/intro/index.html +++ b/ai/scikit-learn/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/scikit-learn/others/index.html b/ai/scikit-learn/others/index.html index 6ae329716e6..2db48729898 100644 --- a/ai/scikit-learn/others/index.html +++ b/ai/scikit-learn/others/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/scikit-learn/scipy-cheatsheet/index.html b/ai/scikit-learn/scipy-cheatsheet/index.html index dd5ef6ccf6e..f2e336ced85 100644 --- a/ai/scikit-learn/scipy-cheatsheet/index.html +++ b/ai/scikit-learn/scipy-cheatsheet/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/scikit-learn/scipy-intro/index.html b/ai/scikit-learn/scipy-intro/index.html index 456220875e7..0bb5fcacdd9 100644 --- a/ai/scikit-learn/scipy-intro/index.html +++ b/ai/scikit-learn/scipy-intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/social-media-analytics-solution/index.html b/ai/social-media-analytics-solution/index.html index abf4c3f3eea..9893cf22b82 100644 --- a/ai/social-media-analytics-solution/index.html +++ b/ai/social-media-analytics-solution/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/ai/solutions/index.html b/ai/solutions/index.html index 0b4c9f7f473..c78459e2fab 100644 --- a/ai/solutions/index.html +++ b/ai/solutions/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/advanced-algorithms/a-search-algorithm/index.html b/algorithms/advanced-algorithms/a-search-algorithm/index.html index 91005562ae6..49ef01b587e 100644 --- a/algorithms/advanced-algorithms/a-search-algorithm/index.html +++ b/algorithms/advanced-algorithms/a-search-algorithm/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/advanced-algorithms/automated-planning-and-scheduling/index.html b/algorithms/advanced-algorithms/automated-planning-and-scheduling/index.html index be895e92ac4..a291e6198ae 100644 --- a/algorithms/advanced-algorithms/automated-planning-and-scheduling/index.html +++ b/algorithms/advanced-algorithms/automated-planning-and-scheduling/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/advanced-algorithms/disk-scheduling-algorithms/index.html b/algorithms/advanced-algorithms/disk-scheduling-algorithms/index.html index cfce4cb496a..cd0ff2cd623 100644 --- a/algorithms/advanced-algorithms/disk-scheduling-algorithms/index.html +++ b/algorithms/advanced-algorithms/disk-scheduling-algorithms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/advanced-algorithms/index.html b/algorithms/advanced-algorithms/index.html index e3e42128b09..919bb71712c 100644 --- a/algorithms/advanced-algorithms/index.html +++ b/algorithms/advanced-algorithms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/advanced-algorithms/informed-search-algorithms/index.html b/algorithms/advanced-algorithms/informed-search-algorithms/index.html index f450659be55..b6f11f468bd 100644 --- a/algorithms/advanced-algorithms/informed-search-algorithms/index.html +++ b/algorithms/advanced-algorithms/informed-search-algorithms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/advanced-algorithms/intractability/index.html b/algorithms/advanced-algorithms/intractability/index.html index 848a246bc71..ecda9d0ae55 100644 --- a/algorithms/advanced-algorithms/intractability/index.html +++ b/algorithms/advanced-algorithms/intractability/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/advanced-algorithms/linear-programming/index.html b/algorithms/advanced-algorithms/linear-programming/index.html index 0d74724b24d..f8bd7adff4c 100644 --- a/algorithms/advanced-algorithms/linear-programming/index.html +++ b/algorithms/advanced-algorithms/linear-programming/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/advanced-algorithms/multi-armed-bandit-mab/index.html b/algorithms/advanced-algorithms/multi-armed-bandit-mab/index.html index 584f29c6bf3..ab2db4d984b 100644 --- a/algorithms/advanced-algorithms/multi-armed-bandit-mab/index.html +++ b/algorithms/advanced-algorithms/multi-armed-bandit-mab/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/advanced-algorithms/others/index.html b/algorithms/advanced-algorithms/others/index.html index 5e3392b6b06..78f7187efdd 100644 --- a/algorithms/advanced-algorithms/others/index.html +++ b/algorithms/advanced-algorithms/others/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/advanced-algorithms/principle-of-deferred-decisions/index.html b/algorithms/advanced-algorithms/principle-of-deferred-decisions/index.html index 0c6a40058b8..d5dc79da2d5 100644 --- a/algorithms/advanced-algorithms/principle-of-deferred-decisions/index.html +++ b/algorithms/advanced-algorithms/principle-of-deferred-decisions/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/advanced-algorithms/reductions/index.html b/algorithms/advanced-algorithms/reductions/index.html index b3aef3b779f..8242563a9d7 100644 --- a/algorithms/advanced-algorithms/reductions/index.html +++ b/algorithms/advanced-algorithms/reductions/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/advanced-algorithms/regular-expressions/index.html b/algorithms/advanced-algorithms/regular-expressions/index.html index 8e031bc29b5..10000d4923f 100644 --- a/algorithms/advanced-algorithms/regular-expressions/index.html +++ b/algorithms/advanced-algorithms/regular-expressions/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/advanced-algorithms/travelling-salesman-problem/index.html b/algorithms/advanced-algorithms/travelling-salesman-problem/index.html index 19fd18b325a..e72d506f902 100644 --- a/algorithms/advanced-algorithms/travelling-salesman-problem/index.html +++ b/algorithms/advanced-algorithms/travelling-salesman-problem/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/algorithmic-complexity/analysis-of-algorithms/index.html b/algorithms/algorithmic-complexity/analysis-of-algorithms/index.html index bd0a97b9dd6..1dd736bf8b8 100644 --- a/algorithms/algorithmic-complexity/analysis-of-algorithms/index.html +++ b/algorithms/algorithmic-complexity/analysis-of-algorithms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/algorithmic-complexity/complexity-zoo/index.html b/algorithms/algorithmic-complexity/complexity-zoo/index.html index 5fa1da70717..edd1fa943b8 100644 --- a/algorithms/algorithmic-complexity/complexity-zoo/index.html +++ b/algorithms/algorithmic-complexity/complexity-zoo/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/algorithmic-complexity/computational-complexity-theory/index.html b/algorithms/algorithmic-complexity/computational-complexity-theory/index.html index 80413e78693..fc9d005980d 100644 --- a/algorithms/algorithmic-complexity/computational-complexity-theory/index.html +++ b/algorithms/algorithmic-complexity/computational-complexity-theory/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/algorithmic-complexity/finite-state-machine/index.html b/algorithms/algorithmic-complexity/finite-state-machine/index.html index 255e3c5f04e..ccbfa2198f9 100644 --- a/algorithms/algorithmic-complexity/finite-state-machine/index.html +++ b/algorithms/algorithmic-complexity/finite-state-machine/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/algorithmic-complexity/halting-problem/index.html b/algorithms/algorithmic-complexity/halting-problem/index.html index 867bd6a3cf7..803fa6c407c 100644 --- a/algorithms/algorithmic-complexity/halting-problem/index.html +++ b/algorithms/algorithmic-complexity/halting-problem/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/algorithmic-complexity/index.html b/algorithms/algorithmic-complexity/index.html index 9755a28c99d..8fe37653a31 100644 --- a/algorithms/algorithmic-complexity/index.html +++ b/algorithms/algorithmic-complexity/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/algorithmic-complexity/np-hardness/index.html b/algorithms/algorithmic-complexity/np-hardness/index.html index 97da9c01262..1ee79a383e2 100644 --- a/algorithms/algorithmic-complexity/np-hardness/index.html +++ b/algorithms/algorithmic-complexity/np-hardness/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/algorithmic-complexity/sub-linear-time/index.html b/algorithms/algorithmic-complexity/sub-linear-time/index.html index b2050e67f7f..74192c8a8b6 100644 --- a/algorithms/algorithmic-complexity/sub-linear-time/index.html +++ b/algorithms/algorithmic-complexity/sub-linear-time/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/algorithmic-complexity/time-complexities/index.html b/algorithms/algorithmic-complexity/time-complexities/index.html index f0c878501f7..4ba754ea8e7 100644 --- a/algorithms/algorithmic-complexity/time-complexities/index.html +++ b/algorithms/algorithmic-complexity/time-complexities/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/algorithmic-complexity/turing-vs-non-turing-machine/index.html b/algorithms/algorithmic-complexity/turing-vs-non-turing-machine/index.html index 728fb709495..75d687d7fdd 100644 --- a/algorithms/algorithmic-complexity/turing-vs-non-turing-machine/index.html +++ b/algorithms/algorithmic-complexity/turing-vs-non-turing-machine/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/bit-manipulation/examples/index.html b/algorithms/bit-manipulation/examples/index.html index 72c54895857..692df2dbb30 100644 --- a/algorithms/bit-manipulation/examples/index.html +++ b/algorithms/bit-manipulation/examples/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/bit-manipulation/general/index.html b/algorithms/bit-manipulation/general/index.html index e208596f90a..8805ea40733 100644 --- a/algorithms/bit-manipulation/general/index.html +++ b/algorithms/bit-manipulation/general/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/bit-manipulation/index.html b/algorithms/bit-manipulation/index.html index be73054e2a1..07d8af65d2c 100644 --- a/algorithms/bit-manipulation/index.html +++ b/algorithms/bit-manipulation/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/complex-systems/game-theory/index.html b/algorithms/complex-systems/game-theory/index.html index 652c40aea09..1bd92959590 100644 --- a/algorithms/complex-systems/game-theory/index.html +++ b/algorithms/complex-systems/game-theory/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/complex-systems/index.html b/algorithms/complex-systems/index.html index 8a7138f1dbd..6a0348653c3 100644 --- a/algorithms/complex-systems/index.html +++ b/algorithms/complex-systems/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/complex-systems/intro/index.html b/algorithms/complex-systems/intro/index.html index fa4fd00d1aa..22c72fbe1c7 100644 --- a/algorithms/complex-systems/intro/index.html +++ b/algorithms/complex-systems/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/complex-systems/minimax-algorithm/index.html b/algorithms/complex-systems/minimax-algorithm/index.html index 1e7bc0a7aa4..a50ee96db0f 100644 --- a/algorithms/complex-systems/minimax-algorithm/index.html +++ b/algorithms/complex-systems/minimax-algorithm/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/complex-systems/move-by-nature/index.html b/algorithms/complex-systems/move-by-nature/index.html index 3b3fbab0d23..b098a914a69 100644 --- a/algorithms/complex-systems/move-by-nature/index.html +++ b/algorithms/complex-systems/move-by-nature/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/complex-systems/others/index.html b/algorithms/complex-systems/others/index.html index b74e74b4872..90e4b0cd856 100644 --- a/algorithms/complex-systems/others/index.html +++ b/algorithms/complex-systems/others/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/data-compression/bitmap-compression-algorithms/index.html b/algorithms/data-compression/bitmap-compression-algorithms/index.html index 288be0e22a2..859ff04dc2d 100644 --- a/algorithms/data-compression/bitmap-compression-algorithms/index.html +++ b/algorithms/data-compression/bitmap-compression-algorithms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/data-compression/huffman-compression/index.html b/algorithms/data-compression/huffman-compression/index.html index b22af77f22b..6fcc948aef9 100644 --- a/algorithms/data-compression/huffman-compression/index.html +++ b/algorithms/data-compression/huffman-compression/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/data-compression/index.html b/algorithms/data-compression/index.html index 59ca82bee88..3bbc45cafdd 100644 --- a/algorithms/data-compression/index.html +++ b/algorithms/data-compression/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/data-compression/intro/index.html b/algorithms/data-compression/intro/index.html index 5145de6735d..f23465c1be3 100644 --- a/algorithms/data-compression/intro/index.html +++ b/algorithms/data-compression/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/data-compression/lzw-compression/index.html b/algorithms/data-compression/lzw-compression/index.html index 6fae14cd533..6ee036f7e73 100644 --- a/algorithms/data-compression/lzw-compression/index.html +++ b/algorithms/data-compression/lzw-compression/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/data-compression/others/index.html b/algorithms/data-compression/others/index.html index 24196cfb883..e942dff6fdc 100644 --- a/algorithms/data-compression/others/index.html +++ b/algorithms/data-compression/others/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/data-compression/run-length-encoding/index.html b/algorithms/data-compression/run-length-encoding/index.html index b733c1465cd..0540941b766 100644 --- a/algorithms/data-compression/run-length-encoding/index.html +++ b/algorithms/data-compression/run-length-encoding/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/dynamic-programming/basic-gold-mines/index.html b/algorithms/dynamic-programming/basic-gold-mines/index.html index a685343d696..beb8542fdfb 100644 --- a/algorithms/dynamic-programming/basic-gold-mines/index.html +++ b/algorithms/dynamic-programming/basic-gold-mines/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/dynamic-programming/greedy-algorithms/index.html b/algorithms/dynamic-programming/greedy-algorithms/index.html index 34f8b6f54a9..1d51f34a74e 100644 --- a/algorithms/dynamic-programming/greedy-algorithms/index.html +++ b/algorithms/dynamic-programming/greedy-algorithms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/dynamic-programming/how-to-find-dp/index.html b/algorithms/dynamic-programming/how-to-find-dp/index.html index 20807bef152..ff089c010e3 100644 --- a/algorithms/dynamic-programming/how-to-find-dp/index.html +++ b/algorithms/dynamic-programming/how-to-find-dp/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/dynamic-programming/index.html b/algorithms/dynamic-programming/index.html index 69a61520d65..e14d0973265 100644 --- a/algorithms/dynamic-programming/index.html +++ b/algorithms/dynamic-programming/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/dynamic-programming/intro/index.html b/algorithms/dynamic-programming/intro/index.html index 57b5de2d9d7..08cd714ef82 100644 --- a/algorithms/dynamic-programming/intro/index.html +++ b/algorithms/dynamic-programming/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/dynamic-programming/knapsack-problem/index.html b/algorithms/dynamic-programming/knapsack-problem/index.html index 217218e5413..722dffce24a 100644 --- a/algorithms/dynamic-programming/knapsack-problem/index.html +++ b/algorithms/dynamic-programming/knapsack-problem/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/dynamic-programming/levenshtein-distance-or-edit-distance/index.html b/algorithms/dynamic-programming/levenshtein-distance-or-edit-distance/index.html index a8e41b87032..9b89d0b4f16 100644 --- a/algorithms/dynamic-programming/levenshtein-distance-or-edit-distance/index.html +++ b/algorithms/dynamic-programming/levenshtein-distance-or-edit-distance/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/1d-range-search/index.html b/algorithms/general/1d-range-search/index.html index 3045d3aa2a0..d3cd11eedd4 100644 --- a/algorithms/general/1d-range-search/index.html +++ b/algorithms/general/1d-range-search/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/2d-orthogonal-range-search/index.html b/algorithms/general/2d-orthogonal-range-search/index.html index 86befc90ec7..2300f51963f 100644 --- a/algorithms/general/2d-orthogonal-range-search/index.html +++ b/algorithms/general/2d-orthogonal-range-search/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/algo-ds/index.html b/algorithms/general/algo-ds/index.html index 21b0dffaa7a..eadeff6b076 100644 --- a/algorithms/general/algo-ds/index.html +++ b/algorithms/general/algo-ds/index.html @@ -18,8 +18,8 @@ - - + + @@ -27,436 +27,232 @@
Skip to main content

Algo + DS

Algorithms

    -
  1. -

    Union-Find Algorithm

    +
  2. Union-Find Algorithm
      -
    • -

      Dynamic Connectivity

      -
    • -
    • -

      Quick Find

      -
    • -
    • -

      Quick Union

      -
    • -
    • -

      Improvements

      +
    • Dynamic Connectivity
    • +
    • Quick Find
    • +
    • Quick Union
    • +
    • Improvements
        -
      • -

        Weighted Quick Union

        -
      • -
      • -

        Weighted Quick Union with Path Compression

        -
      • +
      • Weighted Quick Union
      • +
      • Weighted Quick Union with Path Compression
  3. -
  4. -

    Analysis of algorithms

    +
  5. Analysis of algorithms
      -
    • -

      Scientific Method of Analysis

      -
    • -
    • -

      Empirical Method of Analysis

      -
    • +
    • Scientific Method of Analysis
    • +
    • Empirical Method of Analysis
  6. -
  7. -

    Stacks and Queues

    +
  8. Stacks and Queues
      -
    • -

      Stacks

      -
    • -
    • -

      Resizing Arrays

      -
    • -
    • -

      Queues

      -
    • -
    • -

      Deque

      -
    • -
    • -

      Randomized Queues

      -
    • +
    • Stacks
    • +
    • Resizing Arrays
    • +
    • Queues
    • +
    • Deque
    • +
    • Randomized Queues
  9. -
  10. -

    Elementary Sort

    +
  11. Elementary Sort
      -
    • -

      Selection Sort

      -
    • -
    • -

      Insertion Sort

      -
    • -
    • -

      Shell Sort

      -
    • -
    • -

      Shuffling

      +
    • Selection Sort
    • +
    • Insertion Sort
    • +
    • Shell Sort
    • +
    • Shuffling
        -
      • -

        Shuffle Sort

        -
      • -
      • -

        Knuth Shuffle

        -
      • +
      • Shuffle Sort
      • +
      • Knuth Shuffle
    • -
    • -

      Convex Hull

      -
    • +
    • Convex Hull
  12. -
  13. -

    Merge Sort

    +
  14. Merge Sort
    • Bottom up mergesort
  15. -
  16. -

    Quick Sort

    +
  17. Quick Sort
      -
    • -

      Quick Select (Selection)

      -
    • -
    • -

      3- way partition quicksort (Duplicate Keys)

      -
    • -
    • -

      System sorts

      -
    • +
    • Quick Select (Selection)
    • +
    • 3- way partition quicksort (Duplicate Keys)
    • +
    • System sorts
  18. -
  19. -

    Priority Queues

    +
  20. Priority Queues
      -
    • -

      Binary heaps

      -
    • -
    • -

      Heap sort

      -
    • +
    • Binary heaps
    • +
    • Heap sort
  21. -
  22. -

    Elementary Symbol Tables

    +
  23. Elementary Symbol Tables
      -
    • Elementary Implementations
    • +
    • Elementary Implementations +
        +
      • Sorted array (Binary Search)
      • +
      • Unordered List (Sequential Search)
    • -
-

Sorted array (Binary Search)

-

Unordered List (Sequential Search)

-
    -
  1. -

    Ordered Operations

    -
  2. -
  3. -

    Binary Search Trees

    -
  4. -
  5. -

    Ordered Operations in BSTs

    -
  6. -
  7. -

    Deletion in BSTs

    +
  8. -
  9. -

    Balanced Search Trees

    +
  10. Ordered Operations
  11. +
  12. Binary Search Trees
  13. +
  14. Ordered Operations in BSTs
  15. +
  16. Deletion in BSTs
  17. +
  18. Balanced Search Trees
      -
    • -

      2-3 Search Trees

      -
    • -
    • -

      Red-Black Trees

      -
    • -
    • -

      B-Trees

      -
    • +
    • 2-3 Search Trees
    • +
    • Red-Black Trees
    • +
    • B-Trees
  19. -
  20. -

    Geometric applications of BST

    -
  21. -
+
  • Geometric applications of BST
      -
    • -

      1d Range Search

      -
    • -
    • -

      Line Segment Intersection

      -
    • -
    • -

      Kd-Trees

      -
    • -
    • -

      Interval Search Trees

      -
    • -
    • -

      Rectangle Intersection

      -
    • +
    • 1d Range Search
    • +
    • Line Segment Intersection
    • +
    • Kd-Trees
    • +
    • Interval Search Trees
    • +
    • Rectangle Intersection
    -
      -
    1. Hash Tables
    2. -
    -
      -
    • -

      Uniform Hashing Assumption

    • -
    • -

      Separate Chaining

      -
    • -
    • -

      Linear Probing

      -
    • -
    -
      -
    1. Symbol Table Applications
    2. -
    +
  • Hash Tables
      -
    • -

      Sets

      -
    • -
    • -

      Dictionary Clients

      -
    • -
    • -

      Indexing Clients

      -
    • -
    • -

      Sparse Vectors

      +
    • Uniform Hashing Assumption
    • +
    • Separate Chaining
    • +
    • Linear Probing
    • +
  • +
  • Symbol Table Applications +
      +
    • Sets
    • +
    • Dictionary Clients
    • +
    • Indexing Clients
    • +
    • Sparse Vectors
    +
  • +

    Data Structures

      -
    1. -

      Undirected Graphs

      +
    2. Undirected Graphs
        -
      • -

        Implementation

        +
      • Implementation
          -
        • -

          Adjacency Matrix

          -
        • -
        • -

          Adjacency List

          -
        • +
        • Adjacency Matrix
        • +
        • Adjacency List
      • -
      • -

        DFS

        -
      • -
      • -

        BFS

        -
      • -
      • -

        Connected Components

        -
      • +
      • DFS
      • +
      • BFS
      • +
      • Connected Components
    3. -
    4. -

      Directed Graphs

      +
    5. Directed Graphs
        -
      • -

        Topological Sort

        +
      • Topological Sort
        • Topological order of an acyclic digraph
      • -
      • -

        Strongly Connected Components

        +
      • Strongly Connected Components
        • Kosaraju-Sharir algorithm for computing strong components of a digraph
    6. -
    7. -

      Minimum Spanning Trees

      +
    8. Minimum Spanning Trees
        -
      • -

        Kruskal's Algorithm

        -
      • -
      • -

        Prim's Algorithm

        -
      • +
      • Kruskal's Algorithm
      • +
      • Prim's Algorithm
    9. -
    10. -

      Shortest Path

      +
    11. Shortest Path
        -
      • -

        Dijkstra's Algorithm

        -
      • -
      • -

        Bellman Ford Algorithm (Negative Weights)

        -
      • +
      • Dijkstra's Algorithm
      • +
      • Bellman Ford Algorithm (Negative Weights)
    12. -
    13. -

      Maximum Flow and Minimum Cut

      +
    14. Maximum Flow and Minimum Cut
      • Ford-Fulkerson Algorithm
    15. -
    16. -

      Radix Sorts

      +
    17. Radix Sorts
        -
      • -

        Key-Indexed Counting

        -
      • -
      • -

        LSD Radix Sort

        -
      • -
      • -

        MSD Radix Sort

        -
      • -
      • -

        3-way Radix Quicksort

        -
      • -
      • -

        Suffix Arrays

        -
      • +
      • Key-Indexed Counting
      • +
      • LSD Radix Sort
      • +
      • MSD Radix Sort
      • +
      • 3-way Radix Quicksort
      • +
      • Suffix Arrays
    18. -
    19. -

      Tries

      +
    20. Tries
        -
      • -

        R-way Tries

        -
      • -
      • -

        Ternary Search Tries

        -
      • +
      • R-way Tries
      • +
      • Ternary Search Tries
    21. -
    22. -

      Substring Search

      +
    23. Substring Search
        -
      • -

        KMP (Knuth-Morris-Pratt)

        -
      • -
      • -

        Boyer-Moore

        -
      • -
      • -

        Rabin-Karp

        -
      • +
      • KMP (Knuth-Morris-Pratt)
      • +
      • Boyer-Moore
      • +
      • Rabin-Karp
    24. -
    25. -

      Regular Expressions

      +
    26. Regular Expressions
        -
      • -

        DFA

        -
      • -
      • -

        NFA

        -
      • +
      • DFA
      • +
      • NFA
    27. -
    28. -

      Data Compression

      -
    29. -
    +
  • Data Compression
      -
    • -

      Run Length Encoding

      -
    • -
    • -

      Huffman Compression

      -
    • -
    • -

      LZW Compression

      -
    • -
    • -

      Burrows-Wheeler

      -
    • +
    • Run Length Encoding
    • +
    • Huffman Compression
    • +
    • LZW Compression
    • +
    • Burrows-Wheeler
    -
      -
    1. -

      Reductions

    2. -
    3. -

      Linear Programming

      -
    4. -
    +
  • Reductions
  • +
  • Linear Programming
      -
    • -

      Brewer's Problem

      -
    • -
    • -

      Simplex Algorithm

      -
    • +
    • Brewer's Problem
    • +
    • Simplex Algorithm
    -
      -
    1. Intractability
    2. -
    -
      -
    • -

      P

      -
    • -
    • -

      NP

      -
    • -
    • -

      NP-Complete

    • +
    • Intractability +
        +
      • P
      • +
      • NP
      • +
      • NP-Complete
      +
    • +

      Strategies for algorithms

        -
      1. -

        B.U.D. (Bottleneck, Unnecessary work, Duplicated work)

        -
      2. -
      3. -

        Space / Time Tradeoffs

        -
      4. +
      5. B.U.D. (Bottleneck, Unnecessary work, Duplicated work)
      6. +
      7. Space / Time Tradeoffs

      Resources

        -
      1. -

        Coursera - Algorithms Part 1

        -
      2. -
      3. -

        Coursera - Algorithms Part 2

        -
      4. +
      5. Coursera - Algorithms Part 1
      6. +
      7. Coursera - Algorithms Part 2

      https://www.toptal.com/algorithms/interview-questions

      Most Important Algos / DS / Programming Concepts

        -
      1. -

        Depth first search

        -
      2. -
      3. -

        Breadth first search

        -
      4. -
      5. -

        Matching parenthesis

        -
      6. -
      7. -

        Hash Tables

        -
      8. -
      9. -

        Variables / Pointer manipulations

        -
      10. -
      11. -

        Reversing a linked list

        -
      12. -
      13. -

        Sorting fundamentals

        -
      14. -
      15. -

        Recursion

        -
      16. -
      17. -

        Custom data structures (suffix tree)

        -
      18. -
      19. -

        Binary search

        -
      20. +
      21. Depth first search
      22. +
      23. Breadth first search
      24. +
      25. Matching parenthesis
      26. +
      27. Hash Tables
      28. +
      29. Variables / Pointer manipulations
      30. +
      31. Reversing a linked list
      32. +
      33. Sorting fundamentals
      34. +
      35. Recursion
      36. +
      37. Custom data structures (suffix tree)
      38. +
      39. Binary search

      BUD Optimization Strategy

  • +

    https://github.com/MisterBooo/LeetCodeAnimation

    \ No newline at end of file diff --git a/algorithms/general/algorithms-questions/index.html b/algorithms/general/algorithms-questions/index.html index 7a0295ea7f6..8c399389fdf 100644 --- a/algorithms/general/algorithms-questions/index.html +++ b/algorithms/general/algorithms-questions/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/appel-algorithm/index.html b/algorithms/general/appel-algorithm/index.html index 276470d0e9f..f4af33de4e3 100644 --- a/algorithms/general/appel-algorithm/index.html +++ b/algorithms/general/appel-algorithm/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/competitive-programming/index.html b/algorithms/general/competitive-programming/index.html index 432d3b77f9c..6529b2e1bbf 100644 --- a/algorithms/general/competitive-programming/index.html +++ b/algorithms/general/competitive-programming/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/euclidean-algorithm-gcd/index.html b/algorithms/general/euclidean-algorithm-gcd/index.html index 92d1ecb57cd..7573c187c93 100644 --- a/algorithms/general/euclidean-algorithm-gcd/index.html +++ b/algorithms/general/euclidean-algorithm-gcd/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/flocking-boids-algorithm/index.html b/algorithms/general/flocking-boids-algorithm/index.html index cce7b97e5ae..e475136988e 100644 --- a/algorithms/general/flocking-boids-algorithm/index.html +++ b/algorithms/general/flocking-boids-algorithm/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/index.html b/algorithms/general/index.html index 3a5f06b5a6b..f18912a1023 100644 --- a/algorithms/general/index.html +++ b/algorithms/general/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/knuth-shuffle/index.html b/algorithms/general/knuth-shuffle/index.html index 66d200d55f5..c912577d4d6 100644 --- a/algorithms/general/knuth-shuffle/index.html +++ b/algorithms/general/knuth-shuffle/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/list-of-algorithms/index.html b/algorithms/general/list-of-algorithms/index.html index 11e6cbb4469..a8f47ca25e1 100644 --- a/algorithms/general/list-of-algorithms/index.html +++ b/algorithms/general/list-of-algorithms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/n-queens-problem/index.html b/algorithms/general/n-queens-problem/index.html index 55516ba1e4c..d775ce4073a 100644 --- a/algorithms/general/n-queens-problem/index.html +++ b/algorithms/general/n-queens-problem/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/orthogonal-rectangle-intersection-search/index.html b/algorithms/general/orthogonal-rectangle-intersection-search/index.html index e63f5086a7d..12f83c80f9e 100644 --- a/algorithms/general/orthogonal-rectangle-intersection-search/index.html +++ b/algorithms/general/orthogonal-rectangle-intersection-search/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/prime-factorization/index.html b/algorithms/general/prime-factorization/index.html index 284efa45eb3..427c74a354b 100644 --- a/algorithms/general/prime-factorization/index.html +++ b/algorithms/general/prime-factorization/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/quick-select/index.html b/algorithms/general/quick-select/index.html index bb8b6de761f..6a8c41330a7 100644 --- a/algorithms/general/quick-select/index.html +++ b/algorithms/general/quick-select/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/recursion/index.html b/algorithms/general/recursion/index.html index d9de733e67d..8a4c37069f2 100644 --- a/algorithms/general/recursion/index.html +++ b/algorithms/general/recursion/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/reverse-polish-notation-postfix-notation/index.html b/algorithms/general/reverse-polish-notation-postfix-notation/index.html index d07910d9888..b44e35ff1c6 100644 --- a/algorithms/general/reverse-polish-notation-postfix-notation/index.html +++ b/algorithms/general/reverse-polish-notation-postfix-notation/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/sweep-line-algorithm/index.html b/algorithms/general/sweep-line-algorithm/index.html index 5ef664623b0..c888193b08f 100644 --- a/algorithms/general/sweep-line-algorithm/index.html +++ b/algorithms/general/sweep-line-algorithm/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/two-stack-algorithm/index.html b/algorithms/general/two-stack-algorithm/index.html index 6ec6e7ad32f..d4e2f813f63 100644 --- a/algorithms/general/two-stack-algorithm/index.html +++ b/algorithms/general/two-stack-algorithm/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/types-of-algorithms/index.html b/algorithms/general/types-of-algorithms/index.html index 3a229ba04ef..107b8b27639 100644 --- a/algorithms/general/types-of-algorithms/index.html +++ b/algorithms/general/types-of-algorithms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/general/union-find-algorithm/index.html b/algorithms/general/union-find-algorithm/index.html index 11aa86bc871..70fbe71010c 100644 --- a/algorithms/general/union-find-algorithm/index.html +++ b/algorithms/general/union-find-algorithm/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/acyclic-edge-weighted-digraphs/index.html b/algorithms/graphtheory/acyclic-edge-weighted-digraphs/index.html index b27001154bd..89d307f7791 100644 --- a/algorithms/graphtheory/acyclic-edge-weighted-digraphs/index.html +++ b/algorithms/graphtheory/acyclic-edge-weighted-digraphs/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/bellman-ford-algorithm/index.html b/algorithms/graphtheory/bellman-ford-algorithm/index.html index 6cf3674d6f6..dbcdb43aeb1 100644 --- a/algorithms/graphtheory/bellman-ford-algorithm/index.html +++ b/algorithms/graphtheory/bellman-ford-algorithm/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/breadth-first-search-bfs/index.html b/algorithms/graphtheory/breadth-first-search-bfs/index.html index 10fd73c886d..cfd5e923439 100644 --- a/algorithms/graphtheory/breadth-first-search-bfs/index.html +++ b/algorithms/graphtheory/breadth-first-search-bfs/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/connected-components/index.html b/algorithms/graphtheory/connected-components/index.html index 5b0f61dedb1..1d4b482a6ac 100644 --- a/algorithms/graphtheory/connected-components/index.html +++ b/algorithms/graphtheory/connected-components/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/depth-first-search-dfs/index.html b/algorithms/graphtheory/depth-first-search-dfs/index.html index 11bee07fc04..c14c952bb51 100644 --- a/algorithms/graphtheory/depth-first-search-dfs/index.html +++ b/algorithms/graphtheory/depth-first-search-dfs/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/dijkstra-algorithm/index.html b/algorithms/graphtheory/dijkstra-algorithm/index.html index a1e943e4bd9..eb6bbafc403 100644 --- a/algorithms/graphtheory/dijkstra-algorithm/index.html +++ b/algorithms/graphtheory/dijkstra-algorithm/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/eulerian-trail/index.html b/algorithms/graphtheory/eulerian-trail/index.html index dbd8f59b80c..b7b4d6dff58 100644 --- a/algorithms/graphtheory/eulerian-trail/index.html +++ b/algorithms/graphtheory/eulerian-trail/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/ford-fulkerson-algorithm/index.html b/algorithms/graphtheory/ford-fulkerson-algorithm/index.html index 9c8303d7ec2..9abaa9a59ad 100644 --- a/algorithms/graphtheory/ford-fulkerson-algorithm/index.html +++ b/algorithms/graphtheory/ford-fulkerson-algorithm/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/graph-search/index.html b/algorithms/graphtheory/graph-search/index.html index d9fa9040684..2839174c461 100644 --- a/algorithms/graphtheory/graph-search/index.html +++ b/algorithms/graphtheory/graph-search/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/index.html b/algorithms/graphtheory/index.html index 5d163db4eef..679574a5e07 100644 --- a/algorithms/graphtheory/index.html +++ b/algorithms/graphtheory/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/intro/index.html b/algorithms/graphtheory/intro/index.html index e632412f6bf..dc32dce6e63 100644 --- a/algorithms/graphtheory/intro/index.html +++ b/algorithms/graphtheory/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/kruskal-algorithm-for-mst/index.html b/algorithms/graphtheory/kruskal-algorithm-for-mst/index.html index 914f80a2a83..0dba1f1096a 100644 --- a/algorithms/graphtheory/kruskal-algorithm-for-mst/index.html +++ b/algorithms/graphtheory/kruskal-algorithm-for-mst/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/longest-path-in-edge-weighted-dags/index.html b/algorithms/graphtheory/longest-path-in-edge-weighted-dags/index.html index a5df80acabe..ff079e05a08 100644 --- a/algorithms/graphtheory/longest-path-in-edge-weighted-dags/index.html +++ b/algorithms/graphtheory/longest-path-in-edge-weighted-dags/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/maximum-flow-and-minimum-cut/index.html b/algorithms/graphtheory/maximum-flow-and-minimum-cut/index.html index cddbdfd275c..36606cf3443 100644 --- a/algorithms/graphtheory/maximum-flow-and-minimum-cut/index.html +++ b/algorithms/graphtheory/maximum-flow-and-minimum-cut/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/minimum-spanning-tree/index.html b/algorithms/graphtheory/minimum-spanning-tree/index.html index 426a38245ff..6aaa1caef8b 100644 --- a/algorithms/graphtheory/minimum-spanning-tree/index.html +++ b/algorithms/graphtheory/minimum-spanning-tree/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/other-graph-algorithms/index.html b/algorithms/graphtheory/other-graph-algorithms/index.html index 0a8583d133c..c9dee5b222e 100644 --- a/algorithms/graphtheory/other-graph-algorithms/index.html +++ b/algorithms/graphtheory/other-graph-algorithms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/prim-algorithm-for-mst/index.html b/algorithms/graphtheory/prim-algorithm-for-mst/index.html index 297fe2f990b..69df5296673 100644 --- a/algorithms/graphtheory/prim-algorithm-for-mst/index.html +++ b/algorithms/graphtheory/prim-algorithm-for-mst/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/problems/index.html b/algorithms/graphtheory/problems/index.html index 4e296652e05..d42b01b8d29 100644 --- a/algorithms/graphtheory/problems/index.html +++ b/algorithms/graphtheory/problems/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/resources/index.html b/algorithms/graphtheory/resources/index.html index 7f05d07c921..523452b2226 100644 --- a/algorithms/graphtheory/resources/index.html +++ b/algorithms/graphtheory/resources/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/seam-carving/index.html b/algorithms/graphtheory/seam-carving/index.html index fa1263dfb41..02ff9a3c3ae 100644 --- a/algorithms/graphtheory/seam-carving/index.html +++ b/algorithms/graphtheory/seam-carving/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/shortest-path-algorithms/index.html b/algorithms/graphtheory/shortest-path-algorithms/index.html index 5fc957a27b9..7dd553d243a 100644 --- a/algorithms/graphtheory/shortest-path-algorithms/index.html +++ b/algorithms/graphtheory/shortest-path-algorithms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/strong-components/index.html b/algorithms/graphtheory/strong-components/index.html index 3a12336f522..69a5d8688a6 100644 --- a/algorithms/graphtheory/strong-components/index.html +++ b/algorithms/graphtheory/strong-components/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/graphtheory/topological-sort-algorithm/index.html b/algorithms/graphtheory/topological-sort-algorithm/index.html index 1968fb13ad4..0121335a8b7 100644 --- a/algorithms/graphtheory/topological-sort-algorithm/index.html +++ b/algorithms/graphtheory/topological-sort-algorithm/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/index.html b/algorithms/index.html index 5b89daa33f1..6bff8300a4a 100644 --- a/algorithms/index.html +++ b/algorithms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/mathematics/combinatorial-optimization/index.html b/algorithms/mathematics/combinatorial-optimization/index.html index 1403eaf7a46..cd25e9d87f4 100644 --- a/algorithms/mathematics/combinatorial-optimization/index.html +++ b/algorithms/mathematics/combinatorial-optimization/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/mathematics/index.html b/algorithms/mathematics/index.html index 2b6dd128c5b..85c6de0eb35 100644 --- a/algorithms/mathematics/index.html +++ b/algorithms/mathematics/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/mathematics/mo-algorithm/index.html b/algorithms/mathematics/mo-algorithm/index.html index 3379074c8b8..a1c1baa89aa 100644 --- a/algorithms/mathematics/mo-algorithm/index.html +++ b/algorithms/mathematics/mo-algorithm/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/mathematics/powerset/index.html b/algorithms/mathematics/powerset/index.html index c55ab573948..6a5d917a684 100644 --- a/algorithms/mathematics/powerset/index.html +++ b/algorithms/mathematics/powerset/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/3-way-quick-sort/index.html b/algorithms/searching-sorting/3-way-quick-sort/index.html index 0b777f517c1..dd425f35587 100644 --- a/algorithms/searching-sorting/3-way-quick-sort/index.html +++ b/algorithms/searching-sorting/3-way-quick-sort/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/3-way-string-radix-quicksort/index.html b/algorithms/searching-sorting/3-way-string-radix-quicksort/index.html index 38edf211e06..5f4218ddbbc 100644 --- a/algorithms/searching-sorting/3-way-string-radix-quicksort/index.html +++ b/algorithms/searching-sorting/3-way-string-radix-quicksort/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/binary-search/index.html b/algorithms/searching-sorting/binary-search/index.html index 1c2f15d4635..909b7aa45ab 100644 --- a/algorithms/searching-sorting/binary-search/index.html +++ b/algorithms/searching-sorting/binary-search/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/convex-hull/index.html b/algorithms/searching-sorting/convex-hull/index.html index f00d20cf7b6..879383810a6 100644 --- a/algorithms/searching-sorting/convex-hull/index.html +++ b/algorithms/searching-sorting/convex-hull/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/external-sort/index.html b/algorithms/searching-sorting/external-sort/index.html index b23eb227721..691eb308a7f 100644 --- a/algorithms/searching-sorting/external-sort/index.html +++ b/algorithms/searching-sorting/external-sort/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/heapsort/index.html b/algorithms/searching-sorting/heapsort/index.html index 66132c92c87..a34f88d4044 100644 --- a/algorithms/searching-sorting/heapsort/index.html +++ b/algorithms/searching-sorting/heapsort/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/index.html b/algorithms/searching-sorting/index.html index be4aa8402d0..f3811bbd88b 100644 --- a/algorithms/searching-sorting/index.html +++ b/algorithms/searching-sorting/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/insertion-sort/index.html b/algorithms/searching-sorting/insertion-sort/index.html index cbf0a1c13c6..3f48a96c0b4 100644 --- a/algorithms/searching-sorting/insertion-sort/index.html +++ b/algorithms/searching-sorting/insertion-sort/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/intro/index.html b/algorithms/searching-sorting/intro/index.html index 33f39c21b56..cfa208f6e59 100644 --- a/algorithms/searching-sorting/intro/index.html +++ b/algorithms/searching-sorting/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/key-indexed-counting/index.html b/algorithms/searching-sorting/key-indexed-counting/index.html index 5f72bceb69e..818d3402fbc 100644 --- a/algorithms/searching-sorting/key-indexed-counting/index.html +++ b/algorithms/searching-sorting/key-indexed-counting/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/knuth-shuffle/index.html b/algorithms/searching-sorting/knuth-shuffle/index.html index 503ad58952b..16017c811f6 100644 --- a/algorithms/searching-sorting/knuth-shuffle/index.html +++ b/algorithms/searching-sorting/knuth-shuffle/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/lsd-radix-sort/index.html b/algorithms/searching-sorting/lsd-radix-sort/index.html index c69c19bd9f6..85113b83ef4 100644 --- a/algorithms/searching-sorting/lsd-radix-sort/index.html +++ b/algorithms/searching-sorting/lsd-radix-sort/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/merge-sort/index.html b/algorithms/searching-sorting/merge-sort/index.html index 7b7cedd9f18..17025d0c6b1 100644 --- a/algorithms/searching-sorting/merge-sort/index.html +++ b/algorithms/searching-sorting/merge-sort/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/msd-radix-sort/index.html b/algorithms/searching-sorting/msd-radix-sort/index.html index 739b428bc0d..7601dc1fe8c 100644 --- a/algorithms/searching-sorting/msd-radix-sort/index.html +++ b/algorithms/searching-sorting/msd-radix-sort/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/others/index.html b/algorithms/searching-sorting/others/index.html index 9491c5a41cf..cf8639f39ff 100644 --- a/algorithms/searching-sorting/others/index.html +++ b/algorithms/searching-sorting/others/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/quick-sort/index.html b/algorithms/searching-sorting/quick-sort/index.html index 3b462d49708..1eb7b26745f 100644 --- a/algorithms/searching-sorting/quick-sort/index.html +++ b/algorithms/searching-sorting/quick-sort/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/selection-sort/index.html b/algorithms/searching-sorting/selection-sort/index.html index fad60103810..c2234c0d705 100644 --- a/algorithms/searching-sorting/selection-sort/index.html +++ b/algorithms/searching-sorting/selection-sort/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/shell-sort/index.html b/algorithms/searching-sorting/shell-sort/index.html index fed7df7285c..acaca5adf3b 100644 --- a/algorithms/searching-sorting/shell-sort/index.html +++ b/algorithms/searching-sorting/shell-sort/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/shuffle-sort/index.html b/algorithms/searching-sorting/shuffle-sort/index.html index a45056ba1af..dd913f189f8 100644 --- a/algorithms/searching-sorting/shuffle-sort/index.html +++ b/algorithms/searching-sorting/shuffle-sort/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/system-sort/index.html b/algorithms/searching-sorting/system-sort/index.html index 1b72bb1cf4a..853b6c9ad7b 100644 --- a/algorithms/searching-sorting/system-sort/index.html +++ b/algorithms/searching-sorting/system-sort/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/searching-sorting/timsort/index.html b/algorithms/searching-sorting/timsort/index.html index 8a74e02baa3..27928927ccf 100644 --- a/algorithms/searching-sorting/timsort/index.html +++ b/algorithms/searching-sorting/timsort/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/string-algorithms/boyer-moore/index.html b/algorithms/string-algorithms/boyer-moore/index.html index 1d94dc9e2cf..029899e7e14 100644 --- a/algorithms/string-algorithms/boyer-moore/index.html +++ b/algorithms/string-algorithms/boyer-moore/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/string-algorithms/brute-force/index.html b/algorithms/string-algorithms/brute-force/index.html index a8caee4c60f..dc14e956055 100644 --- a/algorithms/string-algorithms/brute-force/index.html +++ b/algorithms/string-algorithms/brute-force/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/string-algorithms/index.html b/algorithms/string-algorithms/index.html index 9a60e18eb45..15a99543f8e 100644 --- a/algorithms/string-algorithms/index.html +++ b/algorithms/string-algorithms/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/string-algorithms/intro/index.html b/algorithms/string-algorithms/intro/index.html index 84cacebddc6..cf828fcc339 100644 --- a/algorithms/string-algorithms/intro/index.html +++ b/algorithms/string-algorithms/intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/string-algorithms/knuth-morris-pratt/index.html b/algorithms/string-algorithms/knuth-morris-pratt/index.html index fd4f6fde0a6..6a78e14e60b 100644 --- a/algorithms/string-algorithms/knuth-morris-pratt/index.html +++ b/algorithms/string-algorithms/knuth-morris-pratt/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/string-algorithms/longest-common-prefix/index.html b/algorithms/string-algorithms/longest-common-prefix/index.html index 39cb1088913..ec22ef75ca3 100644 --- a/algorithms/string-algorithms/longest-common-prefix/index.html +++ b/algorithms/string-algorithms/longest-common-prefix/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/string-algorithms/rabin-karp/index.html b/algorithms/string-algorithms/rabin-karp/index.html index d641ad3be66..a495d6823c8 100644 --- a/algorithms/string-algorithms/rabin-karp/index.html +++ b/algorithms/string-algorithms/rabin-karp/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/algorithms/string-algorithms/substring-search-intro/index.html b/algorithms/string-algorithms/substring-search-intro/index.html index 76b90b1c7e6..e23dd01ed12 100644 --- a/algorithms/string-algorithms/substring-search-intro/index.html +++ b/algorithms/string-algorithms/substring-search-intro/index.html @@ -18,8 +18,8 @@ - - + + diff --git a/assets/js/0861dca6.0bb37f73.js b/assets/js/0861dca6.0bb37f73.js deleted file mode 100644 index f22c23a3218..00000000000 --- a/assets/js/0861dca6.0bb37f73.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[66966],{977462:(e,t,s)=>{s.r(t),s.d(t,{assets:()=>h,contentTitle:()=>r,default:()=>d,frontMatter:()=>n,metadata:()=>o,toc:()=>c});var a=s(785893),i=s(511151);const n={},r="Full Text Searches",o={id:"technologies/elasticsearch/full-text-searches",title:"Full Text Searches",description:"- Ignoring \"stop words\" such as \"a\", 'the', 'and'",source:"@site/docs/technologies/elasticsearch/full-text-searches.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/full-text-searches",permalink:"/technologies/elasticsearch/full-text-searches",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/full-text-searches.md",tags:[],version:"current",lastUpdatedAt:1701793554,formattedLastUpdatedAt:"Dec 5, 2023",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"ELK/EFK Stack /Elastic Stack / ElasticSearch",permalink:"/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch"},next:{title:"Getting Started",permalink:"/technologies/elasticsearch/getting-started"}},h={},c=[{value:"Entity vs. attribute",id:"entity-vs-attribute",level:2},{value:"Document-based search solutions",id:"document-based-search-solutions",level:2},{value:"Faceted Search",id:"faceted-search",level:2},{value:"Omni Search",id:"omni-search",level:2},{value:"Searchable entities",id:"searchable-entities",level:3},{value:"Searchable attributes",id:"searchable-attributes",level:3},{value:"Search behavior",id:"search-behavior",level:3},{value:"Substring location",id:"substring-location",level:3},{value:"Strict vs. fuzzy search",id:"strict-vs-fuzzy-search",level:2},{value:"Start of search",id:"start-of-search",level:2},{value:"Debounce",id:"debounce",level:2},{value:"capitalization",id:"capitalization",level:2},{value:"Scores and weights",id:"scores-and-weights",level:2},{value:"Zero Click Search",id:"zero-click-search",level:2},{value:"Transformers",id:"transformers",level:2},{value:"Tools",id:"tools",level:2}];function l(e){const t={a:"a",h1:"h1",h2:"h2",h3:"h3",img:"img",li:"li",ol:"ol",p:"p",ul:"ul",...(0,i.a)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(t.h1,{id:"full-text-searches",children:"Full Text Searches"}),"\n",(0,a.jsxs)(t.ul,{children:["\n",(0,a.jsx)(t.li,{children:"Ignoring \"stop words\" such as \"a\", 'the', 'and'"}),"\n",(0,a.jsx)(t.li,{children:"Stemming words, so that 'pony' and 'ponies' are considered similar"}),"\n",(0,a.jsx)(t.li,{children:"Weighting words absed on different criteria such as how frequently they appear in the text, or the importance of the fields, such as the title or keywords, that they appear in."}),"\n"]}),"\n",(0,a.jsx)(t.h2,{id:"entity-vs-attribute",children:"Entity vs. attribute"}),"\n",(0,a.jsx)(t.p,{children:"In search, an entity iswhat you search for, and an attribute iswhat you search it by. This can get confusing, as a search term can be both simultaneously. Sticking with the previous example, you can look for the Song entity by the attributes 'name' and 'artist'. But you can also look for the Artist entity by the attributes 'artist name' and 'songs'."}),"\n",(0,a.jsx)(t.p,{children:"Typically, an entity will correspond to a table in your database, and the attributes will correspond with the fields of that table."}),"\n",(0,a.jsx)(t.h2,{id:"document-based-search-solutions",children:"Document-based search solutions"}),"\n",(0,a.jsxs)(t.ol,{children:["\n",(0,a.jsx)(t.li,{children:"Elastic"}),"\n",(0,a.jsx)(t.li,{children:"Solr"}),"\n",(0,a.jsx)(t.li,{children:"vespa"}),"\n"]}),"\n",(0,a.jsx)(t.h2,{id:"faceted-search",children:"Faceted Search"}),"\n",(0,a.jsxs)(t.p,{children:["Faceted searchis a technique that involves augmenting traditional search techniques with a faceted navigation system, allowing users to narrow down search results by applying multiple filters based on ",(0,a.jsx)(t.a,{href:"https://en.wikipedia.org/wiki/Faceted_classification",children:"faceted classification"})," of the items.A faceted classification system classifies each information element along multiple explicit dimensions, called facets, enabling the classifications to be accessed and ordered in multiple ways rather than in a single, pre-determined, ",(0,a.jsx)(t.a,{href:"https://en.wikipedia.org/wiki/Taxonomy_(general)",children:"taxonomic"})," order."]}),"\n",(0,a.jsxs)(t.p,{children:["Facets correspond to properties of the information elements. They are often derived by analysis of the text of an item using ",(0,a.jsx)(t.a,{href:"https://en.wikipedia.org/wiki/Entity_extraction",children:"entity extraction"})," techniques or from pre-existing fields in a database such as author, descriptor, language, and format. Thus, existing web-pages, product descriptions or online collections of articles can be augmented with navigational facets."]}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.img,{alt:"image",src:s(690238).Z+"",width:"830",height:"934"})}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.a,{href:"https://en.wikipedia.org/wiki/Faceted_search",children:"https://en.wikipedia.org/wiki/Faceted_search"})}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.a,{href:"https://www.enterprisedb.com/postgres-tutorials/how-implement-faceted-search-django-and-postgresql",children:"https://www.enterprisedb.com/postgres-tutorials/how-implement-faceted-search-django-and-postgresql"})}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.a,{href:"https://django-haystack.readthedocs.io/en/v2.4.1/faceting.html",children:"https://django-haystack.readthedocs.io/en/v2.4.1/faceting.html"})}),"\n",(0,a.jsx)(t.h2,{id:"omni-search",children:"Omni Search"}),"\n",(0,a.jsx)(t.h3,{id:"searchable-entities",children:"Searchable entities"}),"\n",(0,a.jsx)(t.p,{children:"The first thing you need in order to build your omni-search, is to map the entities users might be searching for. Remember: it's not what they search it by - just what they'd like to find."}),"\n",(0,a.jsx)(t.p,{children:"You might not be sure what's considered 'an entity'. For example, on Google Drive, you can search for PDFs, Sheets, or Docs. Are these different entities? While there's a technical discussion I won't get into, as a rule of thumb, if all candidates share the same attributes (e.g. doc name, creator, date...) - then it can be considered the same entity with a 'type' attribute."}),"\n",(0,a.jsx)(t.h3,{id:"searchable-attributes",children:"Searchable attributes"}),"\n",(0,a.jsx)(t.p,{children:"Once you've selected the entities to be searched, let's select the attributes that the users can search by. Don't be tempted to use all available attributes - this will slow performance and produce bad results. Instead, only use the attributes your users are likely to use. If you're not sure, guess, and then go back after the release and see what your users have tried searching by."}),"\n",(0,a.jsx)(t.p,{children:"Example: on Spotify, each artist has an 'about' attribute, which you can see after you've clicked on the artist (all the way on the bottom). However, if you tried copy-pasting that 'about' text to the omni-search, you won't find the artist, because Spotify doesn't search artists by the 'about' attribute, which makes sense: it's unlikely anyone will try searching by it, in any reasonable use-case."}),"\n",(0,a.jsx)(t.h3,{id:"search-behavior",children:"Search behavior"}),"\n",(0,a.jsx)(t.p,{children:"There are a few other parameters you need to define in your search:"}),"\n",(0,a.jsx)(t.h3,{id:"substring-location",children:"Substring location"}),"\n",(0,a.jsx)(t.p,{children:"Let's take The Chainsmokers. Which of these search terms do you think should find them: 'the chain', 'chain', or 'smokers'?"}),"\n",(0,a.jsx)(t.p,{children:"If you guessed all three, then you're right. But that's not always the case. Let's try to look for the Medium publicationNoteworthy.You'll find it if you search for 'notew', but not if you look for 'worthy'."}),"\n",(0,a.jsx)(t.p,{children:"This has a lot to do with how the data is being indexed, and there are three main options to choose from:"}),"\n",(0,a.jsxs)(t.ol,{children:["\n",(0,a.jsx)(t.li,{children:"start of string (e.g. 'the chain')"}),"\n",(0,a.jsx)(t.li,{children:"start of each word (e.g. 'chains')"}),"\n",(0,a.jsx)(t.li,{children:"all substrings (e.g. 'smokers', or 'ainsmoke')"}),"\n"]}),"\n",(0,a.jsx)(t.p,{children:"Again, more is not always better. Pick the one most suited to what your users are likely to search."}),"\n",(0,a.jsx)(t.h2,{id:"strict-vs-fuzzy-search",children:"Strict vs. fuzzy search"}),"\n",(0,a.jsx)(t.p,{children:"Users make mistakes. They might type in \"the chansmokers\", leaving out the 'i', either due to a typo or miss-spelling. A fuzzy search will catch that. Too fuzzy of a search will also catch a lot of garbage results."}),"\n",(0,a.jsx)(t.h2,{id:"start-of-search",children:"Start of search"}),"\n",(0,a.jsx)(t.p,{children:"Most searches don't show results until you type in at least 2--3 letters."}),"\n",(0,a.jsx)(t.h2,{id:"debounce",children:"Debounce"}),"\n",(0,a.jsx)(t.p,{children:"We type quickly. You don't want each keystroke to start a new search, because that would seem jumpy to the user. You commonly wait 0.1s or so after the keystroke (don't hold me to that number), to make sure the user stopped typing."}),"\n",(0,a.jsx)(t.h2,{id:"capitalization",children:"capitalization"}),"\n",(0,a.jsx)(t.p,{children:"Not much to say about this. 99% of searches should be caseinsensitive."}),"\n",(0,a.jsx)(t.h2,{id:"scores-and-weights",children:"Scores and weights"}),"\n",(0,a.jsx)(t.p,{children:"This part is a bit complicated, and can fill an entire post on its own, but I'll try to explain the gist of it:"}),"\n",(0,a.jsx)(t.p,{children:"In very simple searches, the search term is either found, or not found. 1 or 0. With more modern search tools (Elasticsearch being the most popular), each result gets a score, based on the location of the substring, accuracy, and a few other parameters."}),"\n",(0,a.jsx)(t.p,{children:"To add to that, it's possible to put weights on those scores. Say you search for a song by both track name and artist. The term 'young' can find Young Folks by Peter, Bjorn and John, and it can also find Heart of Gold by Neil Young. However, when looking for songs, it makes sense to give more weight to the name of the song than to the artist (and of course, vice-versa when you're looking for artists)."}),"\n",(0,a.jsx)(t.p,{children:"Showing results"}),"\n",(0,a.jsx)(t.p,{children:"Here's when the fun starts! Results can be shown in 3 basic formats:"}),"\n",(0,a.jsxs)(t.ul,{children:["\n",(0,a.jsx)(t.li,{children:"quick preview - a popup showing around 10 top results"}),"\n",(0,a.jsx)(t.li,{children:"result summary - a full page showing the main results for each entity"}),"\n",(0,a.jsx)(t.li,{children:"all results - all of the results of a specific entity"}),"\n"]}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.a,{href:"https://uxdesign.cc/designing-an-omni-search-29c6cb6ec3f7",children:"https://uxdesign.cc/designing-an-omni-search-29c6cb6ec3f7"})}),"\n",(0,a.jsx)(t.h2,{id:"zero-click-search",children:"Zero Click Search"}),"\n",(0,a.jsxs)(t.ul,{children:["\n",(0,a.jsx)(t.li,{children:"Direct answers in the search results, and users doesn't have to click further links"}),"\n"]}),"\n",(0,a.jsx)(t.h2,{id:"transformers",children:"Transformers"}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.img,{alt:"image",src:s(11827).Z+"",width:"1100",height:"442"})}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.img,{alt:"image",src:s(475252).Z+"",width:"1100",height:"606"})}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.img,{alt:"image",src:s(95220).Z+"",width:"1099",height:"641"})}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.a,{href:"https://github.com/deepset-ai/haystack",children:"https://github.com/deepset-ai/haystack"})}),"\n",(0,a.jsx)(t.h2,{id:"tools",children:"Tools"}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.a,{href:"https://www.algolia.com",children:"https://www.algolia.com"})})]})}function d(e={}){const{wrapper:t}={...(0,i.a)(),...e.components};return t?(0,a.jsx)(t,{...e,children:(0,a.jsx)(l,{...e})}):l(e)}},690238:(e,t,s)=>{s.d(t,{Z:()=>a});const a=s.p+"assets/images/Technologies-Elasticsearch-Full-Text-Searches-image1-ec62ac189f2caf965f4b96183fd77888.jpg"},11827:(e,t,s)=>{s.d(t,{Z:()=>a});const a=s.p+"assets/images/Technologies-Elasticsearch-Full-Text-Searches-image2-d8638bcd1b62e0f92bc9eb8a6716edfc.jpg"},475252:(e,t,s)=>{s.d(t,{Z:()=>a});const a=s.p+"assets/images/Technologies-Elasticsearch-Full-Text-Searches-image3-6a61f73f1f5b0e701b9eeb2f2cb60a33.jpg"},95220:(e,t,s)=>{s.d(t,{Z:()=>a});const a=s.p+"assets/images/Technologies-Elasticsearch-Full-Text-Searches-image4-71e9428ce91116414ed4ce121d6c23ea.jpg"},511151:(e,t,s)=>{s.d(t,{Z:()=>o,a:()=>r});var a=s(667294);const i={},n=a.createContext(i);function r(e){const t=a.useContext(n);return a.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function o(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:r(e.components),a.createElement(n.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/0861dca6.c826c269.js b/assets/js/0861dca6.c826c269.js new file mode 100644 index 00000000000..db4a73d6db2 --- /dev/null +++ b/assets/js/0861dca6.c826c269.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[66966],{977462:(e,t,s)=>{s.r(t),s.d(t,{assets:()=>h,contentTitle:()=>r,default:()=>d,frontMatter:()=>n,metadata:()=>o,toc:()=>c});var a=s(785893),i=s(511151);const n={},r="Full Text Searches",o={id:"technologies/elasticsearch/full-text-searches",title:"Full Text Searches",description:"- Ignoring \"stop words\" such as \"a\", 'the', 'and'",source:"@site/docs/technologies/elasticsearch/full-text-searches.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/full-text-searches",permalink:"/technologies/elasticsearch/full-text-searches",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/full-text-searches.md",tags:[],version:"current",lastUpdatedAt:1732901510,formattedLastUpdatedAt:"Nov 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"ELK/EFK Stack /Elastic Stack / ElasticSearch",permalink:"/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch"},next:{title:"Getting Started",permalink:"/technologies/elasticsearch/getting-started"}},h={},c=[{value:"Entity vs. attribute",id:"entity-vs-attribute",level:2},{value:"Document-based search solutions",id:"document-based-search-solutions",level:2},{value:"Faceted Search",id:"faceted-search",level:2},{value:"Omni Search",id:"omni-search",level:2},{value:"Searchable entities",id:"searchable-entities",level:3},{value:"Searchable attributes",id:"searchable-attributes",level:3},{value:"Search behavior",id:"search-behavior",level:3},{value:"Substring location",id:"substring-location",level:3},{value:"Strict vs. fuzzy search",id:"strict-vs-fuzzy-search",level:2},{value:"Start of search",id:"start-of-search",level:2},{value:"Debounce",id:"debounce",level:2},{value:"capitalization",id:"capitalization",level:2},{value:"Scores and weights",id:"scores-and-weights",level:2},{value:"Zero Click Search",id:"zero-click-search",level:2},{value:"Transformers",id:"transformers",level:2},{value:"Tools",id:"tools",level:2}];function l(e){const t={a:"a",h1:"h1",h2:"h2",h3:"h3",img:"img",li:"li",ol:"ol",p:"p",ul:"ul",...(0,i.a)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(t.h1,{id:"full-text-searches",children:"Full Text Searches"}),"\n",(0,a.jsxs)(t.ul,{children:["\n",(0,a.jsx)(t.li,{children:"Ignoring \"stop words\" such as \"a\", 'the', 'and'"}),"\n",(0,a.jsx)(t.li,{children:"Stemming words, so that 'pony' and 'ponies' are considered similar"}),"\n",(0,a.jsx)(t.li,{children:"Weighting words absed on different criteria such as how frequently they appear in the text, or the importance of the fields, such as the title or keywords, that they appear in."}),"\n"]}),"\n",(0,a.jsx)(t.h2,{id:"entity-vs-attribute",children:"Entity vs. attribute"}),"\n",(0,a.jsx)(t.p,{children:"In search, an entity iswhat you search for, and an attribute iswhat you search it by. This can get confusing, as a search term can be both simultaneously. Sticking with the previous example, you can look for the Song entity by the attributes 'name' and 'artist'. But you can also look for the Artist entity by the attributes 'artist name' and 'songs'."}),"\n",(0,a.jsx)(t.p,{children:"Typically, an entity will correspond to a table in your database, and the attributes will correspond with the fields of that table."}),"\n",(0,a.jsx)(t.h2,{id:"document-based-search-solutions",children:"Document-based search solutions"}),"\n",(0,a.jsxs)(t.ol,{children:["\n",(0,a.jsx)(t.li,{children:"Elastic"}),"\n",(0,a.jsx)(t.li,{children:"Solr"}),"\n",(0,a.jsx)(t.li,{children:"vespa"}),"\n"]}),"\n",(0,a.jsx)(t.h2,{id:"faceted-search",children:"Faceted Search"}),"\n",(0,a.jsxs)(t.p,{children:["Faceted search is a technique that involves augmenting traditional search techniques with a faceted navigation system, allowing users to narrow down search results by applying multiple filters based on ",(0,a.jsx)(t.a,{href:"https://en.wikipedia.org/wiki/Faceted_classification",children:"faceted classification"})," of the items.A faceted classification system classifies each information element along multiple explicit dimensions, called facets, enabling the classifications to be accessed and ordered in multiple ways rather than in a single, pre-determined, ",(0,a.jsx)(t.a,{href:"https://en.wikipedia.org/wiki/Taxonomy_(general)",children:"taxonomic"})," order."]}),"\n",(0,a.jsxs)(t.p,{children:["Facets correspond to properties of the information elements. They are often derived by analysis of the text of an item using ",(0,a.jsx)(t.a,{href:"https://en.wikipedia.org/wiki/Entity_extraction",children:"entity extraction"})," techniques or from pre-existing fields in a database such as author, descriptor, language, and format. Thus, existing web-pages, product descriptions or online collections of articles can be augmented with navigational facets."]}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.img,{alt:"image",src:s(690238).Z+"",width:"830",height:"934"})}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.a,{href:"https://en.wikipedia.org/wiki/Faceted_search",children:"https://en.wikipedia.org/wiki/Faceted_search"})}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.a,{href:"https://www.enterprisedb.com/postgres-tutorials/how-implement-faceted-search-django-and-postgresql",children:"https://www.enterprisedb.com/postgres-tutorials/how-implement-faceted-search-django-and-postgresql"})}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.a,{href:"https://django-haystack.readthedocs.io/en/v2.4.1/faceting.html",children:"https://django-haystack.readthedocs.io/en/v2.4.1/faceting.html"})}),"\n",(0,a.jsx)(t.h2,{id:"omni-search",children:"Omni Search"}),"\n",(0,a.jsx)(t.h3,{id:"searchable-entities",children:"Searchable entities"}),"\n",(0,a.jsx)(t.p,{children:"The first thing you need in order to build your omni-search, is to map the entities users might be searching for. Remember: it's not what they search it by - just what they'd like to find."}),"\n",(0,a.jsx)(t.p,{children:"You might not be sure what's considered 'an entity'. For example, on Google Drive, you can search for PDFs, Sheets, or Docs. Are these different entities? While there's a technical discussion I won't get into, as a rule of thumb, if all candidates share the same attributes (e.g. doc name, creator, date...) - then it can be considered the same entity with a 'type' attribute."}),"\n",(0,a.jsx)(t.h3,{id:"searchable-attributes",children:"Searchable attributes"}),"\n",(0,a.jsx)(t.p,{children:"Once you've selected the entities to be searched, let's select the attributes that the users can search by. Don't be tempted to use all available attributes - this will slow performance and produce bad results. Instead, only use the attributes your users are likely to use. If you're not sure, guess, and then go back after the release and see what your users have tried searching by."}),"\n",(0,a.jsx)(t.p,{children:"Example: on Spotify, each artist has an 'about' attribute, which you can see after you've clicked on the artist (all the way on the bottom). However, if you tried copy-pasting that 'about' text to the omni-search, you won't find the artist, because Spotify doesn't search artists by the 'about' attribute, which makes sense: it's unlikely anyone will try searching by it, in any reasonable use-case."}),"\n",(0,a.jsx)(t.h3,{id:"search-behavior",children:"Search behavior"}),"\n",(0,a.jsx)(t.p,{children:"There are a few other parameters you need to define in your search:"}),"\n",(0,a.jsx)(t.h3,{id:"substring-location",children:"Substring location"}),"\n",(0,a.jsx)(t.p,{children:"Let's take The Chainsmokers. Which of these search terms do you think should find them: 'the chain', 'chain', or 'smokers'?"}),"\n",(0,a.jsx)(t.p,{children:"If you guessed all three, then you're right. But that's not always the case. Let's try to look for the Medium publicationNoteworthy.You'll find it if you search for 'notew', but not if you look for 'worthy'."}),"\n",(0,a.jsx)(t.p,{children:"This has a lot to do with how the data is being indexed, and there are three main options to choose from:"}),"\n",(0,a.jsxs)(t.ol,{children:["\n",(0,a.jsx)(t.li,{children:"start of string (e.g. 'the chain')"}),"\n",(0,a.jsx)(t.li,{children:"start of each word (e.g. 'chains')"}),"\n",(0,a.jsx)(t.li,{children:"all substrings (e.g. 'smokers', or 'ainsmoke')"}),"\n"]}),"\n",(0,a.jsx)(t.p,{children:"Again, more is not always better. Pick the one most suited to what your users are likely to search."}),"\n",(0,a.jsx)(t.h2,{id:"strict-vs-fuzzy-search",children:"Strict vs. fuzzy search"}),"\n",(0,a.jsx)(t.p,{children:"Users make mistakes. They might type in \"the chansmokers\", leaving out the 'i', either due to a typo or miss-spelling. A fuzzy search will catch that. Too fuzzy of a search will also catch a lot of garbage results."}),"\n",(0,a.jsx)(t.h2,{id:"start-of-search",children:"Start of search"}),"\n",(0,a.jsx)(t.p,{children:"Most searches don't show results until you type in at least 2--3 letters."}),"\n",(0,a.jsx)(t.h2,{id:"debounce",children:"Debounce"}),"\n",(0,a.jsx)(t.p,{children:"We type quickly. You don't want each keystroke to start a new search, because that would seem jumpy to the user. You commonly wait 0.1s or so after the keystroke (don't hold me to that number), to make sure the user stopped typing."}),"\n",(0,a.jsx)(t.h2,{id:"capitalization",children:"capitalization"}),"\n",(0,a.jsx)(t.p,{children:"Not much to say about this. 99% of searches should be caseinsensitive."}),"\n",(0,a.jsx)(t.h2,{id:"scores-and-weights",children:"Scores and weights"}),"\n",(0,a.jsx)(t.p,{children:"This part is a bit complicated, and can fill an entire post on its own, but I'll try to explain the gist of it:"}),"\n",(0,a.jsx)(t.p,{children:"In very simple searches, the search term is either found, or not found. 1 or 0. With more modern search tools (Elasticsearch being the most popular), each result gets a score, based on the location of the substring, accuracy, and a few other parameters."}),"\n",(0,a.jsx)(t.p,{children:"To add to that, it's possible to put weights on those scores. Say you search for a song by both track name and artist. The term 'young' can find Young Folks by Peter, Bjorn and John, and it can also find Heart of Gold by Neil Young. However, when looking for songs, it makes sense to give more weight to the name of the song than to the artist (and of course, vice-versa when you're looking for artists)."}),"\n",(0,a.jsx)(t.p,{children:"Showing results"}),"\n",(0,a.jsx)(t.p,{children:"Here's when the fun starts! Results can be shown in 3 basic formats:"}),"\n",(0,a.jsxs)(t.ul,{children:["\n",(0,a.jsx)(t.li,{children:"quick preview - a popup showing around 10 top results"}),"\n",(0,a.jsx)(t.li,{children:"result summary - a full page showing the main results for each entity"}),"\n",(0,a.jsx)(t.li,{children:"all results - all of the results of a specific entity"}),"\n"]}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.a,{href:"https://uxdesign.cc/designing-an-omni-search-29c6cb6ec3f7",children:"https://uxdesign.cc/designing-an-omni-search-29c6cb6ec3f7"})}),"\n",(0,a.jsx)(t.h2,{id:"zero-click-search",children:"Zero Click Search"}),"\n",(0,a.jsxs)(t.ul,{children:["\n",(0,a.jsx)(t.li,{children:"Direct answers in the search results, and users doesn't have to click further links"}),"\n"]}),"\n",(0,a.jsx)(t.h2,{id:"transformers",children:"Transformers"}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.img,{alt:"image",src:s(11827).Z+"",width:"1100",height:"442"})}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.img,{alt:"image",src:s(475252).Z+"",width:"1100",height:"606"})}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.img,{alt:"image",src:s(95220).Z+"",width:"1099",height:"641"})}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.a,{href:"https://github.com/deepset-ai/haystack",children:"https://github.com/deepset-ai/haystack"})}),"\n",(0,a.jsx)(t.h2,{id:"tools",children:"Tools"}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.a,{href:"https://www.algolia.com",children:"https://www.algolia.com"})})]})}function d(e={}){const{wrapper:t}={...(0,i.a)(),...e.components};return t?(0,a.jsx)(t,{...e,children:(0,a.jsx)(l,{...e})}):l(e)}},690238:(e,t,s)=>{s.d(t,{Z:()=>a});const a=s.p+"assets/images/Technologies-Elasticsearch-Full-Text-Searches-image1-ec62ac189f2caf965f4b96183fd77888.jpg"},11827:(e,t,s)=>{s.d(t,{Z:()=>a});const a=s.p+"assets/images/Technologies-Elasticsearch-Full-Text-Searches-image2-d8638bcd1b62e0f92bc9eb8a6716edfc.jpg"},475252:(e,t,s)=>{s.d(t,{Z:()=>a});const a=s.p+"assets/images/Technologies-Elasticsearch-Full-Text-Searches-image3-6a61f73f1f5b0e701b9eeb2f2cb60a33.jpg"},95220:(e,t,s)=>{s.d(t,{Z:()=>a});const a=s.p+"assets/images/Technologies-Elasticsearch-Full-Text-Searches-image4-71e9428ce91116414ed4ce121d6c23ea.jpg"},511151:(e,t,s)=>{s.d(t,{Z:()=>o,a:()=>r});var a=s(667294);const i={},n=a.createContext(i);function r(e){const t=a.useContext(n);return a.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function o(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:r(e.components),a.createElement(n.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/1d89c0ed.cb54bf75.js b/assets/js/1d89c0ed.cb54bf75.js deleted file mode 100644 index 08d194e9d0c..00000000000 --- a/assets/js/1d89c0ed.cb54bf75.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[47502],{747443:(e,r,t)=>{t.r(r),t.d(r,{assets:()=>d,contentTitle:()=>o,default:()=>u,frontMatter:()=>a,metadata:()=>i,toc:()=>c});var s=t(785893),n=t(511151);const a={},o="Stored Procedure",i={id:"languages/sql/stored-procedure",title:"Stored Procedure",description:"A stored procedure (also termed proc, storp, sproc, StoPro, StoredProc, StoreProc, sp, or SP) is a subroutine available to applications that access a relational database management system(RDBMS). Such procedures are stored in the database data dictionary.",source:"@site/docs/languages/sql/stored-procedure.md",sourceDirName:"languages/sql",slug:"/languages/sql/stored-procedure",permalink:"/languages/sql/stored-procedure",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/languages/sql/stored-procedure.md",tags:[],version:"current",lastUpdatedAt:1732812944,formattedLastUpdatedAt:"Nov 28, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"SQL Views",permalink:"/languages/sql/sql-views"},next:{title:"Types",permalink:"/languages/sql/types"}},d={},c=[{value:"Advantages of using stored procedures",id:"advantages-of-using-stored-procedures",level:2},{value:"Types of stored procedures",id:"types-of-stored-procedures",level:2},{value:"Differences",id:"differences",level:2},{value:"Stored Procedures",id:"stored-procedures",level:3},{value:"Functions",id:"functions",level:3},{value:"Access",id:"access",level:2},{value:"Queries",id:"queries",level:2},{value:"Creating a Stored Procedure",id:"creating-a-stored-procedure",level:3},{value:"Calling a Stored Procedure",id:"calling-a-stored-procedure",level:3}];function l(e){const r={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",li:"li",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,n.a)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.h1,{id:"stored-procedure",children:"Stored Procedure"}),"\n",(0,s.jsxs)(r.p,{children:["A ",(0,s.jsx)(r.strong,{children:"stored procedure"})," (also termed ",(0,s.jsx)(r.strong,{children:"proc, storp, sproc, StoPro, StoredProc, StoreProc, sp, or SP"}),") is a ",(0,s.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/Subroutine",children:"subroutine"})," available to applications that access a ",(0,s.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/Relational_database_management_system",children:"relational database management system"}),"(RDBMS). Such procedures are stored in the database ",(0,s.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/Data_dictionary",children:"data dictionary"}),"."]}),"\n",(0,s.jsxs)(r.p,{children:["Uses for stored procedures include ",(0,s.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/Data_validation",children:"data-validation"}),"(integrated into the database) or ",(0,s.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/Access_control",children:"access-control"})," mechanisms. Furthermore, stored procedures can consolidate and centralize logic that was originally implemented in applications. To save time and memory, extensive or complex processing that requires execution of several ",(0,s.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/SQL",children:"SQL"})," statements can be saved into stored procedures, and all applications call the procedures. One can use nested stored procedures by executing one stored procedure from within another."]}),"\n",(0,s.jsxs)(r.p,{children:["Stored procedures may return ",(0,s.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/Result_set",children:"result sets"}),", i.e., the results of aSELECTstatement. Such result sets can be processed using ",(0,s.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/Cursor_(databases)",children:"cursors"}),", by other stored procedures, by associating a result-set locator, or by applications. Stored procedures may also contain declared variables for processing data and cursors that allow it to loop through multiple rows in a table. Stored-procedure flow-control statements typically includeIF,WHILE,LOOP,REPEAT, andCASEstatements, and more. Stored procedures can receive variables, return results or modify variables and return them, depending on how and where the variable is declared."]}),"\n",(0,s.jsx)(r.pre,{children:(0,s.jsx)(r.code,{className:"language-sql",children:"CREATE PROCEDURE procedure_name\nAS\nsql_statement\nGO;\n\nEXEC procedure_name;\n"})}),"\n",(0,s.jsx)(r.h2,{id:"advantages-of-using-stored-procedures",children:"Advantages of using stored procedures"}),"\n",(0,s.jsxs)(r.ul,{children:["\n",(0,s.jsxs)(r.li,{children:[(0,s.jsx)(r.strong,{children:"A stored procedure allows modular programming -"})," You can create the procedure once, store it in the database, and call it any number of times in your program."]}),"\n",(0,s.jsxs)(r.li,{children:[(0,s.jsx)(r.strong,{children:"A stored procedure allows faster execution -"})," If the operation requires a large amount of SQL code that is performed repetitively, stored procedures can be faster. They are parsed and optimized when they are first executed, and a compiled version of the stored procedure remains in a memory cache for later use. This means the stored procedure does not need to be reparsed and reoptimized with each use, resulting in much faster execution times."]}),"\n",(0,s.jsxs)(r.li,{children:[(0,s.jsx)(r.strong,{children:"A stored procedure can reduce network traffic -"})," An operation requiring hundreds of lines of Transact-SQL code can be performed through a single statement that executes the code in a procedure, rather than by sending hundreds of lines of code over the network."]}),"\n",(0,s.jsxs)(r.li,{children:[(0,s.jsx)(r.strong,{children:"Stored procedures provide better security to your data -"})," Users can be granted permission to execute a stored procedure even if they do not have permission to execute the procedure's statements directly."]}),"\n"]}),"\n",(0,s.jsx)(r.h2,{id:"types-of-stored-procedures",children:"Types of stored procedures"}),"\n",(0,s.jsxs)(r.ul,{children:["\n",(0,s.jsxs)(r.li,{children:[(0,s.jsx)(r.strong,{children:"System-stored procedures"})," are stored in the master database and these start with asp_prefix. These procedures can be used to perform a variety of tasks to support SQL Server functions for external application calls in the system tables","\n",(0,s.jsxs)(r.ul,{children:["\n",(0,s.jsx)(r.li,{children:"Example: sp_helptext [StoredProcedure_Name]"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(r.li,{children:[(0,s.jsx)(r.strong,{children:"User-defined stored procedures"})," are usually stored in a user database and are typically designed to complete the tasks in the user database. While coding these procedures don't use the ",(0,s.jsx)(r.code,{children:"sp_prefix"})," because if we use the ",(0,s.jsx)(r.code,{children:"sp_prefix"})," first, it will check the master database, and then it comes to user defined database."]}),"\n",(0,s.jsxs)(r.li,{children:[(0,s.jsx)(r.strong,{children:"Extended stored procedures"})," are the procedures that call functions from DLL files. Nowadays, extended stored procedures are deprecated for the reason it would be better to avoid using extended stored procedures."]}),"\n"]}),"\n",(0,s.jsx)(r.p,{children:(0,s.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/Stored_procedure",children:"https://en.wikipedia.org/wiki/Stored_procedure"})}),"\n",(0,s.jsx)(r.h2,{id:"differences",children:"Differences"}),"\n",(0,s.jsxs)(r.ul,{children:["\n",(0,s.jsxs)(r.li,{children:["A ",(0,s.jsx)(r.strong,{children:"stored routine"})," is either a procedure or a function."]}),"\n",(0,s.jsxs)(r.li,{children:["A ",(0,s.jsx)(r.strong,{children:"procedure"})," is invoked using a CALL statement and can only pass back values using output variables."]}),"\n",(0,s.jsxs)(r.li,{children:["A ",(0,s.jsx)(r.strong,{children:"function"})," can be called from inside a statement just like any other function and can return a scalar value."]}),"\n"]}),"\n",(0,s.jsx)(r.h3,{id:"stored-procedures",children:"Stored Procedures"}),"\n",(0,s.jsxs)(r.ul,{children:["\n",(0,s.jsx)(r.li,{children:"Procedure can return zero or n values"}),"\n",(0,s.jsx)(r.li,{children:"Procedures can have input/output parameters for it"}),"\n",(0,s.jsx)(r.li,{children:"Procedure allows select as well as DML statement in it"}),"\n",(0,s.jsx)(r.li,{children:"A stored procedure may have arguments that areIN,OUT, orINOUT."}),"\n",(0,s.jsx)(r.li,{children:"A procedure can't be called from DML statements."}),"\n",(0,s.jsx)(r.li,{children:"Procedures are parsed and compiled."}),"\n",(0,s.jsx)(r.li,{children:"Procedures are mainly used to process the tasks."}),"\n",(0,s.jsx)(r.li,{children:"Procedure doesn't return value.procedure can return more than one values using OUT parameter"}),"\n",(0,s.jsx)(r.li,{children:"They are stored in compiled format in the database where as Functions are compiled and executed run time."}),"\n",(0,s.jsx)(r.li,{children:"A procedure is used to execute business logic."}),"\n",(0,s.jsx)(r.li,{children:"Stored procedure returns always integer value by default zero."}),"\n",(0,s.jsx)(r.li,{children:"Stored procedure has the security and reduces the network traffic."}),"\n",(0,s.jsx)(r.li,{children:"It create variable table and but can't return variable table."}),"\n",(0,s.jsx)(r.li,{children:"Print command used."}),"\n",(0,s.jsx)(r.li,{children:"It execute Dynamic SQL."}),"\n"]}),"\n",(0,s.jsx)(r.h3,{id:"functions",children:"Functions"}),"\n",(0,s.jsxs)(r.ul,{children:["\n",(0,s.jsx)(r.li,{children:"function can return one value which is mandatory"}),"\n",(0,s.jsx)(r.li,{children:"functions can have only input parameters"}),"\n",(0,s.jsx)(r.li,{children:"function allows only select statement in it"}),"\n",(0,s.jsx)(r.li,{children:"Functions may only haveINarguments."}),"\n",(0,s.jsx)(r.li,{children:"DML operations performs in functions."}),"\n",(0,s.jsx)(r.li,{children:"functions always return a single value to the caller."}),"\n",(0,s.jsx)(r.li,{children:"Functions are mainly used to compute values."}),"\n",(0,s.jsx)(r.li,{children:"A function is used to compute a value."}),"\n",(0,s.jsx)(r.li,{children:"It returns type could be scalar or table or table values."}),"\n",(0,s.jsx)(r.li,{children:"It create variable table and can return variable table."}),"\n",(0,s.jsx)(r.li,{children:"Print command cant't use."}),"\n",(0,s.jsx)(r.li,{children:"It can't execute dynamic sql."}),"\n"]}),"\n",(0,s.jsx)(r.p,{children:(0,s.jsx)(r.a,{href:"https://www.mysqltutorial.org/mysql-error-handling-in-stored-procedures",children:"https://www.mysqltutorial.org/mysql-error-handling-in-stored-procedures"})}),"\n",(0,s.jsx)(r.p,{children:(0,s.jsx)(r.a,{href:"https://stackoverflow.com/questions/2680745/whats-the-differences-between-stored-procedures-functions-and-routines",children:"mysql - What's the differences between stored procedures, functions and routines? - Stack Overflow"})}),"\n",(0,s.jsx)(r.h2,{id:"access",children:"Access"}),"\n",(0,s.jsx)(r.p,{children:'ForMySQL 8, connect your database viaWorkbench, go toAdministration -> User and Privileges, and select the user account you want to modify, then switch to "Administrative Roles", tick "SELECT" on right panel (Global Privileges), Click \'Apply\' and done.'}),"\n",(0,s.jsx)(r.h2,{id:"queries",children:"Queries"}),"\n",(0,s.jsx)(r.h3,{id:"creating-a-stored-procedure",children:"Creating a Stored Procedure"}),"\n",(0,s.jsx)(r.pre,{children:(0,s.jsx)(r.code,{className:"language-sql",children:"DELIMITER $$\n\nCREATE PROCEDURE DeleteUsersLogInBatches()\nBEGIN\n DECLARE batch_size INT DEFAULT 100000; -- Number of rows to delete in each batch\n DECLARE start_id INT DEFAULT 0; -- Starting ID for the first batch\n DECLARE end_id INT DEFAULT 14900000; -- Target maximum ID for deletion\n\n -- Loop to delete data in batches\n WHILE start_id < end_id DO\n -- Delete rows in the current batch\n DELETE FROM users_log\n WHERE id BETWEEN start_id AND start_id + batch_size - 1;\n\n -- Update the start_id for the next batch\n SET start_id = start_id + batch_size;\n END WHILE;\nEND$$\n\nDELIMITER ;\n"})}),"\n",(0,s.jsx)(r.h3,{id:"calling-a-stored-procedure",children:"Calling a Stored Procedure"}),"\n",(0,s.jsx)(r.pre,{children:(0,s.jsx)(r.code,{className:"language-sql",children:"call DeleteUsersLogInBatches();\n\n-- drop stored procedure\ndrop procedure DeleteUsersLogInBatches;\n"})})]})}function u(e={}){const{wrapper:r}={...(0,n.a)(),...e.components};return r?(0,s.jsx)(r,{...e,children:(0,s.jsx)(l,{...e})}):l(e)}},511151:(e,r,t)=>{t.d(r,{Z:()=>i,a:()=>o});var s=t(667294);const n={},a=s.createContext(n);function o(e){const r=s.useContext(a);return s.useMemo((function(){return"function"==typeof e?e(r):{...r,...e}}),[r,e])}function i(e){let r;return r=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:o(e.components),s.createElement(a.Provider,{value:r},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/1d89c0ed.e6749d5b.js b/assets/js/1d89c0ed.e6749d5b.js new file mode 100644 index 00000000000..967a7501935 --- /dev/null +++ b/assets/js/1d89c0ed.e6749d5b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[47502],{747443:(e,r,t)=>{t.r(r),t.d(r,{assets:()=>i,contentTitle:()=>d,default:()=>u,frontMatter:()=>o,metadata:()=>a,toc:()=>l});var n=t(785893),s=t(511151);const o={},d="Stored Procedure",a={id:"languages/sql/stored-procedure",title:"Stored Procedure",description:"A stored procedure (also termed proc, storp, sproc, StoPro, StoredProc, StoreProc, sp, or SP) is a subroutine available to applications that access a relational database management system(RDBMS). Such procedures are stored in the database data dictionary.",source:"@site/docs/languages/sql/stored-procedure.md",sourceDirName:"languages/sql",slug:"/languages/sql/stored-procedure",permalink:"/languages/sql/stored-procedure",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/languages/sql/stored-procedure.md",tags:[],version:"current",lastUpdatedAt:1732901510,formattedLastUpdatedAt:"Nov 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"SQL Views",permalink:"/languages/sql/sql-views"},next:{title:"Types",permalink:"/languages/sql/types"}},i={},l=[{value:"Advantages of using stored procedures",id:"advantages-of-using-stored-procedures",level:2},{value:"Types of stored procedures",id:"types-of-stored-procedures",level:2},{value:"Differences",id:"differences",level:2},{value:"Stored Procedures",id:"stored-procedures",level:3},{value:"Functions",id:"functions",level:3},{value:"Access",id:"access",level:2},{value:"Queries",id:"queries",level:2},{value:"Stored Procedure - CopyUsersLogInBatches",id:"stored-procedure---copyusersloginbatches",level:3},{value:"Stored Procedure - DeleteUsersLogInBatches",id:"stored-procedure---deleteusersloginbatches",level:3},{value:"Stored Procedure with Progress and Total Rows Deleted - DeleteOldSessionsInBatches",id:"stored-procedure-with-progress-and-total-rows-deleted---deleteoldsessionsinbatches",level:3},{value:"Stored Procedure - DeleteContentRevisionsEfficiently",id:"stored-procedure---deletecontentrevisionsefficiently",level:3},{value:"Calling a Stored Procedure",id:"calling-a-stored-procedure",level:3},{value:"Stored Procedure with Progress Output",id:"stored-procedure-with-progress-output",level:3}];function c(e){const r={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",li:"li",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,s.a)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(r.h1,{id:"stored-procedure",children:"Stored Procedure"}),"\n",(0,n.jsxs)(r.p,{children:["A ",(0,n.jsx)(r.strong,{children:"stored procedure"})," (also termed ",(0,n.jsx)(r.strong,{children:"proc, storp, sproc, StoPro, StoredProc, StoreProc, sp, or SP"}),") is a ",(0,n.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/Subroutine",children:"subroutine"})," available to applications that access a ",(0,n.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/Relational_database_management_system",children:"relational database management system"}),"(RDBMS). Such procedures are stored in the database ",(0,n.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/Data_dictionary",children:"data dictionary"}),"."]}),"\n",(0,n.jsxs)(r.p,{children:["Uses for stored procedures include ",(0,n.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/Data_validation",children:"data-validation"}),"(integrated into the database) or ",(0,n.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/Access_control",children:"access-control"})," mechanisms. Furthermore, stored procedures can consolidate and centralize logic that was originally implemented in applications. To save time and memory, extensive or complex processing that requires execution of several ",(0,n.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/SQL",children:"SQL"})," statements can be saved into stored procedures, and all applications call the procedures. One can use nested stored procedures by executing one stored procedure from within another."]}),"\n",(0,n.jsxs)(r.p,{children:["Stored procedures may return ",(0,n.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/Result_set",children:"result sets"}),", i.e., the results of aSELECTstatement. Such result sets can be processed using ",(0,n.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/Cursor_(databases)",children:"cursors"}),", by other stored procedures, by associating a result-set locator, or by applications. Stored procedures may also contain declared variables for processing data and cursors that allow it to loop through multiple rows in a table. Stored-procedure flow-control statements typically includeIF,WHILE,LOOP,REPEAT, andCASEstatements, and more. Stored procedures can receive variables, return results or modify variables and return them, depending on how and where the variable is declared."]}),"\n",(0,n.jsx)(r.pre,{children:(0,n.jsx)(r.code,{className:"language-sql",children:"CREATE PROCEDURE procedure_name\nAS\nsql_statement\nGO;\n\nEXEC procedure_name;\n"})}),"\n",(0,n.jsx)(r.h2,{id:"advantages-of-using-stored-procedures",children:"Advantages of using stored procedures"}),"\n",(0,n.jsxs)(r.ul,{children:["\n",(0,n.jsxs)(r.li,{children:[(0,n.jsx)(r.strong,{children:"A stored procedure allows modular programming -"})," You can create the procedure once, store it in the database, and call it any number of times in your program."]}),"\n",(0,n.jsxs)(r.li,{children:[(0,n.jsx)(r.strong,{children:"A stored procedure allows faster execution -"})," If the operation requires a large amount of SQL code that is performed repetitively, stored procedures can be faster. They are parsed and optimized when they are first executed, and a compiled version of the stored procedure remains in a memory cache for later use. This means the stored procedure does not need to be reparsed and reoptimized with each use, resulting in much faster execution times."]}),"\n",(0,n.jsxs)(r.li,{children:[(0,n.jsx)(r.strong,{children:"A stored procedure can reduce network traffic -"})," An operation requiring hundreds of lines of Transact-SQL code can be performed through a single statement that executes the code in a procedure, rather than by sending hundreds of lines of code over the network."]}),"\n",(0,n.jsxs)(r.li,{children:[(0,n.jsx)(r.strong,{children:"Stored procedures provide better security to your data -"})," Users can be granted permission to execute a stored procedure even if they do not have permission to execute the procedure's statements directly."]}),"\n"]}),"\n",(0,n.jsx)(r.h2,{id:"types-of-stored-procedures",children:"Types of stored procedures"}),"\n",(0,n.jsxs)(r.ul,{children:["\n",(0,n.jsxs)(r.li,{children:[(0,n.jsx)(r.strong,{children:"System-stored procedures"})," are stored in the master database and these start with asp_prefix. These procedures can be used to perform a variety of tasks to support SQL Server functions for external application calls in the system tables","\n",(0,n.jsxs)(r.ul,{children:["\n",(0,n.jsx)(r.li,{children:"Example: sp_helptext [StoredProcedure_Name]"}),"\n"]}),"\n"]}),"\n",(0,n.jsxs)(r.li,{children:[(0,n.jsx)(r.strong,{children:"User-defined stored procedures"})," are usually stored in a user database and are typically designed to complete the tasks in the user database. While coding these procedures don't use the ",(0,n.jsx)(r.code,{children:"sp_prefix"})," because if we use the ",(0,n.jsx)(r.code,{children:"sp_prefix"})," first, it will check the master database, and then it comes to user defined database."]}),"\n",(0,n.jsxs)(r.li,{children:[(0,n.jsx)(r.strong,{children:"Extended stored procedures"})," are the procedures that call functions from DLL files. Nowadays, extended stored procedures are deprecated for the reason it would be better to avoid using extended stored procedures."]}),"\n"]}),"\n",(0,n.jsx)(r.p,{children:(0,n.jsx)(r.a,{href:"https://en.wikipedia.org/wiki/Stored_procedure",children:"https://en.wikipedia.org/wiki/Stored_procedure"})}),"\n",(0,n.jsx)(r.h2,{id:"differences",children:"Differences"}),"\n",(0,n.jsxs)(r.ul,{children:["\n",(0,n.jsxs)(r.li,{children:["A ",(0,n.jsx)(r.strong,{children:"stored routine"})," is either a procedure or a function."]}),"\n",(0,n.jsxs)(r.li,{children:["A ",(0,n.jsx)(r.strong,{children:"procedure"})," is invoked using a CALL statement and can only pass back values using output variables."]}),"\n",(0,n.jsxs)(r.li,{children:["A ",(0,n.jsx)(r.strong,{children:"function"})," can be called from inside a statement just like any other function and can return a scalar value."]}),"\n"]}),"\n",(0,n.jsx)(r.h3,{id:"stored-procedures",children:"Stored Procedures"}),"\n",(0,n.jsxs)(r.ul,{children:["\n",(0,n.jsx)(r.li,{children:"Procedure can return zero or n values"}),"\n",(0,n.jsx)(r.li,{children:"Procedures can have input/output parameters for it"}),"\n",(0,n.jsx)(r.li,{children:"Procedure allows select as well as DML statement in it"}),"\n",(0,n.jsx)(r.li,{children:"A stored procedure may have arguments that areIN,OUT, orINOUT."}),"\n",(0,n.jsx)(r.li,{children:"A procedure can't be called from DML statements."}),"\n",(0,n.jsx)(r.li,{children:"Procedures are parsed and compiled."}),"\n",(0,n.jsx)(r.li,{children:"Procedures are mainly used to process the tasks."}),"\n",(0,n.jsx)(r.li,{children:"Procedure doesn't return value.procedure can return more than one values using OUT parameter"}),"\n",(0,n.jsx)(r.li,{children:"They are stored in compiled format in the database where as Functions are compiled and executed run time."}),"\n",(0,n.jsx)(r.li,{children:"A procedure is used to execute business logic."}),"\n",(0,n.jsx)(r.li,{children:"Stored procedure returns always integer value by default zero."}),"\n",(0,n.jsx)(r.li,{children:"Stored procedure has the security and reduces the network traffic."}),"\n",(0,n.jsx)(r.li,{children:"It create variable table and but can't return variable table."}),"\n",(0,n.jsx)(r.li,{children:"Print command used."}),"\n",(0,n.jsx)(r.li,{children:"It execute Dynamic SQL."}),"\n"]}),"\n",(0,n.jsx)(r.h3,{id:"functions",children:"Functions"}),"\n",(0,n.jsxs)(r.ul,{children:["\n",(0,n.jsx)(r.li,{children:"function can return one value which is mandatory"}),"\n",(0,n.jsx)(r.li,{children:"functions can have only input parameters"}),"\n",(0,n.jsx)(r.li,{children:"function allows only select statement in it"}),"\n",(0,n.jsx)(r.li,{children:"Functions may only haveINarguments."}),"\n",(0,n.jsx)(r.li,{children:"DML operations performs in functions."}),"\n",(0,n.jsx)(r.li,{children:"functions always return a single value to the caller."}),"\n",(0,n.jsx)(r.li,{children:"Functions are mainly used to compute values."}),"\n",(0,n.jsx)(r.li,{children:"A function is used to compute a value."}),"\n",(0,n.jsx)(r.li,{children:"It returns type could be scalar or table or table values."}),"\n",(0,n.jsx)(r.li,{children:"It create variable table and can return variable table."}),"\n",(0,n.jsx)(r.li,{children:"Print command cant't use."}),"\n",(0,n.jsx)(r.li,{children:"It can't execute dynamic sql."}),"\n"]}),"\n",(0,n.jsx)(r.p,{children:(0,n.jsx)(r.a,{href:"https://www.mysqltutorial.org/mysql-error-handling-in-stored-procedures",children:"https://www.mysqltutorial.org/mysql-error-handling-in-stored-procedures"})}),"\n",(0,n.jsx)(r.p,{children:(0,n.jsx)(r.a,{href:"https://stackoverflow.com/questions/2680745/whats-the-differences-between-stored-procedures-functions-and-routines",children:"mysql - What's the differences between stored procedures, functions and routines? - Stack Overflow"})}),"\n",(0,n.jsx)(r.h2,{id:"access",children:"Access"}),"\n",(0,n.jsx)(r.p,{children:'ForMySQL 8, connect your database viaWorkbench, go toAdministration -> User and Privileges, and select the user account you want to modify, then switch to "Administrative Roles", tick "SELECT" on right panel (Global Privileges), Click \'Apply\' and done.'}),"\n",(0,n.jsx)(r.h2,{id:"queries",children:"Queries"}),"\n",(0,n.jsx)(r.h3,{id:"stored-procedure---copyusersloginbatches",children:"Stored Procedure - CopyUsersLogInBatches"}),"\n",(0,n.jsx)(r.pre,{children:(0,n.jsx)(r.code,{className:"language-sql",children:"DELIMITER $$\n\nCREATE PROCEDURE CopyUsersLogInBatches()\nBEGIN\n DECLARE batch_size INT DEFAULT 1000000;\n DECLARE start_id INT;\n DECLARE max_id INT;\n\n -- Initialize start_id and max_id\n SELECT MIN(id) INTO start_id FROM users_log;\n SELECT MAX(id) INTO max_id FROM users_log;\n\n -- Loop to copy data in batches\n WHILE start_id <= max_id DO\n INSERT INTO users_log_backup_27_nov_2024\n SELECT *\n FROM users_log\n WHERE id BETWEEN start_id AND start_id + batch_size - 1;\n\n -- Update the start_id for the next batch\n SET start_id = start_id + batch_size;\n END WHILE;\nEND$$\n\nDELIMITER ;\n"})}),"\n",(0,n.jsx)(r.h3,{id:"stored-procedure---deleteusersloginbatches",children:"Stored Procedure - DeleteUsersLogInBatches"}),"\n",(0,n.jsx)(r.pre,{children:(0,n.jsx)(r.code,{className:"language-sql",children:"DELIMITER $$\n\nCREATE PROCEDURE DeleteUsersLogInBatches()\nBEGIN\n DECLARE batch_size INT DEFAULT 100000; -- Number of rows to delete in each batch\n DECLARE start_id INT DEFAULT 0; -- Starting ID for the first batch\n DECLARE end_id INT DEFAULT 14900000; -- Target maximum ID for deletion\n\n -- Loop to delete data in batches\n WHILE start_id < end_id DO\n -- Delete rows in the current batch\n DELETE FROM users_log\n WHERE id BETWEEN start_id AND start_id + batch_size - 1;\n\n -- Update the start_id for the next batch\n SET start_id = start_id + batch_size;\n END WHILE;\nEND$$\n\nDELIMITER ;\n"})}),"\n",(0,n.jsx)(r.h3,{id:"stored-procedure-with-progress-and-total-rows-deleted---deleteoldsessionsinbatches",children:"Stored Procedure with Progress and Total Rows Deleted - DeleteOldSessionsInBatches"}),"\n",(0,n.jsx)(r.pre,{children:(0,n.jsx)(r.code,{className:"language-sql",children:"DELIMITER $$\n\nCREATE PROCEDURE DeleteOldSessionsInBatches()\nBEGIN\n DECLARE batch_size INT DEFAULT 10000; -- Number of rows to delete in each batch\n DECLARE rows_deleted INT DEFAULT 0; -- Counter for rows deleted in each iteration\n DECLARE total_deleted INT DEFAULT 0; -- Total rows deleted across all batches\n\n -- Loop to delete data in batches\n REPEAT\n -- Delete a batch of rows\n DELETE FROM entrancecorner.django_session\n WHERE expire_date BETWEEN NOW() - INTERVAL 180 DAY AND NOW() - INTERVAL 165 DAY\n LIMIT batch_size;\n\n -- Get the number of rows deleted in this batch\n SET rows_deleted = ROW_COUNT();\n\n -- Update the total count of rows deleted\n SET total_deleted = total_deleted + rows_deleted;\n\n -- Output progress message\n SELECT CONCAT('Deleted ', rows_deleted, ' rows in this batch. Total so far: ', total_deleted) AS Progress;\n\n UNTIL rows_deleted = 0 -- Exit when no more rows match the criteria\n END REPEAT;\n\n -- Final message with total rows deleted\n SELECT CONCAT('Deletion process completed. Total rows deleted: ', total_deleted) AS FinalMessage;\nEND$$\n\nDELIMITER ;\n"})}),"\n",(0,n.jsx)(r.h3,{id:"stored-procedure---deletecontentrevisionsefficiently",children:"Stored Procedure - DeleteContentRevisionsEfficiently"}),"\n",(0,n.jsx)(r.pre,{children:(0,n.jsx)(r.code,{className:"language-sql",children:"DELIMITER $$\n\nCREATE PROCEDURE DeleteContentRevisionsEfficiently()\nBEGIN\n DECLARE current_model_name VARCHAR(255); -- Placeholder for the current model_name\n DECLARE finished INT DEFAULT 0; -- Loop termination flag\n DECLARE rows_deleted INT DEFAULT 0; -- Counter for rows deleted\n DECLARE total_deleted INT DEFAULT 0; -- Total rows deleted\n\n -- Cursor to iterate over distinct model_name values\n DECLARE model_cursor CURSOR FOR\n SELECT DISTINCT model_name FROM content_revisions;\n\n -- Handler for the end of the cursor\n DECLARE CONTINUE HANDLER FOR NOT FOUND SET finished = 1;\n\n -- Open the cursor\n OPEN model_cursor;\n\n -- Loop through each model_name\n fetch_loop: LOOP\n FETCH model_cursor INTO current_model_name;\n\n -- Exit loop if no more data\n IF finished = 1 THEN\n LEAVE fetch_loop;\n END IF;\n\n -- Print progress: start processing current model_name\n SELECT CONCAT('Processing model_name: ', current_model_name) AS ProgressMessage;\n\n -- Delete rows for the current model_name with ranking logic\n DELETE cr\n FROM content_revisions cr\n JOIN (\n SELECT id\n FROM (\n SELECT id, \n ROW_NUMBER() OVER (PARTITION BY model_id ORDER BY created DESC, revision_no DESC) AS rn\n FROM content_revisions\n WHERE model_name = current_model_name\n ) ranked_revisions\n WHERE rn > 5\n ) to_delete\n ON cr.id = to_delete.id;\n\n -- Get the number of rows deleted for the current group\n SET rows_deleted = ROW_COUNT();\n\n -- Update the total count\n SET total_deleted = total_deleted + rows_deleted;\n\n -- Print progress: rows deleted for the current model_name\n SELECT CONCAT('Deleted ', rows_deleted, ' rows for model_name: ', current_model_name, '. Total deleted so far: ', total_deleted) AS ProgressMessage;\n END LOOP;\n\n -- Close the cursor\n CLOSE model_cursor;\n\n -- Final message\n SELECT CONCAT('Deletion process completed. Total rows deleted: ', total_deleted) AS FinalMessage;\nEND$$\n\nDELIMITER ;\n"})}),"\n",(0,n.jsx)(r.h3,{id:"calling-a-stored-procedure",children:"Calling a Stored Procedure"}),"\n",(0,n.jsx)(r.pre,{children:(0,n.jsx)(r.code,{className:"language-sql",children:"call DeleteUsersLogInBatches();\n\n-- drop stored procedure\ndrop procedure DeleteUsersLogInBatches;\n"})}),"\n",(0,n.jsx)(r.h3,{id:"stored-procedure-with-progress-output",children:"Stored Procedure with Progress Output"}),"\n",(0,n.jsx)(r.pre,{children:(0,n.jsx)(r.code,{className:"language-sql",children:"DELIMITER $$\n\nCREATE PROCEDURE DeleteUsersLogInBatches()\nBEGIN\n DECLARE batch_size INT DEFAULT 1000000; -- Number of rows to delete in each batch\n DECLARE start_id INT DEFAULT 0; -- Starting ID for the first batch\n DECLARE end_id INT DEFAULT 14900000; -- Target maximum ID for deletion\n\n -- Loop to delete data in batches\n WHILE start_id < end_id DO\n -- Delete rows in the current batch\n DELETE FROM users_log\n WHERE id BETWEEN start_id AND start_id + batch_size - 1;\n\n -- Output progress message\n SELECT CONCAT('Deleted rows with IDs from ', start_id, ' to ', start_id + batch_size - 1) AS Progress;\n\n -- Update the start_id for the next batch\n SET start_id = start_id + batch_size;\n END WHILE;\n\n -- Final message\n SELECT 'Deletion process completed.' AS FinalMessage;\nEND$$\n\nDELIMITER ;\n"})})]})}function u(e={}){const{wrapper:r}={...(0,s.a)(),...e.components};return r?(0,n.jsx)(r,{...e,children:(0,n.jsx)(c,{...e})}):c(e)}},511151:(e,r,t)=>{t.d(r,{Z:()=>a,a:()=>d});var n=t(667294);const s={},o=n.createContext(s);function d(e){const r=n.useContext(o);return n.useMemo((function(){return"function"==typeof e?e(r):{...r,...e}}),[r,e])}function a(e){let r;return r=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:d(e.components),n.createElement(o.Provider,{value:r},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/238538ee.14eb5f62.js b/assets/js/238538ee.14eb5f62.js new file mode 100644 index 00000000000..fc9d37f336c --- /dev/null +++ b/assets/js/238538ee.14eb5f62.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[61874],{629839:(n,i,e)=>{e.r(i),e.d(i,{assets:()=>c,contentTitle:()=>t,default:()=>a,frontMatter:()=>r,metadata:()=>o,toc:()=>h});var s=e(785893),l=e(511151);const r={},t="Algo + DS",o={id:"algorithms/general/algo-ds",title:"Algo + DS",description:"Algorithms",source:"@site/docs/algorithms/general/algo-ds.md",sourceDirName:"algorithms/general",slug:"/algorithms/general/algo-ds",permalink:"/algorithms/general/algo-ds",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/algorithms/general/algo-ds.md",tags:[],version:"current",lastUpdatedAt:1732901510,formattedLastUpdatedAt:"Nov 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"2d orthogonal range search",permalink:"/algorithms/general/2d-orthogonal-range-search"},next:{title:"Algorithms Questions",permalink:"/algorithms/general/algorithms-questions"}},c={},h=[{value:"Algorithms",id:"algorithms",level:2},{value:"Data Structures",id:"data-structures",level:2},{value:"Strategies for algorithms",id:"strategies-for-algorithms",level:2},{value:"Resources",id:"resources",level:2},{value:"Most Important Algos / DS / Programming Concepts",id:"most-important-algos--ds--programming-concepts",level:2},{value:"BUD Optimization Strategy",id:"bud-optimization-strategy",level:2},{value:"Questions to asking when solving a coding interview questions",id:"questions-to-asking-when-solving-a-coding-interview-questions",level:2}];function d(n){const i={a:"a",h1:"h1",h2:"h2",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,l.a)(),...n.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(i.h1,{id:"algo--ds",children:"Algo + DS"}),"\n",(0,s.jsx)(i.h2,{id:"algorithms",children:"Algorithms"}),"\n",(0,s.jsxs)(i.ol,{children:["\n",(0,s.jsxs)(i.li,{children:["Union-Find Algorithm","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Dynamic Connectivity"}),"\n",(0,s.jsx)(i.li,{children:"Quick Find"}),"\n",(0,s.jsx)(i.li,{children:"Quick Union"}),"\n",(0,s.jsxs)(i.li,{children:["Improvements","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Weighted Quick Union"}),"\n",(0,s.jsx)(i.li,{children:"Weighted Quick Union with Path Compression"}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Analysis of algorithms","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Scientific Method of Analysis"}),"\n",(0,s.jsx)(i.li,{children:"Empirical Method of Analysis"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Stacks and Queues","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Stacks"}),"\n",(0,s.jsx)(i.li,{children:"Resizing Arrays"}),"\n",(0,s.jsx)(i.li,{children:"Queues"}),"\n",(0,s.jsx)(i.li,{children:"Deque"}),"\n",(0,s.jsx)(i.li,{children:"Randomized Queues"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Elementary Sort","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Selection Sort"}),"\n",(0,s.jsx)(i.li,{children:"Insertion Sort"}),"\n",(0,s.jsx)(i.li,{children:"Shell Sort"}),"\n",(0,s.jsxs)(i.li,{children:["Shuffling","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Shuffle Sort"}),"\n",(0,s.jsx)(i.li,{children:"Knuth Shuffle"}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(i.li,{children:"Convex Hull"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Merge Sort","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Bottom up mergesort"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Quick Sort","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Quick Select (Selection)"}),"\n",(0,s.jsx)(i.li,{children:"3- way partition quicksort (Duplicate Keys)"}),"\n",(0,s.jsx)(i.li,{children:"System sorts"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Priority Queues","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Binary heaps"}),"\n",(0,s.jsx)(i.li,{children:"Heap sort"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Elementary Symbol Tables","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsxs)(i.li,{children:["Elementary Implementations","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Sorted array (Binary Search)"}),"\n",(0,s.jsx)(i.li,{children:"Unordered List (Sequential Search)"}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(i.li,{children:"Ordered Operations"}),"\n",(0,s.jsx)(i.li,{children:"Binary Search Trees"}),"\n",(0,s.jsx)(i.li,{children:"Ordered Operations in BSTs"}),"\n",(0,s.jsx)(i.li,{children:"Deletion in BSTs"}),"\n",(0,s.jsxs)(i.li,{children:["Balanced Search Trees","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"2-3 Search Trees"}),"\n",(0,s.jsx)(i.li,{children:"Red-Black Trees"}),"\n",(0,s.jsx)(i.li,{children:"B-Trees"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Geometric applications of BST","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"1d Range Search"}),"\n",(0,s.jsx)(i.li,{children:"Line Segment Intersection"}),"\n",(0,s.jsx)(i.li,{children:"Kd-Trees"}),"\n",(0,s.jsx)(i.li,{children:"Interval Search Trees"}),"\n",(0,s.jsx)(i.li,{children:"Rectangle Intersection"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Hash Tables","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Uniform Hashing Assumption"}),"\n",(0,s.jsx)(i.li,{children:"Separate Chaining"}),"\n",(0,s.jsx)(i.li,{children:"Linear Probing"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Symbol Table Applications","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Sets"}),"\n",(0,s.jsx)(i.li,{children:"Dictionary Clients"}),"\n",(0,s.jsx)(i.li,{children:"Indexing Clients"}),"\n",(0,s.jsx)(i.li,{children:"Sparse Vectors"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(i.h2,{id:"data-structures",children:"Data Structures"}),"\n",(0,s.jsxs)(i.ol,{children:["\n",(0,s.jsxs)(i.li,{children:["Undirected Graphs","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsxs)(i.li,{children:["Implementation","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Adjacency Matrix"}),"\n",(0,s.jsx)(i.li,{children:"Adjacency List"}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(i.li,{children:"DFS"}),"\n",(0,s.jsx)(i.li,{children:"BFS"}),"\n",(0,s.jsx)(i.li,{children:"Connected Components"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Directed Graphs","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsxs)(i.li,{children:["Topological Sort","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Topological order of an acyclic digraph"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Strongly Connected Components","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Kosaraju-Sharir algorithm for computing strong components of a digraph"}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Minimum Spanning Trees","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Kruskal's Algorithm"}),"\n",(0,s.jsx)(i.li,{children:"Prim's Algorithm"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Shortest Path","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Dijkstra's Algorithm"}),"\n",(0,s.jsx)(i.li,{children:"Bellman Ford Algorithm (Negative Weights)"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Maximum Flow and Minimum Cut","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Ford-Fulkerson Algorithm"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Radix Sorts","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Key-Indexed Counting"}),"\n",(0,s.jsx)(i.li,{children:"LSD Radix Sort"}),"\n",(0,s.jsx)(i.li,{children:"MSD Radix Sort"}),"\n",(0,s.jsx)(i.li,{children:"3-way Radix Quicksort"}),"\n",(0,s.jsx)(i.li,{children:"Suffix Arrays"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Tries","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"R-way Tries"}),"\n",(0,s.jsx)(i.li,{children:"Ternary Search Tries"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Substring Search","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"KMP (Knuth-Morris-Pratt)"}),"\n",(0,s.jsx)(i.li,{children:"Boyer-Moore"}),"\n",(0,s.jsx)(i.li,{children:"Rabin-Karp"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Regular Expressions","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"DFA"}),"\n",(0,s.jsx)(i.li,{children:"NFA"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Data Compression","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Run Length Encoding"}),"\n",(0,s.jsx)(i.li,{children:"Huffman Compression"}),"\n",(0,s.jsx)(i.li,{children:"LZW Compression"}),"\n",(0,s.jsx)(i.li,{children:"Burrows-Wheeler"}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(i.li,{children:"Reductions"}),"\n",(0,s.jsxs)(i.li,{children:["Linear Programming","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Brewer's Problem"}),"\n",(0,s.jsx)(i.li,{children:"Simplex Algorithm"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["Intractability","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"P"}),"\n",(0,s.jsx)(i.li,{children:"NP"}),"\n",(0,s.jsx)(i.li,{children:"NP-Complete"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(i.h2,{id:"strategies-for-algorithms",children:"Strategies for algorithms"}),"\n",(0,s.jsxs)(i.ol,{children:["\n",(0,s.jsx)(i.li,{children:"B.U.D. (Bottleneck, Unnecessary work, Duplicated work)"}),"\n",(0,s.jsx)(i.li,{children:"Space / Time Tradeoffs"}),"\n"]}),"\n",(0,s.jsx)(i.h2,{id:"resources",children:"Resources"}),"\n",(0,s.jsxs)(i.ol,{children:["\n",(0,s.jsx)(i.li,{children:"Coursera - Algorithms Part 1"}),"\n",(0,s.jsx)(i.li,{children:"Coursera - Algorithms Part 2"}),"\n"]}),"\n",(0,s.jsx)(i.p,{children:(0,s.jsx)(i.a,{href:"https://www.toptal.com/algorithms/interview-questions",children:"https://www.toptal.com/algorithms/interview-questions"})}),"\n",(0,s.jsx)(i.h2,{id:"most-important-algos--ds--programming-concepts",children:"Most Important Algos / DS / Programming Concepts"}),"\n",(0,s.jsxs)(i.ol,{children:["\n",(0,s.jsx)(i.li,{children:"Depth first search"}),"\n",(0,s.jsx)(i.li,{children:"Breadth first search"}),"\n",(0,s.jsx)(i.li,{children:"Matching parenthesis"}),"\n",(0,s.jsx)(i.li,{children:"Hash Tables"}),"\n",(0,s.jsx)(i.li,{children:"Variables / Pointer manipulations"}),"\n",(0,s.jsx)(i.li,{children:"Reversing a linked list"}),"\n",(0,s.jsx)(i.li,{children:"Sorting fundamentals"}),"\n",(0,s.jsx)(i.li,{children:"Recursion"}),"\n",(0,s.jsx)(i.li,{children:"Custom data structures (suffix tree)"}),"\n",(0,s.jsx)(i.li,{children:(0,s.jsx)(i.strong,{children:"Binary search"})}),"\n"]}),"\n",(0,s.jsx)(i.h2,{id:"bud-optimization-strategy",children:"BUD Optimization Strategy"}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Bottlenecks"}),"\n",(0,s.jsx)(i.li,{children:"Unnecessary work"}),"\n",(0,s.jsx)(i.li,{children:"Duplicated work"}),"\n"]}),"\n",(0,s.jsx)(i.p,{children:(0,s.jsx)(i.a,{href:"https://4tee-learn.blogspot.com/2017/12/optimisation-technique-15-bud.html",children:"https://4tee-learn.blogspot.com/2017/12/optimisation-technique-15-bud.html"})}),"\n",(0,s.jsx)(i.h2,{id:"questions-to-asking-when-solving-a-coding-interview-questions",children:"Questions to asking when solving a coding interview questions"}),"\n",(0,s.jsxs)(i.ol,{children:["\n",(0,s.jsxs)(i.li,{children:["What is the data types of the inputs?","\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Can we assume the string is ASCII or Unicode?"}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(i.li,{children:"Do we have to worry about load factors?"}),"\n",(0,s.jsx)(i.li,{children:"Do we have to validate inputs?"}),"\n",(0,s.jsx)(i.li,{children:"Can we assume this fits in memory?"}),"\n",(0,s.jsx)(i.li,{children:"Can we use additional data structures?"}),"\n"]}),"\n",(0,s.jsx)(i.p,{children:(0,s.jsx)(i.a,{href:"https://www.freecodecamp.org/news/learn-algorithms-and-data-structures-in-python",children:"https://www.freecodecamp.org/news/learn-algorithms-and-data-structures-in-python"})}),"\n",(0,s.jsx)(i.p,{children:(0,s.jsx)(i.a,{href:"https://www.youtube.com/playlist?list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb",children:"MIT 6.006 Introduction to Algorithms, Fall 2011"})}),"\n",(0,s.jsx)(i.p,{children:(0,s.jsx)(i.a,{href:"https://github.com/MisterBooo/LeetCodeAnimation",children:"https://github.com/MisterBooo/LeetCodeAnimation"})})]})}function a(n={}){const{wrapper:i}={...(0,l.a)(),...n.components};return i?(0,s.jsx)(i,{...n,children:(0,s.jsx)(d,{...n})}):d(n)}},511151:(n,i,e)=>{e.d(i,{Z:()=>o,a:()=>t});var s=e(667294);const l={},r=s.createContext(l);function t(n){const i=s.useContext(r);return s.useMemo((function(){return"function"==typeof n?n(i):{...i,...n}}),[i,n])}function o(n){let i;return i=n.disableParentContext?"function"==typeof n.components?n.components(l):n.components||l:t(n.components),s.createElement(r.Provider,{value:i},n.children)}}}]); \ No newline at end of file diff --git a/assets/js/238538ee.37b1c5db.js b/assets/js/238538ee.37b1c5db.js deleted file mode 100644 index 93f8abf880b..00000000000 --- a/assets/js/238538ee.37b1c5db.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[61874],{629839:(n,s,i)=>{i.r(s),i.d(s,{assets:()=>d,contentTitle:()=>c,default:()=>x,frontMatter:()=>r,metadata:()=>h,toc:()=>t});var e=i(785893),l=i(511151);const r={},c="Algo + DS",h={id:"algorithms/general/algo-ds",title:"Algo + DS",description:"Algorithms",source:"@site/docs/algorithms/general/algo-ds.md",sourceDirName:"algorithms/general",slug:"/algorithms/general/algo-ds",permalink:"/algorithms/general/algo-ds",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/algorithms/general/algo-ds.md",tags:[],version:"current",lastUpdatedAt:1701793554,formattedLastUpdatedAt:"Dec 5, 2023",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"2d orthogonal range search",permalink:"/algorithms/general/2d-orthogonal-range-search"},next:{title:"Algorithms Questions",permalink:"/algorithms/general/algorithms-questions"}},d={},t=[{value:"Algorithms",id:"algorithms",level:2},{value:"Data Structures",id:"data-structures",level:2},{value:"Strategies for algorithms",id:"strategies-for-algorithms",level:2},{value:"Resources",id:"resources",level:2},{value:"Most Important Algos / DS / Programming Concepts",id:"most-important-algos--ds--programming-concepts",level:2},{value:"BUD Optimization Strategy",id:"bud-optimization-strategy",level:2},{value:"Questions to asking when solving a coding interview questions",id:"questions-to-asking-when-solving-a-coding-interview-questions",level:2}];function o(n){const s={a:"a",h1:"h1",h2:"h2",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,l.a)(),...n.components};return(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(s.h1,{id:"algo--ds",children:"Algo + DS"}),"\n",(0,e.jsx)(s.h2,{id:"algorithms",children:"Algorithms"}),"\n",(0,e.jsxs)(s.ol,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Union-Find Algorithm"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Dynamic Connectivity"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Quick Find"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Quick Union"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Improvements"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Weighted Quick Union"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Weighted Quick Union with Path Compression"}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Analysis of algorithms"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Scientific Method of Analysis"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Empirical Method of Analysis"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Stacks and Queues"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Stacks"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Resizing Arrays"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Queues"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Deque"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Randomized Queues"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Elementary Sort"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Selection Sort"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Insertion Sort"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Shell Sort"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Shuffling"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Shuffle Sort"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Knuth Shuffle"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Convex Hull"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Merge Sort"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsx)(s.li,{children:"Bottom up mergesort"}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Quick Sort"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Quick Select (Selection)"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"3- way partition quicksort (Duplicate Keys)"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"System sorts"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Priority Queues"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Binary heaps"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Heap sort"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Elementary Symbol Tables"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsx)(s.li,{children:"Elementary Implementations"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsx)(s.p,{children:"Sorted array (Binary Search)"}),"\n",(0,e.jsx)(s.p,{children:"Unordered List (Sequential Search)"}),"\n",(0,e.jsxs)(s.ol,{start:"2",children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Ordered Operations"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Binary Search Trees"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Ordered Operations in BSTs"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Deletion in BSTs"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Balanced Search Trees"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"2-3 Search Trees"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Red-Black Trees"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"B-Trees"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Geometric applications of BST"}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"1d Range Search"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Line Segment Intersection"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Kd-Trees"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Interval Search Trees"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Rectangle Intersection"}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.ol,{start:"11",children:["\n",(0,e.jsx)(s.li,{children:"Hash Tables"}),"\n"]}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Uniform Hashing Assumption"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Separate Chaining"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Linear Probing"}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.ol,{start:"12",children:["\n",(0,e.jsx)(s.li,{children:"Symbol Table Applications"}),"\n"]}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Sets"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Dictionary Clients"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Indexing Clients"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Sparse Vectors"}),"\n"]}),"\n"]}),"\n",(0,e.jsx)(s.h2,{id:"data-structures",children:"Data Structures"}),"\n",(0,e.jsxs)(s.ol,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Undirected Graphs"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Implementation"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Adjacency Matrix"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Adjacency List"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"DFS"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"BFS"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Connected Components"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Directed Graphs"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Topological Sort"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsx)(s.li,{children:"Topological order of an acyclic digraph"}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Strongly Connected Components"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsx)(s.li,{children:"Kosaraju-Sharir algorithm for computing strong components of a digraph"}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Minimum Spanning Trees"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Kruskal's Algorithm"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Prim's Algorithm"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Shortest Path"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Dijkstra's Algorithm"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Bellman Ford Algorithm (Negative Weights)"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Maximum Flow and Minimum Cut"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsx)(s.li,{children:"Ford-Fulkerson Algorithm"}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Radix Sorts"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Key-Indexed Counting"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"LSD Radix Sort"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"MSD Radix Sort"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"3-way Radix Quicksort"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Suffix Arrays"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Tries"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"R-way Tries"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Ternary Search Tries"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Substring Search"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"KMP (Knuth-Morris-Pratt)"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Boyer-Moore"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Rabin-Karp"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Regular Expressions"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"DFA"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"NFA"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Data Compression"}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Run Length Encoding"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Huffman Compression"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"LZW Compression"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Burrows-Wheeler"}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.ol,{start:"11",children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Reductions"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Linear Programming"}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Brewer's Problem"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Simplex Algorithm"}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.ol,{start:"13",children:["\n",(0,e.jsx)(s.li,{children:"Intractability"}),"\n"]}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"P"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"NP"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"NP-Complete"}),"\n"]}),"\n"]}),"\n",(0,e.jsx)(s.h2,{id:"strategies-for-algorithms",children:"Strategies for algorithms"}),"\n",(0,e.jsxs)(s.ol,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"B.U.D. (Bottleneck, Unnecessary work, Duplicated work)"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Space / Time Tradeoffs"}),"\n"]}),"\n"]}),"\n",(0,e.jsx)(s.h2,{id:"resources",children:"Resources"}),"\n",(0,e.jsxs)(s.ol,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Coursera - Algorithms Part 1"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Coursera - Algorithms Part 2"}),"\n"]}),"\n"]}),"\n",(0,e.jsx)(s.p,{children:(0,e.jsx)(s.a,{href:"https://www.toptal.com/algorithms/interview-questions",children:"https://www.toptal.com/algorithms/interview-questions"})}),"\n",(0,e.jsx)(s.h2,{id:"most-important-algos--ds--programming-concepts",children:"Most Important Algos / DS / Programming Concepts"}),"\n",(0,e.jsxs)(s.ol,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Depth first search"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Breadth first search"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Matching parenthesis"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Hash Tables"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Variables / Pointer manipulations"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Reversing a linked list"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Sorting fundamentals"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Recursion"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Custom data structures (suffix tree)"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:(0,e.jsx)(s.strong,{children:"Binary search"})}),"\n"]}),"\n"]}),"\n",(0,e.jsx)(s.h2,{id:"bud-optimization-strategy",children:"BUD Optimization Strategy"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsx)(s.li,{children:"Bottlenecks"}),"\n",(0,e.jsx)(s.li,{children:"Unnecessary work"}),"\n",(0,e.jsx)(s.li,{children:"Duplicated work"}),"\n"]}),"\n",(0,e.jsx)(s.p,{children:(0,e.jsx)(s.a,{href:"https://4tee-learn.blogspot.com/2017/12/optimisation-technique-15-bud.html",children:"https://4tee-learn.blogspot.com/2017/12/optimisation-technique-15-bud.html"})}),"\n",(0,e.jsx)(s.h2,{id:"questions-to-asking-when-solving-a-coding-interview-questions",children:"Questions to asking when solving a coding interview questions"}),"\n",(0,e.jsxs)(s.ol,{children:["\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"What is the data types of the inputs?"}),"\n",(0,e.jsxs)(s.ul,{children:["\n",(0,e.jsx)(s.li,{children:"Can we assume the string is ASCII or Unicode?"}),"\n"]}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Do we have to worry about load factors?"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Do we have to validate inputs?"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Can we assume this fits in memory?"}),"\n"]}),"\n",(0,e.jsxs)(s.li,{children:["\n",(0,e.jsx)(s.p,{children:"Can we use additional data structures?"}),"\n"]}),"\n"]}),"\n",(0,e.jsx)(s.p,{children:(0,e.jsx)(s.a,{href:"https://www.freecodecamp.org/news/learn-algorithms-and-data-structures-in-python",children:"https://www.freecodecamp.org/news/learn-algorithms-and-data-structures-in-python"})}),"\n",(0,e.jsx)(s.p,{children:(0,e.jsx)(s.a,{href:"https://www.youtube.com/playlist?list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb",children:"MIT 6.006 Introduction to Algorithms, Fall 2011"})}),"\n",(0,e.jsx)(s.p,{children:(0,e.jsx)(s.a,{href:"https://github.com/MisterBooo/LeetCodeAnimation",children:"https://github.com/MisterBooo/LeetCodeAnimation"})})]})}function x(n={}){const{wrapper:s}={...(0,l.a)(),...n.components};return s?(0,e.jsx)(s,{...n,children:(0,e.jsx)(o,{...n})}):o(n)}},511151:(n,s,i)=>{i.d(s,{Z:()=>h,a:()=>c});var e=i(667294);const l={},r=e.createContext(l);function c(n){const s=e.useContext(r);return e.useMemo((function(){return"function"==typeof n?n(s):{...s,...n}}),[s,n])}function h(n){let s;return s=n.disableParentContext?"function"==typeof n.components?n.components(l):n.components||l:c(n.components),e.createElement(r.Provider,{value:s},n.children)}}}]); \ No newline at end of file diff --git a/assets/js/3e4f5733.f5619cd4.js b/assets/js/3e4f5733.f5619cd4.js deleted file mode 100644 index a3704305b10..00000000000 --- a/assets/js/3e4f5733.f5619cd4.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[68460],{681317:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>a,contentTitle:()=>l,default:()=>o,frontMatter:()=>t,metadata:()=>c,toc:()=>h});var i=s(785893),r=s(511151);const t={},l="Elasticsearch: The Definitive Guide",c={id:"technologies/elasticsearch/elasticsearch-the-definitive-guide",title:"Elasticsearch: The Definitive Guide",description:"Elasticsearch is a distributed, scalable, real-time search and analytics engine. It enables you to search, analyze, and explore your data. It exists because raw data sitting on a hard drive is just not useful.",source:"@site/docs/technologies/elasticsearch/elasticsearch-the-definitive-guide.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/elasticsearch-the-definitive-guide",permalink:"/technologies/elasticsearch/elasticsearch-the-definitive-guide",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/elasticsearch-the-definitive-guide.md",tags:[],version:"current",lastUpdatedAt:1707138374,formattedLastUpdatedAt:"Feb 5, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"ElastAlert",permalink:"/technologies/elasticsearch/elastalert"},next:{title:"ELK/EFK Stack /Elastic Stack / ElasticSearch",permalink:"/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch"}},a={},h=[{value:"Features",id:"features",level:2},{value:"Real world use cases",id:"real-world-use-cases",level:2},{value:"Navigating this book",id:"navigating-this-book",level:2},{value:"Contents",id:"contents",level:2},{value:"References",id:"references",level:2}];function d(e){const n={a:"a",h1:"h1",h2:"h2",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,r.a)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"elasticsearch-the-definitive-guide",children:"Elasticsearch: The Definitive Guide"}),"\n",(0,i.jsx)(n.p,{children:"Elasticsearch is a distributed, scalable, real-time search and analytics engine. It enables you to search, analyze, and explore your data. It exists because raw data sitting on a hard drive is just not useful."}),"\n",(0,i.jsx)(n.p,{children:"A distributed real-time document store whereevery fieldis indexed and searchable"}),"\n",(0,i.jsx)(n.h2,{id:"features",children:"Features"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Full Text Search"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"real-time analytics of structured data"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Scalable search index"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Database queries only store and retrieve"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Indexing Preprocessing"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Remove formatting"}),"\n",(0,i.jsx)(n.li,{children:"Remove stop words"}),"\n",(0,i.jsx)(n.li,{children:"Stemming - reduces the word down to its root"}),"\n",(0,i.jsx)(n.li,{children:"Add synonyms"}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Corpus of documents"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Tokens"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Inverted index"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Add fuzziness"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Based on Apache Lucene"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"First implementation was Compass 1 and Compass 2, and elasticsearch is the 3rd implementation"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Distributed and Highly Available Search Engine."}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Each index is fully sharded with a configurable number of shards."}),"\n",(0,i.jsx)(n.li,{children:"Each shard can have one or more replicas."}),"\n",(0,i.jsx)(n.li,{children:"Read / Search operations performed on any of the replica shards."}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Multi Tenant."}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Support for more than one index."}),"\n",(0,i.jsx)(n.li,{children:"Index level configuration (number of shards, index storage, ...)."}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Various set of APIs"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"HTTPRESTfulAPI"}),"\n",(0,i.jsx)(n.li,{children:"Native JavaAPI."}),"\n",(0,i.jsx)(n.li,{children:"All APIs perform automatic node operation rerouting."}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Document oriented"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"No need for upfront schema definition."}),"\n",(0,i.jsx)(n.li,{children:"Schema can be defined for customization of the indexing process."}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Reliable, Asynchronous Write Behind for long term persistency."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"(Near) Real Time Search."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Built on top of Lucene"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Each shard is a fully functional Lucene index"}),"\n",(0,i.jsx)(n.li,{children:"All the power of Lucene easily exposed through simple configuration / plugins."}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Per operation consistency"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Single document level operations are atomic, consistent, isolated and durable."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"real-world-use-cases",children:"Real world use cases"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Wikipedia"})," uses Elasticsearch to provide full-text search with highlighted search snippets, andsearch-as-you-typeanddid-you-meansuggestions."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"The Guardian"})," uses Elasticsearch to combine visitor logs with social -network data to provide real-time feedback to its editors about the public's response to new articles."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Stack Overflow"})," combines full-text search with geolocation queries and usesmore-like-thisto find related questions and answers."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"GitHub"})," uses Elasticsearch to query 130 billion lines of code."]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"navigating-this-book",children:"Navigating this book"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["Chapters ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/intro.html",children:"You Know, for Search..."})," through ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/inside-a-shard.html",children:"Inside a Shard"})," provide an introduction to Elasticsearch. They explain how to get your data in and out of Elasticsearch, how Elasticsearch interprets the data in your documents, how basic search works, and how to manage indices. Chapters ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/distributed-cluster.html",children:"Life Inside a Cluster"}),", ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/distributed-docs.html",children:"Distributed Document Store"}),", ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/distributed-search.html",children:"Distributed Search Execution"}),", and ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/inside-a-shard.html",children:"Inside a Shard"})," are supplemental chapters that provide more insight into the distributed processes at work, but are not required reading."]}),"\n",(0,i.jsxs)(n.li,{children:["Chapters ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/structured-search.html",children:"Structured Search"})," through ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/controlling-relevance.html",children:"Controlling Relevance"})," offer a deep dive into search - how to index and query your data to allow you to take advantage of more-advanced concepts such as word proximity, and partial matching. You will understand how relevance works and how to control it to ensure that the best results are on the first page."]}),"\n",(0,i.jsxs)(n.li,{children:["Chapters ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/language-intro.html",children:"Getting Started with Languages"})," through ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/fuzzy-matching.html",children:"Typoes and Mispelings"})," tackle the thorny subject of dealing with human language through effective use of analyzers and queries. We start with an easy approach to language analysis before diving into the complexities of language, alphabets, and sorting. We cover stemming, stopwords, synonyms, and fuzzy matching."]}),"\n",(0,i.jsxs)(n.li,{children:["Chapters ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/aggs-high-level.html",children:"High-Level Concepts"})," through ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/docvalues-and-fielddata.html",children:"Doc Values and Fielddata"})," discuss aggregations and analytics - ways to summarize and group your data to show overall trends."]}),"\n",(0,i.jsxs)(n.li,{children:["Chapters ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/geopoints.html",children:"Geo Points"})," through ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/geo-shapes.html",children:"Geo Shapes"})," present the two approaches to geolocation supported by Elasticsearch: lat/lon geo-points, and complex geo-shapes."]}),"\n",(0,i.jsxs)(n.li,{children:["Chapters ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/relations.html",children:"Handling Relationships"})," through ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/scale.html",children:"Designing for Scale"})," talk about how to model your data to work most efficiently with Elasticsearch. Representing relationships between entities is not as easy in a search engine as it is in a relational database, which has been designed for that purpose. These chapters also explain how to suit your index design to match the flow of data through your system."]}),"\n",(0,i.jsxs)(n.li,{children:["Finally, Chapters ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/cluster-admin.html",children:"Monitoring"})," through ",(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/post_deploy.html",children:"Post-Deployment"})," discuss moving to production: the important configurations, what to monitor, and how to diagnose and prevent problems."]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"contents",children:"Contents"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Getting Started"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"You Know, for Search"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Life Inside a Cluster"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Data In, Data Out"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Distributed Document Store"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Searching - The Basic Tools"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Mapping and Analysis"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Full-Body Search"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Sorting and Relevance"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Distributed Search Execution"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Index Management"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Inside a Shard"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Search in Depth"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Structured Search"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Full-Text Search"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Multifield Search"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Proximity Matching"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Partial Matching"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Controlling Relevance"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Dealing with Human Language"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Getting Started with Languages"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Indentifying Words"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Normalizing Tokens"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Reducing Words to Their Root Form"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Stopwords: Performance Versus Precision"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Synonyms"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Typoes and Mispelings"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Aggregations"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"High-Level Concepts"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Aggregation Test-Drive"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Building Bar Charts"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Looking at Time"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Scoping Aggregations"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Sorting Queries and Aggregations"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Sorting Multivalue Buckets"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Approximate Aggregations"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Significant Terms"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Doc Values and Fielddata"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Closing Thoughts"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Geolocation"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Geo Points"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Geohashes"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Geo Aggregations"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Goe Shapes"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Modeling Your Data"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Handling Relationships"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Nested Objects"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Parent-Child Relationship"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Designing for Scale"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Administration, Monitoring, and Deployment"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Monitoring"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Production Deployment"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Post-Deployment"}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"references",children:"References"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/index.html",children:"https://www.elastic.co/guide/en/elasticsearch/guide/current/index.html"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://dev.to/full_stackgeek/the-architecture-of-elasticsearch-basic-overview-3c84",children:"https://dev.to/full_stackgeek/the-architecture-of-elasticsearch-basic-overview-3c84"})})]})}function o(e={}){const{wrapper:n}={...(0,r.a)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},511151:(e,n,s)=>{s.d(n,{Z:()=>c,a:()=>l});var i=s(667294);const r={},t=i.createContext(r);function l(e){const n=i.useContext(t);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:l(e.components),i.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/3e4f5733.fc1fc8c2.js b/assets/js/3e4f5733.fc1fc8c2.js new file mode 100644 index 00000000000..fe3c7febc89 --- /dev/null +++ b/assets/js/3e4f5733.fc1fc8c2.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[68460],{681317:(e,i,n)=>{n.r(i),n.d(i,{assets:()=>c,contentTitle:()=>l,default:()=>o,frontMatter:()=>r,metadata:()=>a,toc:()=>h});var s=n(785893),t=n(511151);const r={},l="Elasticsearch: The Definitive Guide",a={id:"technologies/elasticsearch/elasticsearch-the-definitive-guide",title:"Elasticsearch: The Definitive Guide",description:"Elasticsearch is a distributed, scalable, real-time search and analytics engine. It enables you to search, analyze, and explore your data. It exists because raw data sitting on a hard drive is just not useful.",source:"@site/docs/technologies/elasticsearch/elasticsearch-the-definitive-guide.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/elasticsearch-the-definitive-guide",permalink:"/technologies/elasticsearch/elasticsearch-the-definitive-guide",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/elasticsearch-the-definitive-guide.md",tags:[],version:"current",lastUpdatedAt:1732901510,formattedLastUpdatedAt:"Nov 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"ElastAlert",permalink:"/technologies/elasticsearch/elastalert"},next:{title:"ELK/EFK Stack /Elastic Stack / ElasticSearch",permalink:"/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch"}},c={},h=[{value:"Features",id:"features",level:2},{value:"Real world use cases",id:"real-world-use-cases",level:2},{value:"Navigating this book",id:"navigating-this-book",level:2},{value:"Contents",id:"contents",level:2},{value:"1. Getting Started",id:"1-getting-started",level:3},{value:"2. Search in Depth",id:"2-search-in-depth",level:3},{value:"3. Dealing with Human Language",id:"3-dealing-with-human-language",level:3},{value:"4. Aggregations",id:"4-aggregations",level:3},{value:"5. Geolocation",id:"5-geolocation",level:3},{value:"6. Modeling Your Data",id:"6-modeling-your-data",level:3},{value:"7. Administration, Monitoring, and Deployment",id:"7-administration-monitoring-and-deployment",level:3},{value:"References",id:"references",level:2}];function d(e){const i={a:"a",h1:"h1",h2:"h2",h3:"h3",li:"li",p:"p",strong:"strong",ul:"ul",...(0,t.a)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(i.h1,{id:"elasticsearch-the-definitive-guide",children:"Elasticsearch: The Definitive Guide"}),"\n",(0,s.jsx)(i.p,{children:"Elasticsearch is a distributed, scalable, real-time search and analytics engine. It enables you to search, analyze, and explore your data. It exists because raw data sitting on a hard drive is just not useful."}),"\n",(0,s.jsx)(i.p,{children:"A distributed real-time document store whereevery fieldis indexed and searchable"}),"\n",(0,s.jsx)(i.h2,{id:"features",children:"Features"}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"Full Text Search"}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"real-time analytics of structured data"}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"Scalable search index"}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"Database queries only store and retrieve"}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"Indexing Preprocessing"}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Remove formatting"}),"\n",(0,s.jsx)(i.li,{children:"Remove stop words"}),"\n",(0,s.jsx)(i.li,{children:"Stemming - reduces the word down to its root"}),"\n",(0,s.jsx)(i.li,{children:"Add synonyms"}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"Corpus of documents"}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"Tokens"}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"Inverted index"}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"Add fuzziness"}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"Based on Apache Lucene"}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"First implementation was Compass 1 and Compass 2, and elasticsearch is the 3rd implementation"}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"Distributed and Highly Available Search Engine."}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Each index is fully sharded with a configurable number of shards."}),"\n",(0,s.jsx)(i.li,{children:"Each shard can have one or more replicas."}),"\n",(0,s.jsx)(i.li,{children:"Read / Search operations performed on any of the replica shards."}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"Multi Tenant."}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Support for more than one index."}),"\n",(0,s.jsx)(i.li,{children:"Index level configuration (number of shards, index storage, ...)."}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"Various set of APIs"}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"HTTP RESTful API"}),"\n",(0,s.jsx)(i.li,{children:"Native JavaAPI."}),"\n",(0,s.jsx)(i.li,{children:"All APIs perform automatic node operation rerouting."}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"Document oriented"}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"No need for upfront schema definition."}),"\n",(0,s.jsx)(i.li,{children:"Schema can be defined for customization of the indexing process."}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"Reliable, Asynchronous Write Behind for long term persistency."}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"(Near) Real Time Search."}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"Built on top of Lucene"}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Each shard is a fully functional Lucene index"}),"\n",(0,s.jsx)(i.li,{children:"All the power of Lucene easily exposed through simple configuration / plugins."}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(i.li,{children:["\n",(0,s.jsx)(i.p,{children:"Per operation consistency"}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Single document level operations are atomic, consistent, isolated and durable."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(i.h2,{id:"real-world-use-cases",children:"Real world use cases"}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsxs)(i.li,{children:[(0,s.jsx)(i.strong,{children:"Wikipedia"})," uses Elasticsearch to provide full-text search with highlighted search snippets, andsearch-as-you-typeanddid-you-meansuggestions."]}),"\n",(0,s.jsxs)(i.li,{children:[(0,s.jsx)(i.strong,{children:"The Guardian"})," uses Elasticsearch to combine visitor logs with social -network data to provide real-time feedback to its editors about the public's response to new articles."]}),"\n",(0,s.jsxs)(i.li,{children:[(0,s.jsx)(i.strong,{children:"Stack Overflow"})," combines full-text search with geolocation queries and usesmore-like-thisto find related questions and answers."]}),"\n",(0,s.jsxs)(i.li,{children:[(0,s.jsx)(i.strong,{children:"GitHub"})," uses Elasticsearch to query 130 billion lines of code."]}),"\n"]}),"\n",(0,s.jsx)(i.h2,{id:"navigating-this-book",children:"Navigating this book"}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsxs)(i.li,{children:["Chapters ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/intro.html",children:"You Know, for Search..."})," through ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/inside-a-shard.html",children:"Inside a Shard"})," provide an introduction to Elasticsearch. They explain how to get your data in and out of Elasticsearch, how Elasticsearch interprets the data in your documents, how basic search works, and how to manage indices. Chapters ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/distributed-cluster.html",children:"Life Inside a Cluster"}),", ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/distributed-docs.html",children:"Distributed Document Store"}),", ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/distributed-search.html",children:"Distributed Search Execution"}),", and ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/inside-a-shard.html",children:"Inside a Shard"})," are supplemental chapters that provide more insight into the distributed processes at work, but are not required reading."]}),"\n",(0,s.jsxs)(i.li,{children:["Chapters ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/structured-search.html",children:"Structured Search"})," through ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/controlling-relevance.html",children:"Controlling Relevance"})," offer a deep dive into search - how to index and query your data to allow you to take advantage of more-advanced concepts such as word proximity, and partial matching. You will understand how relevance works and how to control it to ensure that the best results are on the first page."]}),"\n",(0,s.jsxs)(i.li,{children:["Chapters ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/language-intro.html",children:"Getting Started with Languages"})," through ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/fuzzy-matching.html",children:"Typoes and Mispelings"})," tackle the thorny subject of dealing with human language through effective use of analyzers and queries. We start with an easy approach to language analysis before diving into the complexities of language, alphabets, and sorting. We cover stemming, stopwords, synonyms, and fuzzy matching."]}),"\n",(0,s.jsxs)(i.li,{children:["Chapters ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/aggs-high-level.html",children:"High-Level Concepts"})," through ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/docvalues-and-fielddata.html",children:"Doc Values and Fielddata"})," discuss aggregations and analytics - ways to summarize and group your data to show overall trends."]}),"\n",(0,s.jsxs)(i.li,{children:["Chapters ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/geopoints.html",children:"Geo Points"})," through ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/geo-shapes.html",children:"Geo Shapes"})," present the two approaches to geolocation supported by Elasticsearch: lat/lon geo-points, and complex geo-shapes."]}),"\n",(0,s.jsxs)(i.li,{children:["Chapters ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/relations.html",children:"Handling Relationships"})," through ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/scale.html",children:"Designing for Scale"})," talk about how to model your data to work most efficiently with Elasticsearch. Representing relationships between entities is not as easy in a search engine as it is in a relational database, which has been designed for that purpose. These chapters also explain how to suit your index design to match the flow of data through your system."]}),"\n",(0,s.jsxs)(i.li,{children:["Finally, Chapters ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/cluster-admin.html",children:"Monitoring"})," through ",(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/post_deploy.html",children:"Post-Deployment"})," discuss moving to production: the important configurations, what to monitor, and how to diagnose and prevent problems."]}),"\n"]}),"\n",(0,s.jsx)(i.h2,{id:"contents",children:"Contents"}),"\n",(0,s.jsx)(i.h3,{id:"1-getting-started",children:"1. Getting Started"}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"You Know, for Search"}),"\n",(0,s.jsx)(i.li,{children:"Life Inside a Cluster"}),"\n",(0,s.jsx)(i.li,{children:"Data In, Data Out"}),"\n",(0,s.jsx)(i.li,{children:"Distributed Document Store"}),"\n",(0,s.jsx)(i.li,{children:"Searching - The Basic Tools"}),"\n",(0,s.jsx)(i.li,{children:"Mapping and Analysis"}),"\n",(0,s.jsx)(i.li,{children:"Full-Body Search"}),"\n",(0,s.jsx)(i.li,{children:"Sorting and Relevance"}),"\n",(0,s.jsx)(i.li,{children:"Distributed Search Execution"}),"\n",(0,s.jsx)(i.li,{children:"Index Management"}),"\n",(0,s.jsx)(i.li,{children:"Inside a Shard"}),"\n"]}),"\n",(0,s.jsx)(i.h3,{id:"2-search-in-depth",children:"2. Search in Depth"}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Structured Search"}),"\n",(0,s.jsx)(i.li,{children:"Full-Text Search"}),"\n",(0,s.jsx)(i.li,{children:"Multifield Search"}),"\n",(0,s.jsx)(i.li,{children:"Proximity Matching"}),"\n",(0,s.jsx)(i.li,{children:"Partial Matching"}),"\n",(0,s.jsx)(i.li,{children:"Controlling Relevance"}),"\n"]}),"\n",(0,s.jsx)(i.h3,{id:"3-dealing-with-human-language",children:"3. Dealing with Human Language"}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Getting Started with Languages"}),"\n",(0,s.jsx)(i.li,{children:"Indentifying Words"}),"\n",(0,s.jsx)(i.li,{children:"Normalizing Tokens"}),"\n",(0,s.jsx)(i.li,{children:"Reducing Words to Their Root Form"}),"\n",(0,s.jsx)(i.li,{children:"Stopwords: Performance Versus Precision"}),"\n",(0,s.jsx)(i.li,{children:"Synonyms"}),"\n",(0,s.jsx)(i.li,{children:"Typoes and Mispelings"}),"\n"]}),"\n",(0,s.jsx)(i.h3,{id:"4-aggregations",children:"4. Aggregations"}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"High-Level Concepts"}),"\n",(0,s.jsx)(i.li,{children:"Aggregation Test-Drive"}),"\n",(0,s.jsx)(i.li,{children:"Building Bar Charts"}),"\n",(0,s.jsx)(i.li,{children:"Looking at Time"}),"\n",(0,s.jsx)(i.li,{children:"Scoping Aggregations"}),"\n",(0,s.jsx)(i.li,{children:"Sorting Queries and Aggregations"}),"\n",(0,s.jsx)(i.li,{children:"Sorting Multivalue Buckets"}),"\n",(0,s.jsx)(i.li,{children:"Approximate Aggregations"}),"\n",(0,s.jsx)(i.li,{children:"Significant Terms"}),"\n",(0,s.jsx)(i.li,{children:"Doc Values and Fielddata"}),"\n",(0,s.jsx)(i.li,{children:"Closing Thoughts"}),"\n"]}),"\n",(0,s.jsx)(i.h3,{id:"5-geolocation",children:"5. Geolocation"}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Geo Points"}),"\n",(0,s.jsx)(i.li,{children:"Geohashes"}),"\n",(0,s.jsx)(i.li,{children:"Geo Aggregations"}),"\n",(0,s.jsx)(i.li,{children:"Goe Shapes"}),"\n"]}),"\n",(0,s.jsx)(i.h3,{id:"6-modeling-your-data",children:"6. Modeling Your Data"}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Handling Relationships"}),"\n",(0,s.jsx)(i.li,{children:"Nested Objects"}),"\n",(0,s.jsx)(i.li,{children:"Parent-Child Relationship"}),"\n",(0,s.jsx)(i.li,{children:"Designing for Scale"}),"\n"]}),"\n",(0,s.jsx)(i.h3,{id:"7-administration-monitoring-and-deployment",children:"7. Administration, Monitoring, and Deployment"}),"\n",(0,s.jsxs)(i.ul,{children:["\n",(0,s.jsx)(i.li,{children:"Monitoring"}),"\n",(0,s.jsx)(i.li,{children:"Production Deployment"}),"\n",(0,s.jsx)(i.li,{children:"Post-Deployment"}),"\n"]}),"\n",(0,s.jsx)(i.h2,{id:"references",children:"References"}),"\n",(0,s.jsx)(i.p,{children:(0,s.jsx)(i.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/index.html",children:"https://www.elastic.co/guide/en/elasticsearch/guide/current/index.html"})}),"\n",(0,s.jsx)(i.p,{children:(0,s.jsx)(i.a,{href:"https://dev.to/full_stackgeek/the-architecture-of-elasticsearch-basic-overview-3c84",children:"https://dev.to/full_stackgeek/the-architecture-of-elasticsearch-basic-overview-3c84"})})]})}function o(e={}){const{wrapper:i}={...(0,t.a)(),...e.components};return i?(0,s.jsx)(i,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}},511151:(e,i,n)=>{n.d(i,{Z:()=>a,a:()=>l});var s=n(667294);const t={},r=s.createContext(t);function l(e){const i=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(i):{...i,...e}}),[i,e])}function a(e){let i;return i=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:l(e.components),s.createElement(r.Provider,{value:i},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/419e391a.0d734886.js b/assets/js/419e391a.0d734886.js deleted file mode 100644 index 72c092b23aa..00000000000 --- a/assets/js/419e391a.0d734886.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[18298],{796354:(e,s,a)=>{a.r(s),a.d(s,{assets:()=>r,contentTitle:()=>l,default:()=>d,frontMatter:()=>c,metadata:()=>n,toc:()=>o});var t=a(785893),i=a(511151);const c={},l="ELK/EFK Stack /Elastic Stack / ElasticSearch",n={id:"technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch",title:"ELK/EFK Stack /Elastic Stack / ElasticSearch",description:"ELK stands for Elasticsearch - Logstash - Kibana",source:"@site/docs/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch",permalink:"/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch.md",tags:[],version:"current",lastUpdatedAt:1701793554,formattedLastUpdatedAt:"Dec 5, 2023",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Elasticsearch: The Definitive Guide",permalink:"/technologies/elasticsearch/elasticsearch-the-definitive-guide"},next:{title:"Full Text Searches",permalink:"/technologies/elasticsearch/full-text-searches"}},r={},o=[{value:"ELK stands for Elasticsearch - Logstash - Kibana",id:"elk-stands-for-elasticsearch---logstash---kibana",level:2},{value:"Elasticsearch",id:"elasticsearch",level:2},{value:"Solr, ElasticSearch",id:"solr-elasticsearch",level:2},{value:"Logstash",id:"logstash",level:2},{value:"S3 output plugin",id:"s3-output-plugin",level:2},{value:"Kibana",id:"kibana",level:2},{value:"Lumberjack Protocol",id:"lumberjack-protocol",level:2},{value:"References",id:"references",level:2}];function h(e){const s={a:"a",h1:"h1",h2:"h2",img:"img",p:"p",...(0,i.a)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(s.h1,{id:"elkefk-stack-elastic-stack--elasticsearch",children:"ELK/EFK Stack /Elastic Stack / ElasticSearch"}),"\n",(0,t.jsx)(s.h2,{id:"elk-stands-for-elasticsearch---logstash---kibana",children:"ELK stands for Elasticsearch - Logstash - Kibana"}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.img,{alt:"image",src:a(213822).Z+"",width:"1099",height:"1092"})}),"\n",(0,t.jsx)(s.h2,{id:"elasticsearch",children:"Elasticsearch"}),"\n",(0,t.jsx)(s.p,{children:"Elasticsearch is a search and analytics engine."}),"\n",(0,t.jsx)(s.p,{children:"Elasticsearch is a NoSQL database that is based on the Lucene search engine."}),"\n",(0,t.jsx)(s.p,{children:"Elasticsearch uses Apache Lucene to index documents for fast searching."}),"\n",(0,t.jsx)(s.h2,{id:"solr-elasticsearch",children:"Solr, ElasticSearch"}),"\n",(0,t.jsx)(s.p,{children:"Search platform"}),"\n",(0,t.jsx)(s.p,{children:"Highly available"}),"\n",(0,t.jsx)(s.p,{children:"Very scalable"}),"\n",(0,t.jsx)(s.p,{children:"Fault tolerant search platform"}),"\n",(0,t.jsx)(s.p,{children:"Provides full-text search"}),"\n",(0,t.jsx)(s.h2,{id:"logstash",children:"Logstash"}),"\n",(0,t.jsx)(s.p,{children:'Logstash is a server\u2011side data processing pipeline that ingests data from multiple sources simultaneously, transforms it, and then sends it to a "stash" like Elasticsearch.'}),"\n",(0,t.jsx)(s.p,{children:"Logstash is a log pipeline tool that accepts inputs from various sources, executes different transformations, and exports the data to various targets."}),"\n",(0,t.jsx)(s.h2,{id:"s3-output-plugin",children:"S3 output plugin"}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.a,{href:"https://www.elastic.co/guide/en/logstash/current/plugins-outputs-s3.html",children:"https://www.elastic.co/guide/en/logstash/current/plugins-outputs-s3.html"})}),"\n",(0,t.jsx)(s.h2,{id:"kibana",children:"Kibana"}),"\n",(0,t.jsx)(s.p,{children:"Kibana lets users visualize data with charts and graphs in Elasticsearch."}),"\n",(0,t.jsx)(s.p,{children:"Kibana is a visualization layer that works on top of Elasticsearch."}),"\n",(0,t.jsx)(s.p,{children:"kibana.example.com/status - to show all status of plugins and elasticsearch"}),"\n",(0,t.jsx)(s.p,{children:"Together, these three different open source products are most commonly used in log analysis in IT environments (though there are many more use cases for the ELK Stack starting including business intelligence, security and compliance, and web analytics). Logstash collects and parses logs, and then Elasticsearch indexes and stores the information. Kibana then presents the data in visualizations that provide actionable insights into one's environment."}),"\n",(0,t.jsx)(s.h2,{id:"lumberjack-protocol",children:"Lumberjack Protocol"}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.a,{href:"https://logz.io/blog/filebeat-vs-logstash",children:"https://logz.io/blog/filebeat-vs-logstash"})}),"\n",(0,t.jsx)(s.h2,{id:"references",children:"References"}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.a,{href:"https://www.elastic.co/elk-stack",children:"https://www.elastic.co/elk-stack"})}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.a,{href:"https://qbox.io/blog/elasticsearch-logstash-kibana-apache-logs",children:"https://qbox.io/blog/elasticsearch-logstash-kibana-apache-logs"})})]})}function d(e={}){const{wrapper:s}={...(0,i.a)(),...e.components};return s?(0,t.jsx)(s,{...e,children:(0,t.jsx)(h,{...e})}):h(e)}},213822:(e,s,a)=>{a.d(s,{Z:()=>t});const t=a.p+"assets/images/Technologies-Elasticsearch-ELK-EFK-Stack-Elastic-Stack-ElasticSearch-image1-0780803a93e8b1fad3350e70a10c1339.jpg"},511151:(e,s,a)=>{a.d(s,{Z:()=>n,a:()=>l});var t=a(667294);const i={},c=t.createContext(i);function l(e){const s=t.useContext(c);return t.useMemo((function(){return"function"==typeof e?e(s):{...s,...e}}),[s,e])}function n(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:l(e.components),t.createElement(c.Provider,{value:s},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/419e391a.9aae6213.js b/assets/js/419e391a.9aae6213.js new file mode 100644 index 00000000000..7339edf18e3 --- /dev/null +++ b/assets/js/419e391a.9aae6213.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[18298],{796354:(e,s,a)=>{a.r(s),a.d(s,{assets:()=>r,contentTitle:()=>l,default:()=>d,frontMatter:()=>c,metadata:()=>n,toc:()=>o});var t=a(785893),i=a(511151);const c={},l="ELK/EFK Stack /Elastic Stack / ElasticSearch",n={id:"technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch",title:"ELK/EFK Stack /Elastic Stack / ElasticSearch",description:"ELK stands for Elasticsearch - Logstash - Kibana",source:"@site/docs/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch",permalink:"/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch.md",tags:[],version:"current",lastUpdatedAt:1732901510,formattedLastUpdatedAt:"Nov 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Elasticsearch: The Definitive Guide",permalink:"/technologies/elasticsearch/elasticsearch-the-definitive-guide"},next:{title:"Full Text Searches",permalink:"/technologies/elasticsearch/full-text-searches"}},r={},o=[{value:"ELK stands for Elasticsearch - Logstash - Kibana",id:"elk-stands-for-elasticsearch---logstash---kibana",level:2},{value:"Elasticsearch",id:"elasticsearch",level:2},{value:"Solr, ElasticSearch",id:"solr-elasticsearch",level:2},{value:"Logstash",id:"logstash",level:2},{value:"S3 output plugin",id:"s3-output-plugin",level:2},{value:"Kibana",id:"kibana",level:2},{value:"Lumberjack Protocol",id:"lumberjack-protocol",level:2},{value:"References",id:"references",level:2}];function h(e){const s={a:"a",h1:"h1",h2:"h2",img:"img",li:"li",p:"p",ul:"ul",...(0,i.a)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(s.h1,{id:"elkefk-stack-elastic-stack--elasticsearch",children:"ELK/EFK Stack /Elastic Stack / ElasticSearch"}),"\n",(0,t.jsx)(s.h2,{id:"elk-stands-for-elasticsearch---logstash---kibana",children:"ELK stands for Elasticsearch - Logstash - Kibana"}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.img,{alt:"image",src:a(213822).Z+"",width:"1099",height:"1092"})}),"\n",(0,t.jsx)(s.h2,{id:"elasticsearch",children:"Elasticsearch"}),"\n",(0,t.jsxs)(s.ul,{children:["\n",(0,t.jsx)(s.li,{children:"Elasticsearch is a search and analytics engine."}),"\n",(0,t.jsx)(s.li,{children:"Elasticsearch is a NoSQL database that is based on the Lucene search engine."}),"\n",(0,t.jsx)(s.li,{children:"Elasticsearch uses Apache Lucene to index documents for fast searching."}),"\n"]}),"\n",(0,t.jsx)(s.h2,{id:"solr-elasticsearch",children:"Solr, ElasticSearch"}),"\n",(0,t.jsxs)(s.ul,{children:["\n",(0,t.jsx)(s.li,{children:"Search platform"}),"\n",(0,t.jsx)(s.li,{children:"Highly available"}),"\n",(0,t.jsx)(s.li,{children:"Very scalable"}),"\n",(0,t.jsx)(s.li,{children:"Fault tolerant search platform"}),"\n",(0,t.jsx)(s.li,{children:"Provides full-text search"}),"\n"]}),"\n",(0,t.jsx)(s.h2,{id:"logstash",children:"Logstash"}),"\n",(0,t.jsx)(s.p,{children:'Logstash is a server\u2011side data processing pipeline that ingests data from multiple sources simultaneously, transforms it, and then sends it to a "stash" like Elasticsearch.'}),"\n",(0,t.jsx)(s.p,{children:"Logstash is a log pipeline tool that accepts inputs from various sources, executes different transformations, and exports the data to various targets."}),"\n",(0,t.jsx)(s.h2,{id:"s3-output-plugin",children:"S3 output plugin"}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.a,{href:"https://www.elastic.co/guide/en/logstash/current/plugins-outputs-s3.html",children:"https://www.elastic.co/guide/en/logstash/current/plugins-outputs-s3.html"})}),"\n",(0,t.jsx)(s.h2,{id:"kibana",children:"Kibana"}),"\n",(0,t.jsx)(s.p,{children:"Kibana lets users visualize data with charts and graphs in Elasticsearch."}),"\n",(0,t.jsx)(s.p,{children:"Kibana is a visualization layer that works on top of Elasticsearch."}),"\n",(0,t.jsx)(s.p,{children:"kibana.example.com/status - to show all status of plugins and elasticsearch"}),"\n",(0,t.jsx)(s.p,{children:"Together, these three different open source products are most commonly used in log analysis in IT environments (though there are many more use cases for the ELK Stack starting including business intelligence, security and compliance, and web analytics). Logstash collects and parses logs, and then Elasticsearch indexes and stores the information. Kibana then presents the data in visualizations that provide actionable insights into one's environment."}),"\n",(0,t.jsx)(s.h2,{id:"lumberjack-protocol",children:"Lumberjack Protocol"}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.a,{href:"https://logz.io/blog/filebeat-vs-logstash",children:"https://logz.io/blog/filebeat-vs-logstash"})}),"\n",(0,t.jsx)(s.h2,{id:"references",children:"References"}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.a,{href:"https://www.elastic.co/elk-stack",children:"https://www.elastic.co/elk-stack"})}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.a,{href:"https://qbox.io/blog/elasticsearch-logstash-kibana-apache-logs",children:"https://qbox.io/blog/elasticsearch-logstash-kibana-apache-logs"})})]})}function d(e={}){const{wrapper:s}={...(0,i.a)(),...e.components};return s?(0,t.jsx)(s,{...e,children:(0,t.jsx)(h,{...e})}):h(e)}},213822:(e,s,a)=>{a.d(s,{Z:()=>t});const t=a.p+"assets/images/Technologies-Elasticsearch-ELK-EFK-Stack-Elastic-Stack-ElasticSearch-image1-0780803a93e8b1fad3350e70a10c1339.jpg"},511151:(e,s,a)=>{a.d(s,{Z:()=>n,a:()=>l});var t=a(667294);const i={},c=t.createContext(i);function l(e){const s=t.useContext(c);return t.useMemo((function(){return"function"==typeof e?e(s):{...s,...e}}),[s,e])}function n(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:l(e.components),t.createElement(c.Provider,{value:s},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/44cd3922.50938b07.js b/assets/js/44cd3922.50938b07.js deleted file mode 100644 index d50153d37a8..00000000000 --- a/assets/js/44cd3922.50938b07.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[76420],{775727:(e,i,n)=>{n.r(i),n.d(i,{assets:()=>c,contentTitle:()=>s,default:()=>l,frontMatter:()=>r,metadata:()=>o,toc:()=>h});var t=n(785893),a=n(511151);const r={},s="Information Retrieval",o={id:"technologies/elasticsearch/information-retrieval",title:"Information Retrieval",description:"Link Analysis and Web Search",source:"@site/docs/technologies/elasticsearch/information-retrieval.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/information-retrieval",permalink:"/technologies/elasticsearch/information-retrieval",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/information-retrieval.md",tags:[],version:"current",lastUpdatedAt:1707138374,formattedLastUpdatedAt:"Feb 5, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Getting Started",permalink:"/technologies/elasticsearch/getting-started"},next:{title:"Internal Working",permalink:"/technologies/elasticsearch/internal-working"}},c={},h=[{value:"Link Analysis and Web Search",id:"link-analysis-and-web-search",level:2},{value:"tf-idf (term frequency - inverse document frequency)",id:"tf-idf-term-frequency---inverse-document-frequency",level:2},{value:"Term frequency",id:"term-frequency",level:2},{value:"Inverse document frequency",id:"inverse-document-frequency",level:2},{value:"References",id:"references",level:2},{value:"Okapi BM25",id:"okapi-bm25",level:2},{value:"Knowledge graph, Keyword Search",id:"knowledge-graph-keyword-search",level:2},{value:"Neural Search",id:"neural-search",level:2},{value:"What can it do?",id:"what-can-it-do",level:2},{value:"Think outside the (search)box",id:"think-outside-the-searchbox",level:2}];function d(e){const i={a:"a",h1:"h1",h2:"h2",img:"img",li:"li",ol:"ol",p:"p",ul:"ul",...(0,a.a)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(i.h1,{id:"information-retrieval",children:"Information Retrieval"}),"\n",(0,t.jsx)(i.h2,{id:"link-analysis-and-web-search",children:"Link Analysis and Web Search"}),"\n",(0,t.jsx)(i.p,{children:'Talks about "How Google Search indexes pages"'}),"\n",(0,t.jsx)(i.h2,{id:"tf-idf-term-frequency---inverse-document-frequency",children:"tf-idf (term frequency - inverse document frequency)"}),"\n",(0,t.jsxs)(i.p,{children:["In ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Information_retrieval",children:"information retrieval"}),", tf--idforTFIDF, short forterm frequency--inverse document frequency, is a numerical statistic that is intended to reflect how important a word is to a ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Document",children:"document"})," in a collection or ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Text_corpus",children:"corpus"}),". It is often used as a ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Weighting_factor",children:"weighting factor"})," in searches of information retrieval, ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Text_mining",children:"text mining"}),", and ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/User_modeling",children:"user modeling"}),". The tf--idf value increases ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Proportionality_(mathematics)",children:"proportionally"})," to the number of times a word appears in the document and is offset by the number of documents in the corpus that contain the word, which helps to adjust for the fact that some words appear more frequently in general. Tf--idf is one of the most popular term-weighting schemes today; 83% of text-based recommender systems in digital libraries use tf--idf."]}),"\n",(0,t.jsxs)(i.p,{children:["Variations of the tf--idf weighting scheme are often used by ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Search_engine",children:"search engines"})," as a central tool in scoring and ranking a document's ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Relevance_(information_retrieval)",children:"relevance"})," given a user ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Information_retrieval",children:"query"}),". tf--idf can be successfully used for ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Stop-words",children:"stop-words"})," filtering in various subject fields, including ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Automatic_summarization",children:"text summarization"})," and classification."]}),"\n",(0,t.jsxs)(i.p,{children:["One of the simplest ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Ranking_function",children:"ranking functions"})," is computed by summing the tf--idf for each query term; many more sophisticated ranking functions are variants of this simple model."]}),"\n",(0,t.jsx)(i.h2,{id:"term-frequency",children:"Term frequency"}),"\n",(0,t.jsxs)(i.p,{children:['Suppose we have a set of English text documents and wish to rank which document is most relevant to the query, "the brown cow". A simple way to start out is by eliminating documents that do not contain all three words "the", "brown", and "cow", but this still leaves many documents. To further distinguish them, we might count the number of times each term occurs in each document; the number of times a term occurs in a document is called itsterm frequency. However, in the case where the length of documents varies greatly, adjustments are often made (see definition below). The first form of term weighting is due to ',(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Hans_Peter_Luhn",children:"Hans Peter Luhn"}),"(1957) which may be summarized as:"]}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"The weight of a term that occurs in a document is simply proportional to the term frequency."}),"\n"]}),"\n",(0,t.jsx)(i.h2,{id:"inverse-document-frequency",children:"Inverse document frequency"}),"\n",(0,t.jsx)(i.p,{children:'Because the term "the" is so common, term frequency will tend to incorrectly emphasize documents which happen to use the word "the" more frequently, without giving enough weight to the more meaningful terms "brown" and "cow". The term "the" is not a good keyword to distinguish relevant and non-relevant documents and terms, unlike the less-common words "brown" and "cow". Hence aninverse document frequencyfactor is incorporated which diminishes the weight of terms that occur very frequently in the document set and increases the weight of terms that occur rarely.'}),"\n",(0,t.jsxs)(i.p,{children:[(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Karen_Sp%C3%A4rck_Jones",children:"Karen Sp\xe4rck Jones"}),"(1972) conceived a statistical interpretation of term specificity called Inverse Document Frequency (idf), which became a cornerstone of term weighting:"]}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"The specificity of a term can be quantified as an inverse function of the number of documents in which it occurs."}),"\n"]}),"\n",(0,t.jsx)(i.p,{children:"Just the idea that you can enter in a query and then you could turn that query into a vector and then you have all of your documents also modeled as vectors and then you have a mathematical relationship that you can define between your search query and each of those documents. You can model them in space and then find how the query differs from all of those documents in space and then you have a ranking."}),"\n",(0,t.jsx)(i.h2,{id:"references",children:"References"}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Tf%E2%80%93idf",children:"https://en.wikipedia.org/wiki/Tf%E2%80%93idf"})}),"\n",(0,t.jsx)(i.h2,{id:"okapi-bm25",children:"Okapi BM25"}),"\n",(0,t.jsxs)(i.p,{children:["In ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Information_retrieval",children:"information retrieval"}),", Okapi BM25(BM stands for Best Matching) is a ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Ranking_function",children:"ranking function"})," used by ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Search_engine",children:"search engines"})," to rank matching documents according to their ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Relevance_(information_retrieval)",children:"relevance"})," to a given search query. It is based on the ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Probabilistic_relevance_model",children:"probabilistic retrieval framework"})," developed in the 1970s and 1980s by ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Stephen_E._Robertson",children:"Stephen E. Robertson"}),", ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Karen_Sp%C3%A4rck_Jones",children:"Karen Sp\xe4rck Jones"}),", and others."]}),"\n",(0,t.jsxs)(i.p,{children:['The name of the actual ranking function is BM25. To set the right context, however, it is usually referred to as "Okapi BM25", since the Okapi information retrieval system, implemented at ',(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/London",children:"London"}),"'s ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/City_University,_London",children:"City University"})," in the 1980s and 1990s, was the first system to implement this function."]}),"\n",(0,t.jsxs)(i.p,{children:["BM25 and its newer variants, e.g. BM25F (a version of BM25 that can take document structure and anchor text into account), represent state-of-the-art ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/TF-IDF",children:"TF-IDF"}),"-like retrieval functions used in document retrieval."]}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(795634).Z+"",width:"1328",height:"690"})}),"\n",(0,t.jsx)(i.h2,{id:"knowledge-graph-keyword-search",children:"Knowledge graph, Keyword Search"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Inverted Index -> Term / Document"}),"\n",(0,t.jsxs)(i.li,{children:["Embeddings","\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Word / Phrase embeddings"}),"\n",(0,t.jsx)(i.li,{children:"Sentence embeddings"}),"\n",(0,t.jsx)(i.li,{children:"Paragraph embeddings"}),"\n",(0,t.jsx)(i.li,{children:"Document embeddings"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(801117).Z+"",width:"1089",height:"637"})}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(788612).Z+"",width:"1323",height:"747"})}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"One hot encoding"}),"\n"]}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(248398).Z+"",width:"1305",height:"737"})}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(446208).Z+"",width:"1329",height:"504"})}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Dimensionality reduction"}),"\n",(0,t.jsx)(i.li,{children:"Vector similarity scoring"}),"\n"]}),"\n",(0,t.jsx)(i.p,{children:"Solr"}),"\n",(0,t.jsxs)(i.ol,{children:["\n",(0,t.jsxs)(i.li,{children:["\n",(0,t.jsx)(i.p,{children:"Streaming expressions"}),"\n"]}),"\n",(0,t.jsxs)(i.li,{children:["\n",(0,t.jsx)(i.p,{children:"Vectors fields/functions in solr"}),"\n"]}),"\n"]}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(291539).Z+"",width:"1100",height:"618"})}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(497715).Z+"",width:"1100",height:"573"})}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(882069).Z+"",width:"1100",height:"619"})}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(580707).Z+"",width:"1099",height:"534"})}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(639332).Z+"",width:"1100",height:"615"})}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(592583).Z+"",width:"1100",height:"559"})}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.a,{href:"https://www.youtube.com/watch?v=JrORpCkuK3g",children:"Thought Vectors, Knowledge Graphs, and Curious Death(?) of Keyword Search"})}),"\n",(0,t.jsx)(i.h2,{id:"neural-search",children:"Neural Search"}),"\n",(0,t.jsx)(i.p,{children:"The core idea of neural search is to leverage state-of-the-art deep neural networks to buildeverycomponent of a search system. In short, neural search is deep neural network-powered information retrieval.In academia, it's often calledneural IR."}),"\n",(0,t.jsx)(i.h2,{id:"what-can-it-do",children:"What can it do?"}),"\n",(0,t.jsx)(i.p,{children:"Thanks to recent advances in deep neural networks, a neural search system can go way beyond simple text search. It enables advanced intelligence on all kinds of unstructured data, such as images, audio, video, PDF, 3D mesh, you name it."}),"\n",(0,t.jsx)(i.p,{children:"For example, retrieving animation according to some beats; finding the best-fit memes according to some jokes; scanning a table with your iPhone's LiDAR camera and finding similar furniture at IKEA. Neural search systems enable what traditional search can't: multi/cross-modal data retrieval."}),"\n",(0,t.jsx)(i.h2,{id:"think-outside-the-searchbox",children:"Think outside the (search)box"}),"\n",(0,t.jsx)(i.p,{children:"Many neural search-powered applications do not have a search box:"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"A question-answering chatbot can be powered by neural search: by first indexing all hard-coded QA pairs and then semantically mapping user dialog to those pairs."}),"\n",(0,t.jsx)(i.li,{children:"A smart speaker can be powered by neural search: by applying STT (speech-to-text) and semantically mapping text to internal commands."}),"\n",(0,t.jsx)(i.li,{children:"A recommendation system can be powered by neural search: by embedding user-item information into vectors and finding top-K nearest neighbours of a user/item."}),"\n"]}),"\n",(0,t.jsx)(i.p,{children:"Neural search creates a new way to comprehend the world. It is creating new doors that lead to new businesses."}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.a,{href:"https://github.com/jina-ai/jina/blob/master/.github/2.0/neural-search",children:"https://github.com/jina-ai/jina/blob/master/.github/2.0/neural-search"})})]})}function l(e={}){const{wrapper:i}={...(0,a.a)(),...e.components};return i?(0,t.jsx)(i,{...e,children:(0,t.jsx)(d,{...e})}):d(e)}},795634:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image1-eddc0221bad070198a08b1ad3d8dc225.jpg"},639332:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image10-53ed379908c0b5ce523202431a51b44e.jpg"},592583:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image11-50917a148d3edae28c69e0dc38b481d1.jpg"},801117:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image2-a6573161eabfa95cf28ae2b2510e56a3.jpg"},788612:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image3-97f5fd598d3b35452961fdc352189e0d.jpg"},248398:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image4-5ec3cfa9b6da0d79739907f25f1bbc52.jpg"},446208:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image5-094c636241c2ac624407dfc68a2df001.jpg"},291539:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image6-872ede0cf53b40cd69d53a42d2ac534f.jpg"},497715:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image7-0f6de28b21282ab03965548e09d1d8d6.jpg"},882069:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image8-de3447c8f1e8c47270d3eecf3ead1a12.jpg"},580707:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image9-8ab0ba584a648f0779618e606fc655dc.jpg"},511151:(e,i,n)=>{n.d(i,{Z:()=>o,a:()=>s});var t=n(667294);const a={},r=t.createContext(a);function s(e){const i=t.useContext(r);return t.useMemo((function(){return"function"==typeof e?e(i):{...i,...e}}),[i,e])}function o(e){let i;return i=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:s(e.components),t.createElement(r.Provider,{value:i},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/44cd3922.fa0eba1e.js b/assets/js/44cd3922.fa0eba1e.js new file mode 100644 index 00000000000..7e579c857e5 --- /dev/null +++ b/assets/js/44cd3922.fa0eba1e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[76420],{775727:(e,i,n)=>{n.r(i),n.d(i,{assets:()=>c,contentTitle:()=>s,default:()=>l,frontMatter:()=>r,metadata:()=>o,toc:()=>h});var t=n(785893),a=n(511151);const r={},s="Information Retrieval",o={id:"technologies/elasticsearch/information-retrieval",title:"Information Retrieval",description:"Link Analysis and Web Search",source:"@site/docs/technologies/elasticsearch/information-retrieval.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/information-retrieval",permalink:"/technologies/elasticsearch/information-retrieval",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/information-retrieval.md",tags:[],version:"current",lastUpdatedAt:1732901510,formattedLastUpdatedAt:"Nov 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Getting Started",permalink:"/technologies/elasticsearch/getting-started"},next:{title:"Internal Working",permalink:"/technologies/elasticsearch/internal-working"}},c={},h=[{value:"Link Analysis and Web Search",id:"link-analysis-and-web-search",level:2},{value:"tf-idf (term frequency - inverse document frequency)",id:"tf-idf-term-frequency---inverse-document-frequency",level:2},{value:"Term frequency",id:"term-frequency",level:2},{value:"Inverse document frequency",id:"inverse-document-frequency",level:2},{value:"References",id:"references",level:2},{value:"Okapi BM25",id:"okapi-bm25",level:2},{value:"Knowledge graph, Keyword Search",id:"knowledge-graph-keyword-search",level:2},{value:"Solr",id:"solr",level:3},{value:"Neural Search",id:"neural-search",level:2},{value:"What can it do?",id:"what-can-it-do",level:3},{value:"Think outside the (search)box",id:"think-outside-the-searchbox",level:3}];function d(e){const i={a:"a",h1:"h1",h2:"h2",h3:"h3",img:"img",li:"li",ol:"ol",p:"p",ul:"ul",...(0,a.a)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(i.h1,{id:"information-retrieval",children:"Information Retrieval"}),"\n",(0,t.jsx)(i.h2,{id:"link-analysis-and-web-search",children:"Link Analysis and Web Search"}),"\n",(0,t.jsx)(i.p,{children:'Talks about "How Google Search indexes pages"'}),"\n",(0,t.jsx)(i.h2,{id:"tf-idf-term-frequency---inverse-document-frequency",children:"tf-idf (term frequency - inverse document frequency)"}),"\n",(0,t.jsxs)(i.p,{children:["In ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Information_retrieval",children:"information retrieval"}),", tf-id for TFIDF, short for term frequency - inverse document frequency, is a numerical statistic that is intended to reflect how important a word is to a ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Document",children:"document"})," in a collection or ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Text_corpus",children:"corpus"}),". It is often used as a ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Weighting_factor",children:"weighting factor"})," in searches of information retrieval, ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Text_mining",children:"text mining"}),", and ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/User_modeling",children:"user modeling"}),". The tf--idf value increases ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Proportionality_(mathematics)",children:"proportionally"})," to the number of times a word appears in the document and is offset by the number of documents in the corpus that contain the word, which helps to adjust for the fact that some words appear more frequently in general. Tf--idf is one of the most popular term-weighting schemes today; 83% of text-based recommender systems in digital libraries use tf-idf."]}),"\n",(0,t.jsxs)(i.p,{children:["Variations of the tf-idf weighting scheme are often used by ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Search_engine",children:"search engines"})," as a central tool in scoring and ranking a document's ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Relevance_(information_retrieval)",children:"relevance"})," given a user ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Information_retrieval",children:"query"}),". tf-idf can be successfully used for ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Stop-words",children:"stop-words"})," filtering in various subject fields, including ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Automatic_summarization",children:"text summarization"})," and classification."]}),"\n",(0,t.jsxs)(i.p,{children:["One of the simplest ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Ranking_function",children:"ranking functions"})," is computed by summing the tf--idf for each query term; many more sophisticated ranking functions are variants of this simple model."]}),"\n",(0,t.jsx)(i.h2,{id:"term-frequency",children:"Term frequency"}),"\n",(0,t.jsxs)(i.p,{children:['Suppose we have a set of English text documents and wish to rank which document is most relevant to the query, "the brown cow". A simple way to start out is by eliminating documents that do not contain all three words "the", "brown", and "cow", but this still leaves many documents. To further distinguish them, we might count the number of times each term occurs in each document; the number of times a term occurs in a document is called itsterm frequency. However, in the case where the length of documents varies greatly, adjustments are often made (see definition below). The first form of term weighting is due to ',(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Hans_Peter_Luhn",children:"Hans Peter Luhn"}),"(1957) which may be summarized as:"]}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"The weight of a term that occurs in a document is simply proportional to the term frequency."}),"\n"]}),"\n",(0,t.jsx)(i.h2,{id:"inverse-document-frequency",children:"Inverse document frequency"}),"\n",(0,t.jsx)(i.p,{children:'Because the term "the" is so common, term frequency will tend to incorrectly emphasize documents which happen to use the word "the" more frequently, without giving enough weight to the more meaningful terms "brown" and "cow". The term "the" is not a good keyword to distinguish relevant and non-relevant documents and terms, unlike the less-common words "brown" and "cow". Hence aninverse document frequencyfactor is incorporated which diminishes the weight of terms that occur very frequently in the document set and increases the weight of terms that occur rarely.'}),"\n",(0,t.jsxs)(i.p,{children:[(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Karen_Sp%C3%A4rck_Jones",children:"Karen Sp\xe4rck Jones"}),"(1972) conceived a statistical interpretation of term specificity called Inverse Document Frequency (idf), which became a cornerstone of term weighting:"]}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"The specificity of a term can be quantified as an inverse function of the number of documents in which it occurs."}),"\n"]}),"\n",(0,t.jsx)(i.p,{children:"Just the idea that you can enter in a query and then you could turn that query into a vector and then you have all of your documents also modeled as vectors and then you have a mathematical relationship that you can define between your search query and each of those documents. You can model them in space and then find how the query differs from all of those documents in space and then you have a ranking."}),"\n",(0,t.jsx)(i.h2,{id:"references",children:"References"}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Tf%E2%80%93idf",children:"https://en.wikipedia.org/wiki/Tf%E2%80%93idf"})}),"\n",(0,t.jsx)(i.h2,{id:"okapi-bm25",children:"Okapi BM25"}),"\n",(0,t.jsxs)(i.p,{children:["In ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Information_retrieval",children:"information retrieval"}),", Okapi BM25(BM stands for Best Matching) is a ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Ranking_function",children:"ranking function"})," used by ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Search_engine",children:"search engines"})," to rank matching documents according to their ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Relevance_(information_retrieval)",children:"relevance"})," to a given search query. It is based on the ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Probabilistic_relevance_model",children:"probabilistic retrieval framework"})," developed in the 1970s and 1980s by ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Stephen_E._Robertson",children:"Stephen E. Robertson"}),", ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/Karen_Sp%C3%A4rck_Jones",children:"Karen Sp\xe4rck Jones"}),", and others."]}),"\n",(0,t.jsxs)(i.p,{children:['The name of the actual ranking function is BM25. To set the right context, however, it is usually referred to as "Okapi BM25", since the Okapi information retrieval system, implemented at ',(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/London",children:"London"}),"'s ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/City_University,_London",children:"City University"})," in the 1980s and 1990s, was the first system to implement this function."]}),"\n",(0,t.jsxs)(i.p,{children:["BM25 and its newer variants, e.g. BM25F (a version of BM25 that can take document structure and anchor text into account), represent state-of-the-art ",(0,t.jsx)(i.a,{href:"https://en.wikipedia.org/wiki/TF-IDF",children:"TF-IDF"}),"-like retrieval functions used in document retrieval."]}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(795634).Z+"",width:"1328",height:"690"})}),"\n",(0,t.jsx)(i.h2,{id:"knowledge-graph-keyword-search",children:"Knowledge graph, Keyword Search"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Inverted Index -> Term / Document"}),"\n",(0,t.jsxs)(i.li,{children:["Embeddings","\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Word / Phrase embeddings"}),"\n",(0,t.jsx)(i.li,{children:"Sentence embeddings"}),"\n",(0,t.jsx)(i.li,{children:"Paragraph embeddings"}),"\n",(0,t.jsx)(i.li,{children:"Document embeddings"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(801117).Z+"",width:"1089",height:"637"})}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(788612).Z+"",width:"1323",height:"747"})}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"One hot encoding"}),"\n"]}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(248398).Z+"",width:"1305",height:"737"})}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(446208).Z+"",width:"1329",height:"504"})}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Dimensionality reduction"}),"\n",(0,t.jsx)(i.li,{children:"Vector similarity scoring"}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"solr",children:"Solr"}),"\n",(0,t.jsxs)(i.ol,{children:["\n",(0,t.jsx)(i.li,{children:"Streaming expressions"}),"\n",(0,t.jsx)(i.li,{children:"Vectors fields/functions in solr"}),"\n"]}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(291539).Z+"",width:"1100",height:"618"})}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(497715).Z+"",width:"1100",height:"573"})}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(882069).Z+"",width:"1100",height:"619"})}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(580707).Z+"",width:"1099",height:"534"})}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(639332).Z+"",width:"1100",height:"615"})}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.img,{alt:"image",src:n(592583).Z+"",width:"1100",height:"559"})}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.a,{href:"https://www.youtube.com/watch?v=JrORpCkuK3g",children:"Thought Vectors, Knowledge Graphs, and Curious Death(?) of Keyword Search"})}),"\n",(0,t.jsx)(i.h2,{id:"neural-search",children:"Neural Search"}),"\n",(0,t.jsx)(i.p,{children:"The core idea of neural search is to leverage state-of-the-art deep neural networks to build every component of a search system. In short, neural search is deep neural network-powered information retrieval.In academia, it's often called neural IR."}),"\n",(0,t.jsx)(i.h3,{id:"what-can-it-do",children:"What can it do?"}),"\n",(0,t.jsx)(i.p,{children:"Thanks to recent advances in deep neural networks, a neural search system can go way beyond simple text search. It enables advanced intelligence on all kinds of unstructured data, such as images, audio, video, PDF, 3D mesh, you name it."}),"\n",(0,t.jsx)(i.p,{children:"For example, retrieving animation according to some beats; finding the best-fit memes according to some jokes; scanning a table with your iPhone's LiDAR camera and finding similar furniture at IKEA. Neural search systems enable what traditional search can't: multi/cross-modal data retrieval."}),"\n",(0,t.jsx)(i.h3,{id:"think-outside-the-searchbox",children:"Think outside the (search)box"}),"\n",(0,t.jsx)(i.p,{children:"Many neural search-powered applications do not have a search box:"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"A question-answering chatbot can be powered by neural search: by first indexing all hard-coded QA pairs and then semantically mapping user dialog to those pairs."}),"\n",(0,t.jsx)(i.li,{children:"A smart speaker can be powered by neural search: by applying STT (speech-to-text) and semantically mapping text to internal commands."}),"\n",(0,t.jsx)(i.li,{children:"A recommendation system can be powered by neural search: by embedding user-item information into vectors and finding top-K nearest neighbours of a user/item."}),"\n"]}),"\n",(0,t.jsx)(i.p,{children:"Neural search creates a new way to comprehend the world. It is creating new doors that lead to new businesses."}),"\n",(0,t.jsx)(i.p,{children:(0,t.jsx)(i.a,{href:"https://github.com/jina-ai/jina/blob/master/.github/2.0/neural-search",children:"https://github.com/jina-ai/jina/blob/master/.github/2.0/neural-search"})})]})}function l(e={}){const{wrapper:i}={...(0,a.a)(),...e.components};return i?(0,t.jsx)(i,{...e,children:(0,t.jsx)(d,{...e})}):d(e)}},795634:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image1-eddc0221bad070198a08b1ad3d8dc225.jpg"},639332:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image10-53ed379908c0b5ce523202431a51b44e.jpg"},592583:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image11-50917a148d3edae28c69e0dc38b481d1.jpg"},801117:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image2-a6573161eabfa95cf28ae2b2510e56a3.jpg"},788612:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image3-97f5fd598d3b35452961fdc352189e0d.jpg"},248398:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image4-5ec3cfa9b6da0d79739907f25f1bbc52.jpg"},446208:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image5-094c636241c2ac624407dfc68a2df001.jpg"},291539:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image6-872ede0cf53b40cd69d53a42d2ac534f.jpg"},497715:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image7-0f6de28b21282ab03965548e09d1d8d6.jpg"},882069:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image8-de3447c8f1e8c47270d3eecf3ead1a12.jpg"},580707:(e,i,n)=>{n.d(i,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Information-Retrieval-image9-8ab0ba584a648f0779618e606fc655dc.jpg"},511151:(e,i,n)=>{n.d(i,{Z:()=>o,a:()=>s});var t=n(667294);const a={},r=t.createContext(a);function s(e){const i=t.useContext(r);return t.useMemo((function(){return"function"==typeof e?e(i):{...i,...e}}),[i,e])}function o(e){let i;return i=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:s(e.components),t.createElement(r.Provider,{value:i},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/603a23e5.b81cb4bd.js b/assets/js/603a23e5.b81cb4bd.js new file mode 100644 index 00000000000..660723d70eb --- /dev/null +++ b/assets/js/603a23e5.b81cb4bd.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[57290],{669521:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>o,contentTitle:()=>l,default:()=>h,frontMatter:()=>i,metadata:()=>r,toc:()=>d});var s=t(785893),a=t(511151);const i={},l="DML - Data Manipulation Language",r={id:"languages/sql/dml-data-manipulation-language",title:"DML - Data Manipulation Language",description:"DML (Data Manipulation Language) commands need to be commited/rolled back",source:"@site/docs/languages/sql/dml-data-manipulation-language.md",sourceDirName:"languages/sql",slug:"/languages/sql/dml-data-manipulation-language",permalink:"/languages/sql/dml-data-manipulation-language",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/languages/sql/dml-data-manipulation-language.md",tags:[],version:"current",lastUpdatedAt:1732901510,formattedLastUpdatedAt:"Nov 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Truncate vs Delete",permalink:"/languages/sql/ddl-data-definition-language/truncate-delete"},next:{title:"DQL - Data Query Language",permalink:"/languages/sql/dql-data-query-language/"}},o={},d=[{value:"DML",id:"dml",level:2},{value:"DELETE",id:"delete",level:3},{value:"INSERT INTO",id:"insert-into",level:3},{value:"Bulk Insert / Extended Inserts",id:"bulk-insert--extended-inserts",level:3},{value:"Insert vs Insert Ignore",id:"insert-vs-insert-ignore",level:3},{value:"Load",id:"load",level:3},{value:"UPDATE",id:"update",level:3},{value:"UPSERT",id:"upsert",level:3},{value:"Explain",id:"explain",level:2},{value:"Output",id:"output",level:3},{value:"Extra",id:"extra",level:4},{value:"Explain Analyze",id:"explain-analyze",level:3},{value:"Lock Tables",id:"lock-tables",level:2}];function c(e){const n={a:"a",code:"code",em:"em",h1:"h1",h2:"h2",h3:"h3",h4:"h4",li:"li",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,a.a)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h1,{id:"dml---data-manipulation-language",children:"DML - Data Manipulation Language"}),"\n",(0,s.jsxs)(n.p,{children:["DML (Data Manipulation Language) commands ",(0,s.jsx)(n.a,{href:"http://www.dba-oracle.com/t_dml_statements.htm",children:"need to be"})," ",(0,s.jsx)(n.strong,{children:"commited/rolled back"})]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"-- online query without locking the tables during update\nSET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;\n"})}),"\n",(0,s.jsx)(n.h2,{id:"dml",children:"DML"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Insert"}),"\n",(0,s.jsx)(n.li,{children:"Update"}),"\n",(0,s.jsx)(n.li,{children:"Delete"}),"\n",(0,s.jsx)(n.li,{children:"Merge"}),"\n",(0,s.jsx)(n.li,{children:"Call"}),"\n",(0,s.jsx)(n.li,{children:"Explain Plain"}),"\n",(0,s.jsx)(n.li,{children:"Lock Table"}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"delete",children:"DELETE"}),"\n",(0,s.jsx)(n.p,{children:"DELETE statements are used to remove rows from a table."}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"DELETE FROM table_name WHERE some_column = some_value;\n"})}),"\n",(0,s.jsx)(n.p,{children:"Always better to use between than comparison operator, so that lock is not taken on whole table, but only range locks are taken."}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"-- good\nDELETE FROM orders WHERE order_id betwen 0 and 100;\n\n-- bad\nDELETE FROM orders WHERE order_id < 100;\n"})}),"\n",(0,s.jsx)(n.h3,{id:"insert-into",children:"INSERT INTO"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"INSERT INTO table_name\nVALUES (value1, value2, value3,....)\nor\nINSERT INTO table_name\n(column1, column2, column3,...)\nVALUES (value1, value2, value3,....)\n\nINSERT INTO table_name (column_1, column_2, column_3) VALUES (value_1, 'value_2', value_3);\nINSERT statements are used to add a new row to a table.\n\nINSERT INTO cron_migrate_data (`table_name`, `start_date`, `end_date`, `s3_file_path`) VALUES ('equifax_raw_response', '2019-10-01 00:00:00', '2019-10-31 23:59:59', 's3-ap-south-1://stashfin-migration-data/rds/');\n"})}),"\n",(0,s.jsx)(n.h3,{id:"bulk-insert--extended-inserts",children:"Bulk Insert / Extended Inserts"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"INSERT IGNORE INTO userDeviceApps (`customer_id`, `app_name`, `package_name`, `version_name`, `version_code`,\n`installation_date`, `last_used_date`, `create_date`, `device_id`, `hash_key`)\nVALUES ('2322675', 'test', 'test', '0.0.0', '0',\n'0000-00-00 00:00:00', '0000-00-00 00:00:00', '2021-01-06 18:13:15', 'xxx', '2322675,test4'), ('2322675', 'test', 'test', '0.0.0', '0',\n'0000-00-00 00:00:00', '0000-00-00 00:00:00', '2021-01-06 18:13:15', 'xxx', '2322675,test5'), ('2322675', 'test', 'test', '0.0.0', '0',\n'0000-00-00 00:00:00', '0000-00-00 00:00:00', '2021-01-06 18:13:15', 'xxx', '2322675,test7');\n"})}),"\n",(0,s.jsx)(n.h3,{id:"insert-vs-insert-ignore",children:"Insert vs Insert Ignore"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"# avg - 0.074 sec\n# gives error\nINSERT INTO userDeviceApps (`customer_id`, `app_name`, `package_name`, `version_name`, `version_code`,\n`installation_date`, `last_used_date`, `create_date`, `device_id`, `hash_key`)\nVALUES ('2322675', 'test', 'test', '0.0.0', '0',\n'0000-00-00 00:00:00', '0000-00-00 00:00:00', '2021-01-06 18:13:15', 'xxx', '2322675,test');\n\n# avg - 0.400 sec\n# is 5.4 times slower\n# gives warning\nINSERT IGNORE INTO userDeviceApps (`customer_id`, `app_name`, `package_name`, `version_name`, `version_code`,\n`installation_date`, `last_used_date`, `create_date`, `device_id`, `hash_key`)\nVALUES ('2322675', 'test', 'test', '0.0.0', '0',\n'0000-00-00 00:00:00', '0000-00-00 00:00:00', '2021-01-06 18:13:15', 'xxx', '2322675,test');\n"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:"Insert ingore consumes autoincrement id and can put holes in between rows"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"https://stackoverflow.com/questions/5655396/why-insert-ignore-increments-the-auto-increment-primary-key",children:"https://stackoverflow.com/questions/5655396/why-insert-ignore-increments-the-auto-increment-primary-key"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"https://www.percona.com/blog/2011/11/29/avoiding-auto-increment-holes-on-innodb-with-insert-ignore/",children:(0,s.jsx)(n.strong,{children:"https://www.percona.com/blog/2011/11/29/avoiding-auto-increment-holes-on-innodb-with-insert-ignore/"})})}),"\n",(0,s.jsx)(n.li,{children:"innodb_autoinc_lock_mode = 0"}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/8.0/en/innodb-auto-increment-handling.html",children:"https://dev.mysql.com/doc/refman/8.0/en/innodb-auto-increment-handling.html"})}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:"Alternatives"}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"INSERT INTO userDeviceApps (`customer_id`, `app_name`, `package_name`, `version_name`, `version_code`,\n`installation_date`, `last_used_date`, `create_date`, `device_id`, `hash_key`)\nSELECT '2322675', 'test3', 'test2', '0.0.0', '0',\n'0000-00-00 00:00:00', '0000-00-00 00:00:00', '2021-01-06 18:13:15', 'xxx', '2322675,test3'\nFROM DUAL\nWHERE NOT EXISTS(\n SELECT 1\n FROM userDeviceApps\n WHERE hash_key = '2322675,test3'\n)\nLIMIT 1;\n"})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://ypereirareis.github.io/blog/2016/03/22/mysql-insert-ignore-alternatives",children:"https://ypereirareis.github.io/blog/2016/03/22/mysql-insert-ignore-alternatives"})}),"\n",(0,s.jsx)(n.h3,{id:"load",children:"Load"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"LOAD DATA INFILE 'st_bank_model_features_dedupe.csv'\nINTO TABLE st_bank_model_features_dedupe\nFIELDS TERMINATED BY ','\nENCLOSED BY '\"'\nLINES TERMINATED BY '\\n'\nIGNORE 1 ROWS\nSET create_date = STR_TO_DATE(@create_date, '%d/%m/%Y %H:%i');\n"})}),"\n",(0,s.jsx)(n.h3,{id:"update",children:"UPDATE"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"UPDATE table_name\nSET some_column = some_value\nWHERE some_column = some_value;\n-- UPDATE statments allow you to edit rows in a table.\n\nUPDATE`table_name`\n SET`field_name` =replace(same_field_name, 'unwanted_text', 'wanted_text')\n"})}),"\n",(0,s.jsx)(n.h3,{id:"upsert",children:"UPSERT"}),"\n",(0,s.jsx)(n.p,{children:"An upsert is a smart operation which turns into INSERT or UPDATE whichever is applicable. Also, it is an atomic transaction, means complete in a single step. Let's understand -- If a record is new, then UPSERT triggers an INSERT. But, if it already exists, then UPSERT performs an UPDATE."}),"\n",(0,s.jsx)(n.p,{children:"MySQL provides the ON DUPLICATE KEY UPDATE option to INSERT, which accomplishes this behavior. However, there are other statements like INSERT IGNORE or REPLACE, which can also fulfill this objective."}),"\n",(0,s.jsx)(n.p,{children:"We can imitate MySQL UPSERT in one of these three ways:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://www.techbeamers.com/mysql-upsert/#upsert-using-insert",children:"UPSERT using INSERT IGNORE"})}),"\n",(0,s.jsx)(n.p,{children:"When we use INSERT IGNORE for adding a record, it gets through even if there are errors in performing INSERT. So, if the target table already has a row with a matching UNIQUE or PRIMARY key, then INSERT REPLACE would suppress all possible errors."}),"\n",(0,s.jsx)(n.p,{children:"Moreover, it skips the INSERT operation altogether. Such kind of statement is useful when we need to add a large number of records in one go. And, the table may already have a part of that data inside."}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://www.techbeamers.com/mysql-upsert/#upsert-using-replace",children:"UPSERT using REPLACE"})}),"\n",(0,s.jsx)(n.p,{children:"There come situations when we have to replace some rows even if INSERT could fail due to duplicate values of the primary key field. Hence, we should use the REPLACE statement for such cases."}),"\n",(0,s.jsx)(n.p,{children:"However, if we opt to use REPLACE, then it could result in one of the following outcomes:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"If we don't face any error, then REPLACE would behave as regular INSERT command."}),"\n",(0,s.jsx)(n.li,{children:"If a duplicate record exists, then REPLACE would first delete it and perform the INSERT subsequently."}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:(0,s.jsxs)(n.strong,{children:[(0,s.jsx)(n.a,{href:"https://www.techbeamers.com/mysql-upsert/#upsert-using-update",children:"UPSERT using INSERT with ON DUPLICATE KEY UPDATE"})," (UPSERT)"]})}),"\n",(0,s.jsx)(n.p,{children:"It is non-destructive, means it doesn't have to drop the duplicate row. Instead, it issues an UPDATE whenever it finds a matching record having the same UNIQUE or PRIMARY KEY value."}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://www.techbeamers.com/mysql-upsert",children:"https://www.techbeamers.com/mysql-upsert"})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://www.javatpoint.com/mysql-upsert",children:"https://www.javatpoint.com/mysql-upsert"})}),"\n",(0,s.jsx)(n.h2,{id:"explain",children:"Explain"}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/explain.html",children:"EXPLAIN"})," works with ",(0,s.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/select.html",children:"SELECT"}),", ",(0,s.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/delete.html",children:"DELETE"}),", ",(0,s.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/insert.html",children:"INSERT"}),", ",(0,s.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/replace.html",children:"REPLACE"}),", and ",(0,s.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/update.html",children:"UPDATE"})," statements."]}),"\n",(0,s.jsx)(n.p,{children:"EXPLAIN EXTENDED"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"The indexes it's considering using."}),"\n",(0,s.jsx)(n.li,{children:"The order in which it plans to join tables."}),"\n",(0,s.jsx)(n.li,{children:"The indexes it actually used."}),"\n",(0,s.jsx)(n.li,{children:"How many rows will be accessed."}),"\n",(0,s.jsx)(n.li,{children:"Whether it used a filesort."}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"output",children:"Output"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Possible keys:"})," shows the keys that can be used by MySQL to find rows from the table, if this is NULL it indicates no useful indexes could be applied."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Key:"})," indicates the actual index that MySQL used."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Rows:"})," shows the number of records that were examined to produce the output. This is especially relevant during joins."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Key_len:"})," longest length of the key that was used (aka which parts of the composite index are being used) use this to tell how many columns were used from it."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Ref:"})," which columns, or constants are compared to the index in order to select rows."]}),"\n"]}),"\n",(0,s.jsx)(n.h4,{id:"extra",children:"Extra"}),"\n",(0,s.jsx)(n.p,{children:"What you would like to see in Extra:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Using index - MySQL was able to use a covering index"}),"\n",(0,s.jsx)(n.li,{children:"Distinct - MySQL stops searching after it found the first matching row"}),"\n",(0,s.jsx)(n.li,{children:"Using index condition"}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:"What you don't want to see in Extra:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Using file sort - as said extra sorting was required"}),"\n",(0,s.jsx)(n.li,{children:"Using temporary - a temp table was needed"}),"\n",(0,s.jsx)(n.li,{children:"Using join buffer - tables processed in large batches of rows, instead of index lookups"}),"\n",(0,s.jsx)(n.li,{children:"Using where - after fetching rows from storage engine, extra filtering needs to happen for each row. However it's OK if a very small number of rows were returned."}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://www.sitepoint.com/using-explain-to-write-better-mysql-queries",children:"https://www.sitepoint.com/using-explain-to-write-better-mysql-queries"})}),"\n",(0,s.jsx)(n.h3,{id:"explain-analyze",children:"Explain Analyze"}),"\n",(0,s.jsxs)(n.p,{children:["In MySQL 8.0.18,\xa0",(0,s.jsx)(n.code,{children:"EXPLAIN ANALYZE"}),"\xa0was introduced, a new concept built on top of the regular\xa0",(0,s.jsx)(n.code,{children:"EXPLAIN"}),"\xa0query plan inspection tool. In addition to the query plan and estimated costs, which a normal\xa0",(0,s.jsx)(n.code,{children:"EXPLAIN"}),"\xa0will print,\xa0",(0,s.jsx)(n.code,{children:"EXPLAIN ANALYZE"}),"\xa0also prints the\xa0",(0,s.jsx)(n.em,{children:"actual"}),"\xa0costs of individual iterators in the execution plan."]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Warning"})," - ",(0,s.jsx)(n.code,{children:"EXPLAIN ANALYZE"}),"\xa0actually runs the query, so if you don\u2019t want to run the query against your live database, do not use\xa0",(0,s.jsx)(n.code,{children:"EXPLAIN ANALYZE"}),"."]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://planetscale.com/blog/how-read-mysql-explains",children:"How to read MySQL EXPLAINs"})}),"\n",(0,s.jsx)(n.h2,{id:"lock-tables",children:"Lock Tables"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"START TRANSACTION;\nlock table bureau_account_list WRITE;\ndelete from bureau_account_list where id = 0;\nALTER TABLE bureau_account_list\nCHANGE COLUMN id id BIGINT(20) NOT NULL AUTO_INCREMENT ;\n\nALTER TABLE bureau_account_list AUTO_INCREMENT = 400000000;\n\nALTER TABLE sttash_website_LIVE.bureau_account_list\nCHANGE COLUMN create_date create_date DATETIME NULL DEFAULT CURRENT_TIMESTAMP ;\n\nUNLOCK TABLES;\n\nCOMMIT;\n"})})]})}function h(e={}){const{wrapper:n}={...(0,a.a)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(c,{...e})}):c(e)}},511151:(e,n,t)=>{t.d(n,{Z:()=>r,a:()=>l});var s=t(667294);const a={},i=s.createContext(a);function l(e){const n=s.useContext(i);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function r(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:l(e.components),s.createElement(i.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/603a23e5.ffac33cc.js b/assets/js/603a23e5.ffac33cc.js deleted file mode 100644 index 4f22ad7e719..00000000000 --- a/assets/js/603a23e5.ffac33cc.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[57290],{669521:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>l,default:()=>h,frontMatter:()=>i,metadata:()=>r,toc:()=>o});var s=t(785893),a=t(511151);const i={},l="DML - Data Manipulation Language",r={id:"languages/sql/dml-data-manipulation-language",title:"DML - Data Manipulation Language",description:"DML (Data Manipulation Language) commands need to be commited/rolled back",source:"@site/docs/languages/sql/dml-data-manipulation-language.md",sourceDirName:"languages/sql",slug:"/languages/sql/dml-data-manipulation-language",permalink:"/languages/sql/dml-data-manipulation-language",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/languages/sql/dml-data-manipulation-language.md",tags:[],version:"current",lastUpdatedAt:1721657871,formattedLastUpdatedAt:"Jul 22, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Truncate vs Delete",permalink:"/languages/sql/ddl-data-definition-language/truncate-delete"},next:{title:"DQL - Data Query Language",permalink:"/languages/sql/dql-data-query-language/"}},d={},o=[{value:"DML",id:"dml",level:2},{value:"DELETE",id:"delete",level:3},{value:"INSERT INTO",id:"insert-into",level:3},{value:"Bulk Insert / Extended Inserts",id:"bulk-insert--extended-inserts",level:3},{value:"Insert vs Insert Ignore",id:"insert-vs-insert-ignore",level:3},{value:"Load",id:"load",level:3},{value:"UPDATE",id:"update",level:3},{value:"UPSERT",id:"upsert",level:3},{value:"Explain",id:"explain",level:2},{value:"Output",id:"output",level:3},{value:"Extra",id:"extra",level:4},{value:"Explain Analyze",id:"explain-analyze",level:3},{value:"Lock Tables",id:"lock-tables",level:2}];function c(e){const n={a:"a",code:"code",em:"em",h1:"h1",h2:"h2",h3:"h3",h4:"h4",li:"li",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,a.a)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h1,{id:"dml---data-manipulation-language",children:"DML - Data Manipulation Language"}),"\n",(0,s.jsxs)(n.p,{children:["DML (Data Manipulation Language) commands ",(0,s.jsx)(n.a,{href:"http://www.dba-oracle.com/t_dml_statements.htm",children:"need to be"})," ",(0,s.jsx)(n.strong,{children:"commited/rolled back"})]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"-- online query without locking the tables during update\nSET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;\n"})}),"\n",(0,s.jsx)(n.h2,{id:"dml",children:"DML"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Insert"}),"\n",(0,s.jsx)(n.li,{children:"Update"}),"\n",(0,s.jsx)(n.li,{children:"Delete"}),"\n",(0,s.jsx)(n.li,{children:"Merge"}),"\n",(0,s.jsx)(n.li,{children:"Call"}),"\n",(0,s.jsx)(n.li,{children:"Explain Plain"}),"\n",(0,s.jsx)(n.li,{children:"Lock Table"}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"delete",children:"DELETE"}),"\n",(0,s.jsx)(n.p,{children:"DELETE statements are used to remove rows from a table."}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"DELETE FROM table_name WHERE some_column = some_value;\n"})}),"\n",(0,s.jsx)(n.h3,{id:"insert-into",children:"INSERT INTO"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"INSERT INTO table_name\nVALUES (value1, value2, value3,....)\nor\nINSERT INTO table_name\n(column1, column2, column3,...)\nVALUES (value1, value2, value3,....)\n\nINSERT INTO table_name (column_1, column_2, column_3) VALUES (value_1, 'value_2', value_3);\nINSERT statements are used to add a new row to a table.\n\nINSERT INTO cron_migrate_data (`table_name`, `start_date`, `end_date`, `s3_file_path`) VALUES ('equifax_raw_response', '2019-10-01 00:00:00', '2019-10-31 23:59:59', 's3-ap-south-1://stashfin-migration-data/rds/');\n"})}),"\n",(0,s.jsx)(n.h3,{id:"bulk-insert--extended-inserts",children:"Bulk Insert / Extended Inserts"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"INSERT IGNORE INTO userDeviceApps (`customer_id`, `app_name`, `package_name`, `version_name`, `version_code`,\n`installation_date`, `last_used_date`, `create_date`, `device_id`, `hash_key`)\nVALUES ('2322675', 'test', 'test', '0.0.0', '0',\n'0000-00-00 00:00:00', '0000-00-00 00:00:00', '2021-01-06 18:13:15', 'xxx', '2322675,test4'), ('2322675', 'test', 'test', '0.0.0', '0',\n'0000-00-00 00:00:00', '0000-00-00 00:00:00', '2021-01-06 18:13:15', 'xxx', '2322675,test5'), ('2322675', 'test', 'test', '0.0.0', '0',\n'0000-00-00 00:00:00', '0000-00-00 00:00:00', '2021-01-06 18:13:15', 'xxx', '2322675,test7');\n"})}),"\n",(0,s.jsx)(n.h3,{id:"insert-vs-insert-ignore",children:"Insert vs Insert Ignore"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"# avg - 0.074 sec\n# gives error\nINSERT INTO userDeviceApps (`customer_id`, `app_name`, `package_name`, `version_name`, `version_code`,\n`installation_date`, `last_used_date`, `create_date`, `device_id`, `hash_key`)\nVALUES ('2322675', 'test', 'test', '0.0.0', '0',\n'0000-00-00 00:00:00', '0000-00-00 00:00:00', '2021-01-06 18:13:15', 'xxx', '2322675,test');\n\n# avg - 0.400 sec\n# is 5.4 times slower\n# gives warning\nINSERT IGNORE INTO userDeviceApps (`customer_id`, `app_name`, `package_name`, `version_name`, `version_code`,\n`installation_date`, `last_used_date`, `create_date`, `device_id`, `hash_key`)\nVALUES ('2322675', 'test', 'test', '0.0.0', '0',\n'0000-00-00 00:00:00', '0000-00-00 00:00:00', '2021-01-06 18:13:15', 'xxx', '2322675,test');\n"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:"Insert ingore consumes autoincrement id and can put holes in between rows"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"https://stackoverflow.com/questions/5655396/why-insert-ignore-increments-the-auto-increment-primary-key",children:"https://stackoverflow.com/questions/5655396/why-insert-ignore-increments-the-auto-increment-primary-key"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"https://www.percona.com/blog/2011/11/29/avoiding-auto-increment-holes-on-innodb-with-insert-ignore/",children:(0,s.jsx)(n.strong,{children:"https://www.percona.com/blog/2011/11/29/avoiding-auto-increment-holes-on-innodb-with-insert-ignore/"})})}),"\n",(0,s.jsx)(n.li,{children:"innodb_autoinc_lock_mode = 0"}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/8.0/en/innodb-auto-increment-handling.html",children:"https://dev.mysql.com/doc/refman/8.0/en/innodb-auto-increment-handling.html"})}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:"Alternatives"}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"INSERT INTO userDeviceApps (`customer_id`, `app_name`, `package_name`, `version_name`, `version_code`,\n`installation_date`, `last_used_date`, `create_date`, `device_id`, `hash_key`)\nSELECT '2322675', 'test3', 'test2', '0.0.0', '0',\n'0000-00-00 00:00:00', '0000-00-00 00:00:00', '2021-01-06 18:13:15', 'xxx', '2322675,test3'\nFROM DUAL\nWHERE NOT EXISTS(\n SELECT 1\n FROM userDeviceApps\n WHERE hash_key = '2322675,test3'\n)\nLIMIT 1;\n"})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://ypereirareis.github.io/blog/2016/03/22/mysql-insert-ignore-alternatives",children:"https://ypereirareis.github.io/blog/2016/03/22/mysql-insert-ignore-alternatives"})}),"\n",(0,s.jsx)(n.h3,{id:"load",children:"Load"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"LOAD DATA INFILE 'st_bank_model_features_dedupe.csv'\nINTO TABLE st_bank_model_features_dedupe\nFIELDS TERMINATED BY ','\nENCLOSED BY '\"'\nLINES TERMINATED BY '\\n'\nIGNORE 1 ROWS\nSET create_date = STR_TO_DATE(@create_date, '%d/%m/%Y %H:%i');\n"})}),"\n",(0,s.jsx)(n.h3,{id:"update",children:"UPDATE"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"UPDATE table_name\nSET some_column = some_value\nWHERE some_column = some_value;\n-- UPDATE statments allow you to edit rows in a table.\n\nUPDATE`table_name`\n SET`field_name` =replace(same_field_name, 'unwanted_text', 'wanted_text')\n"})}),"\n",(0,s.jsx)(n.h3,{id:"upsert",children:"UPSERT"}),"\n",(0,s.jsx)(n.p,{children:"An upsert is a smart operation which turns into INSERT or UPDATE whichever is applicable. Also, it is an atomic transaction, means complete in a single step. Let's understand -- If a record is new, then UPSERT triggers an INSERT. But, if it already exists, then UPSERT performs an UPDATE."}),"\n",(0,s.jsx)(n.p,{children:"MySQL provides the ON DUPLICATE KEY UPDATE option to INSERT, which accomplishes this behavior. However, there are other statements like INSERT IGNORE or REPLACE, which can also fulfill this objective."}),"\n",(0,s.jsx)(n.p,{children:"We can imitate MySQL UPSERT in one of these three ways:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://www.techbeamers.com/mysql-upsert/#upsert-using-insert",children:"UPSERT using INSERT IGNORE"})}),"\n",(0,s.jsx)(n.p,{children:"When we use INSERT IGNORE for adding a record, it gets through even if there are errors in performing INSERT. So, if the target table already has a row with a matching UNIQUE or PRIMARY key, then INSERT REPLACE would suppress all possible errors."}),"\n",(0,s.jsx)(n.p,{children:"Moreover, it skips the INSERT operation altogether. Such kind of statement is useful when we need to add a large number of records in one go. And, the table may already have a part of that data inside."}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://www.techbeamers.com/mysql-upsert/#upsert-using-replace",children:"UPSERT using REPLACE"})}),"\n",(0,s.jsx)(n.p,{children:"There come situations when we have to replace some rows even if INSERT could fail due to duplicate values of the primary key field. Hence, we should use the REPLACE statement for such cases."}),"\n",(0,s.jsx)(n.p,{children:"However, if we opt to use REPLACE, then it could result in one of the following outcomes:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"If we don't face any error, then REPLACE would behave as regular INSERT command."}),"\n",(0,s.jsx)(n.li,{children:"If a duplicate record exists, then REPLACE would first delete it and perform the INSERT subsequently."}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:(0,s.jsxs)(n.strong,{children:[(0,s.jsx)(n.a,{href:"https://www.techbeamers.com/mysql-upsert/#upsert-using-update",children:"UPSERT using INSERT with ON DUPLICATE KEY UPDATE"})," (UPSERT)"]})}),"\n",(0,s.jsx)(n.p,{children:"It is non-destructive, means it doesn't have to drop the duplicate row. Instead, it issues an UPDATE whenever it finds a matching record having the same UNIQUE or PRIMARY KEY value."}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://www.techbeamers.com/mysql-upsert",children:"https://www.techbeamers.com/mysql-upsert"})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://www.javatpoint.com/mysql-upsert",children:"https://www.javatpoint.com/mysql-upsert"})}),"\n",(0,s.jsx)(n.h2,{id:"explain",children:"Explain"}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/explain.html",children:"EXPLAIN"})," works with ",(0,s.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/select.html",children:"SELECT"}),", ",(0,s.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/delete.html",children:"DELETE"}),", ",(0,s.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/insert.html",children:"INSERT"}),", ",(0,s.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/replace.html",children:"REPLACE"}),", and ",(0,s.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/update.html",children:"UPDATE"})," statements."]}),"\n",(0,s.jsx)(n.p,{children:"EXPLAIN EXTENDED"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"The indexes it's considering using."}),"\n",(0,s.jsx)(n.li,{children:"The order in which it plans to join tables."}),"\n",(0,s.jsx)(n.li,{children:"The indexes it actually used."}),"\n",(0,s.jsx)(n.li,{children:"How many rows will be accessed."}),"\n",(0,s.jsx)(n.li,{children:"Whether it used a filesort."}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"output",children:"Output"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Possible keys:"})," shows the keys that can be used by MySQL to find rows from the table, if this is NULL it indicates no useful indexes could be applied."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Key:"})," indicates the actual index that MySQL used."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Rows:"})," shows the number of records that were examined to produce the output. This is especially relevant during joins."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Key_len:"})," longest length of the key that was used (aka which parts of the composite index are being used) use this to tell how many columns were used from it."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Ref:"})," which columns, or constants are compared to the index in order to select rows."]}),"\n"]}),"\n",(0,s.jsx)(n.h4,{id:"extra",children:"Extra"}),"\n",(0,s.jsx)(n.p,{children:"What you would like to see in Extra:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Using index - MySQL was able to use a covering index"}),"\n",(0,s.jsx)(n.li,{children:"Distinct - MySQL stops searching after it found the first matching row"}),"\n",(0,s.jsx)(n.li,{children:"Using index condition"}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:"What you don't want to see in Extra:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Using file sort - as said extra sorting was required"}),"\n",(0,s.jsx)(n.li,{children:"Using temporary - a temp table was needed"}),"\n",(0,s.jsx)(n.li,{children:"Using join buffer - tables processed in large batches of rows, instead of index lookups"}),"\n",(0,s.jsx)(n.li,{children:"Using where - after fetching rows from storage engine, extra filtering needs to happen for each row. However it's OK if a very small number of rows were returned."}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://www.sitepoint.com/using-explain-to-write-better-mysql-queries",children:"https://www.sitepoint.com/using-explain-to-write-better-mysql-queries"})}),"\n",(0,s.jsx)(n.h3,{id:"explain-analyze",children:"Explain Analyze"}),"\n",(0,s.jsxs)(n.p,{children:["In MySQL 8.0.18,\xa0",(0,s.jsx)(n.code,{children:"EXPLAIN ANALYZE"}),"\xa0was introduced, a new concept built on top of the regular\xa0",(0,s.jsx)(n.code,{children:"EXPLAIN"}),"\xa0query plan inspection tool. In addition to the query plan and estimated costs, which a normal\xa0",(0,s.jsx)(n.code,{children:"EXPLAIN"}),"\xa0will print,\xa0",(0,s.jsx)(n.code,{children:"EXPLAIN ANALYZE"}),"\xa0also prints the\xa0",(0,s.jsx)(n.em,{children:"actual"}),"\xa0costs of individual iterators in the execution plan."]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Warning"})," - ",(0,s.jsx)(n.code,{children:"EXPLAIN ANALYZE"}),"\xa0actually runs the query, so if you don\u2019t want to run the query against your live database, do not use\xa0",(0,s.jsx)(n.code,{children:"EXPLAIN ANALYZE"}),"."]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://planetscale.com/blog/how-read-mysql-explains",children:"How to read MySQL EXPLAINs"})}),"\n",(0,s.jsx)(n.h2,{id:"lock-tables",children:"Lock Tables"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sql",children:"START TRANSACTION;\nlock table bureau_account_list WRITE;\ndelete from bureau_account_list where id = 0;\nALTER TABLE bureau_account_list\nCHANGE COLUMN id id BIGINT(20) NOT NULL AUTO_INCREMENT ;\n\nALTER TABLE bureau_account_list AUTO_INCREMENT = 400000000;\n\nALTER TABLE sttash_website_LIVE.bureau_account_list\nCHANGE COLUMN create_date create_date DATETIME NULL DEFAULT CURRENT_TIMESTAMP ;\n\nUNLOCK TABLES;\n\nCOMMIT;\n"})})]})}function h(e={}){const{wrapper:n}={...(0,a.a)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(c,{...e})}):c(e)}},511151:(e,n,t)=>{t.d(n,{Z:()=>r,a:()=>l});var s=t(667294);const a={},i=s.createContext(a);function l(e){const n=s.useContext(i);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function r(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:l(e.components),s.createElement(i.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/683f939a.fbb9bcd1.js b/assets/js/683f939a.62ea60bb.js similarity index 64% rename from assets/js/683f939a.fbb9bcd1.js rename to assets/js/683f939a.62ea60bb.js index 0913abc1f04..5b9b233a540 100644 --- a/assets/js/683f939a.fbb9bcd1.js +++ b/assets/js/683f939a.62ea60bb.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[55650],{470831:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>a,contentTitle:()=>r,default:()=>h,frontMatter:()=>o,metadata:()=>l,toc:()=>c});var t=s(785893),i=s(511151);const o={},r="Optimizing Locking Operations",l={id:"databases/sql-databases/mysql/optimizing-locking-operations",title:"Optimizing Locking Operations",description:"- 8.11 Optimizing Locking Operations",source:"@site/docs/databases/sql-databases/mysql/optimizing-locking-operations.md",sourceDirName:"databases/sql-databases/mysql",slug:"/databases/sql-databases/mysql/optimizing-locking-operations",permalink:"/databases/sql-databases/mysql/optimizing-locking-operations",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/databases/sql-databases/mysql/optimizing-locking-operations.md",tags:[],version:"current",lastUpdatedAt:1723484180,formattedLastUpdatedAt:"Aug 12, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"MySQLDump",permalink:"/databases/sql-databases/mysql/mysqldump"},next:{title:"Others",permalink:"/databases/sql-databases/mysql/others"}},a={},c=[{value:"Gap Locking",id:"gap-locking",level:2},{value:"Different Locks",id:"different-locks",level:2},{value:"Row Locks",id:"row-locks",level:3},{value:"Range Locks",id:"range-locks",level:3},{value:"Gap Locks",id:"gap-locks",level:3},{value:"Index Locks",id:"index-locks",level:3},{value:"Table Locks",id:"table-locks",level:3},{value:"Intention Locks",id:"intention-locks",level:3},{value:"Insert intention lock",id:"insert-intention-lock",level:3},{value:"why is insert intention lock shared?",id:"why-is-insert-intention-lock-shared",level:4},{value:"Auto-inc lock",id:"auto-inc-lock",level:3},{value:"Deadlock",id:"deadlock",level:3},{value:"Key Differences between Range and Gap Locks",id:"key-differences-between-range-and-gap-locks",level:3},{value:"Locking Focus",id:"locking-focus",level:4},{value:"Use Case",id:"use-case",level:4},{value:"Lock Errors",id:"lock-errors",level:2},{value:"Waiting for metadata lock",id:"waiting-for-metadata-lock",level:3},{value:"Links",id:"links",level:2}];function d(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",img:"img",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,i.a)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.h1,{id:"optimizing-locking-operations",children:"Optimizing Locking Operations"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"8.11 Optimizing Locking Operations"}),"\n",(0,t.jsx)(n.li,{children:"8.11.2 Table Locking Issues"}),"\n",(0,t.jsx)(n.li,{children:"8.11.3 Concurrent Inserts"}),"\n",(0,t.jsx)(n.li,{children:"8.11.4 Metadata Locking"}),"\n",(0,t.jsx)(n.li,{children:"8.11.5 External Locking"}),"\n"]}),"\n",(0,t.jsxs)(n.p,{children:[(0,t.jsx)(n.strong,{children:"Internal locking"})," is performed within the MySQL server itself to manage contention for table contents by multiple threads. This type of locking is internal because it is performed entirely by the server and involves no other programs."]}),"\n",(0,t.jsxs)(n.p,{children:[(0,t.jsx)(n.strong,{children:"External locking"})," occurs when the server and other programs lock ",(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/myisam-storage-engine.html",children:"MyISAM"})," table files to coordinate among themselves which program can access the tables at which time.\n8.11.1 Internal Locking Methods"]}),"\n",(0,t.jsxs)(n.p,{children:["MySQL uses ",(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/glossary.html#glos_row_lock",children:(0,t.jsx)(n.strong,{children:"row-level locking"})})," for InnoDB tables to support simultaneous write access by multiple sessions, making them suitable for multi-user, highly concurrent, and OLTP applications."]}),"\n",(0,t.jsxs)(n.p,{children:["To avoid ",(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/glossary.html#glos_deadlock",children:"deadlocks"})," when performing multiple concurrent write operations on a single InnoDB table, acquire necessary locks at the start of the transaction by issuing a SELECT ... FOR UPDATE statement for each group of rows expected to be modified, even if the data change statements come later in the transaction. If transactions modify or lock more than one table, issue the applicable statements in the same order within each transaction. Deadlocks affect performance rather than representing a serious error, because InnoDB automatically ",(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/glossary.html#glos_deadlock_detection",children:"detects"})," deadlock conditions and rolls back one of the affected transactions."]}),"\n",(0,t.jsxs)(n.p,{children:["On high concurrency systems, ",(0,t.jsx)(n.strong,{children:"deadlock detection can cause a slowdown when numerous threads wait for the same lock."})," At times, it may be ",(0,t.jsxs)(n.strong,{children:["more efficient to disable deadlock detection and rely on the ",(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_lock_wait_timeout",children:"innodb_lock_wait_timeout"})," setting for transaction rollback"]})," when a deadlock occurs. Deadlock detection can be disabled using the ",(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_deadlock_detect",children:"innodb_deadlock_detect"})," configuration option."]}),"\n",(0,t.jsx)(n.p,{children:"Advantages of row-level locking:"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"Fewer lock conflicts when different sessions access different rows."}),"\n",(0,t.jsx)(n.li,{children:"Fewer changes for rollbacks."}),"\n",(0,t.jsx)(n.li,{children:"Possible to lock a single row for a long time."}),"\n"]}),"\n",(0,t.jsxs)(n.p,{children:["MySQL uses ",(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/glossary.html#glos_table_lock",children:(0,t.jsx)(n.strong,{children:"table-level locking"})})," for MyISAM, MEMORY, and MERGE tables"]}),"\n",(0,t.jsx)(n.h2,{id:"gap-locking",children:"Gap Locking"}),"\n",(0,t.jsx)(n.p,{children:"A gap lock is a lock on a gap between index records, or a lock on the gap before the first or after the last index record."}),"\n",(0,t.jsx)(n.p,{children:"A lock on a gap between index records, or a lock on the gap before the first or after the last index record. For example, SELECT c1 FROM t WHERE c1 BETWEEN 10 and 20 FOR UPDATE; prevents other transactions from inserting a value of 15 into the column t.c1, whether or not there was already any such value in the column, because the gaps between all existing values in the range are locked. Contrast with record lock and next-key lock."}),"\n",(0,t.jsx)(n.p,{children:"Gap locks are part of the tradeoff between performance and concurrency, and are used in some transaction isolation levels and not others."}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.6/en/glossary.html#glos_gap_lock",children:"Gap Lock"})}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://stackoverflow.com/questions/32498437/deadlock-in-mysql-due-to-insert-by-multiple-threads",children:"Deadlock in MySQL due to Insert by multiple threads"})}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"http://thushw.blogspot.com/2010/11/mysql-deadlocks-with-concurrent-inserts.html",children:"mysql deadlocks with concurrent inserts"})}),"\n",(0,t.jsx)(n.p,{children:"It is possible to cause deadlocks in mysql (Innodb) on concurrent insert statements, without there being any transactions in progress. Deadlocks are possible even when the inserts don't collide on any key."}),"\n",(0,t.jsx)(n.p,{children:"The deadlocks occur due to gap locking done by mysql. There are several reasons for gap locking, and in this particular case, it has to do with preserving a unique key constraint on an index. The situation presents itself to us this way: There is a unique key constraint on a column and we are doing an insert. Mysql has to make sure that the lock it takes is sufficient to prevent another concurrent insert from adding a record with the same key, thus breaking the unique key constraint."}),"\n",(0,t.jsx)(n.p,{children:'Mysql innodb engine performs row locking on inserts. If column A has a unique key constraint, and we are adding the value "bbb" for column A in an insert statement, mysql needs to lock any gap in the index between the two current records where "bbb" will be inserted at.'}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.6/en/innodb-locks-set.html",children:"Innodb locks set"})}),"\n",(0,t.jsx)(n.h2,{id:"different-locks",children:"Different Locks"}),"\n",(0,t.jsxs)(n.ol,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Shared Lock (S Lock) -"})," It allows multiple transactions to read a resource simultaneously but not modify it. Other transactions can also acquire a shared lock on the same resource."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Exclusive Lock (X Lock) -"})," It allows a transaction to both read and modify a resource. No other transaction can acquire any type of lock on the same resource while an exclusive lock is held."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Update Lock (U Lock) -"})," It is used to prevent a deadlock scenario when a transaction intends to update a resource."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Schema Lock -"})," It is used to protect the structure of database objects."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Bulk Update Lock (BU Lock) -"})," It is used during bulk insert operations to improve performance by reducing the number of locks required."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Key-Range Lock -"})," It is used in indexed data to prevent phantom reads (inserting new rows into a range that a transaction has already read)."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Row-Level Lock -"})," It locks a specific row in a table, allowing other rows to be accessed concurrently."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Page-Level Lock -"})," It locks a specific page (a fixed-size block of data) in the database."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Table-Level Lock -"})," It locks an entire table. This is simple to implement but can reduce concurrency significantly."]}),"\n"]}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.img,{alt:"Types of database locks",src:s(766191).Z+"",width:"1538",height:"2000"})}),"\n",(0,t.jsx)(n.h3,{id:"row-locks",children:"Row Locks"}),"\n",(0,t.jsxs)(n.p,{children:["InnoDB uses row-level locking for ",(0,t.jsx)(n.code,{children:"DELETE"})," operations. This means that all rows that match the condition ",(0,t.jsx)(n.code,{children:"id < 391919930"})," will be locked until the transaction is complete. Row locks prevent other transactions from modifying or deleting these rows until the current transaction is finished."]}),"\n",(0,t.jsx)(n.h3,{id:"range-locks",children:"Range Locks"}),"\n",(0,t.jsx)(n.p,{children:"A range lock is a type of lock that InnoDB uses to lock a range of index entries. It is more commonly associated with preventing other transactions from inserting, updating, or deleting rows within a specific range that matches the condition of a query. Range locks are part of the mechanism InnoDB uses to implement the REPEATABLE READ isolation level."}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-sql",children:"SELECT * FROM orders WHERE order_id BETWEEN 100 AND 200 FOR UPDATE;\n"})}),"\n",(0,t.jsxs)(n.p,{children:["In this case, InnoDB locks all rows where ",(0,t.jsx)(n.code,{children:"order_id"})," is between 100 and 200, including any potential gaps within this range."]}),"\n",(0,t.jsx)(n.h3,{id:"gap-locks",children:"Gap Locks"}),"\n",(0,t.jsxs)(n.p,{children:["Depending on the isolation level of your transaction, InnoDB might use gap locks to prevent other transactions from inserting new rows into the gaps covered by the index range of the ",(0,t.jsx)(n.code,{children:"DELETE"})," statement. Gap locks are particularly relevant in ",(0,t.jsx)(n.code,{children:"REPEATABLE READ"})," or higher isolation levels."]}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-sql",children:"DELETE FROM orders WHERE order_id < 100;\n"})}),"\n",(0,t.jsxs)(n.p,{children:["Here, InnoDB locks the gaps between existing rows where ",(0,t.jsx)(n.code,{children:"order_id"})," is less than 100 to prevent new rows from being inserted into these gaps, which would affect the results of this ",(0,t.jsx)(n.code,{children:"DELETE"})," operation."]}),"\n",(0,t.jsx)(n.h3,{id:"index-locks",children:"Index Locks"}),"\n",(0,t.jsx)(n.p,{children:"InnoDB locks the index entries for the rows being deleted. This prevents other transactions from modifying the indexes until the transaction is complete."}),"\n",(0,t.jsx)(n.h3,{id:"table-locks",children:"Table Locks"}),"\n",(0,t.jsxs)(n.p,{children:["While InnoDB primarily uses row-level locking, there can also be implicit table-level locks that prevent schema changes to the table while the ",(0,t.jsx)(n.code,{children:"DELETE"})," operation is in progress."]}),"\n",(0,t.jsx)(n.h3,{id:"intention-locks",children:"Intention Locks"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:'During SELECT/INSERT/UPDATE/DELETE, a shared intention lock ("IS") allows access by multiple threads to work on the same table, but blocks exclusive table locks.'}),"\n",(0,t.jsx)(n.li,{children:'\ufeff\ufeffDuring ALTER TABLE or DROP TABLE, an exclusive intention lock ("IX") blocks other table locks, either shared or exclusive. So no one else can query, and no one can run their own ALTER/DROP TABLE.'}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"insert-intention-lock",children:"Insert intention lock"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffA special kind of gap lock, requested before a client tries to insert a row."}),"\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffInsert locks are shared, not exclusive\u2014multiple clients can acquire insert locks on the same gap."}),"\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffBut insert locks conflict with other exclusive locks."}),"\n"]}),"\n",(0,t.jsx)(n.h4,{id:"why-is-insert-intention-lock-shared",children:"why is insert intention lock shared?"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffMultiple clients prepare to insert into the same gap."}),"\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffThey may be inserting different rows within the same gap, so they don't conflict with each other."}),"\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffBut the insert intention lock blocks other clients from requesting exclusive locks on the same gap."}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"auto-inc-lock",children:"Auto-inc lock"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffA table lock, used when a client requests the next unique id for a given table."}),"\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffEnsures that each id is given to one client."}),"\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffBrief\u2014it is released as soon as the id is generated, instead of lasting to the end of the transaction like other locks."}),"\n",(0,t.jsxs)(n.li,{children:['\ufeff\ufeffBecause the lock is so brief, neither client can "',(0,t.jsx)(n.strong,{children:"undo"}),'"\u2014 i.e. return their id to the stack for someone else to use.']}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"deadlock",children:"Deadlock"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffWhen two or more concurrent clients wait for each other to release their locks, but since they are both waiting, they will never give up the lock they have."}),"\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffIn other words, a catch-22 of lock-waits."}),"\n",(0,t.jsx)(n.li,{children:'\ufeff\ufeffMany people use the term "deadlock" incorrectly\u2014 when they are describing a simple one-way lock wait.'}),"\n",(0,t.jsx)(n.li,{children:"Resolving deadlocks - MySQL detects cycles in lock waits, and kills one of the transactions immediately."}),"\n",(0,t.jsxs)(n.li,{children:["avoiding deadlocks","\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffEach client locks everything they need in one atomic request."}),"\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffAll clients request locks in the same order."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"key-differences-between-range-and-gap-locks",children:"Key Differences between Range and Gap Locks"}),"\n",(0,t.jsx)(n.h4,{id:"locking-focus",children:"Locking Focus"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Range Lock"}),": Locks both existing index entries and the gaps between them."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Gap Lock"}),": Locks only the gaps between existing index entries."]}),"\n"]}),"\n",(0,t.jsx)(n.h4,{id:"use-case",children:"Use Case"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Range Lock"}),": Ensures that the range of index entries remains consistent, used in scenarios where the exact range of rows needs to be locked."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Gap Lock"}),": Ensures that no new rows can be inserted into the gaps, used to prevent phantom reads and ensure repeatable reads."]}),"\n"]}),"\n",(0,t.jsx)(n.h2,{id:"lock-errors",children:"Lock Errors"}),"\n",(0,t.jsx)(n.h3,{id:"waiting-for-metadata-lock",children:"Waiting for metadata lock"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://www.linkedin.com/pulse/pitfalls-metadata-locking-during-ddl-execution-pranav-pandey/",children:"Pitfalls of Metadata Locking During DDL Execution in Production"})}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/8.0/en/performance-schema-metadata-locks-table.html",children:"MySQL :: MySQL 8.0 Reference Manual :: 29.12.13.3 The metadata_locks Table"})}),"\n",(0,t.jsx)(n.h2,{id:"links",children:"Links"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:(0,t.jsx)(n.a,{href:"https://www.youtube.com/watch?v=MqWQH-WWFBE&ab_channel=Percona",children:"Overview of Different ALTER Algorithms and Its Locking Scenarios in MySQL - Sri Sakthivel M.D. - YouTube"})}),"\n",(0,t.jsx)(n.li,{children:(0,t.jsx)(n.a,{href:"https://www.slideshare.net/slideshow/innodb-locking-explained-with-stick-figures/54574903",children:"InnoDB Locking Explained with Stick Figures | PPT"})}),"\n"]})]})}function h(e={}){const{wrapper:n}={...(0,i.a)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(d,{...e})}):d(e)}},766191:(e,n,s)=>{s.d(n,{Z:()=>t});const t=s.p+"assets/images/Pasted image 20240626161909-339cecf7806da77f7b2406e87478a6b6.png"},511151:(e,n,s)=>{s.d(n,{Z:()=>l,a:()=>r});var t=s(667294);const i={},o=t.createContext(i);function r(e){const n=t.useContext(o);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:r(e.components),t.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[55650],{470831:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>a,contentTitle:()=>r,default:()=>h,frontMatter:()=>o,metadata:()=>l,toc:()=>c});var t=s(785893),i=s(511151);const o={},r="Optimizing Locking Operations",l={id:"databases/sql-databases/mysql/optimizing-locking-operations",title:"Optimizing Locking Operations",description:"- 8.11 Optimizing Locking Operations",source:"@site/docs/databases/sql-databases/mysql/optimizing-locking-operations.md",sourceDirName:"databases/sql-databases/mysql",slug:"/databases/sql-databases/mysql/optimizing-locking-operations",permalink:"/databases/sql-databases/mysql/optimizing-locking-operations",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/databases/sql-databases/mysql/optimizing-locking-operations.md",tags:[],version:"current",lastUpdatedAt:1732901510,formattedLastUpdatedAt:"Nov 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"MySQLDump",permalink:"/databases/sql-databases/mysql/mysqldump"},next:{title:"Others",permalink:"/databases/sql-databases/mysql/others"}},a={},c=[{value:"Gap Locking",id:"gap-locking",level:2},{value:"Different Locks",id:"different-locks",level:2},{value:"Row Locks",id:"row-locks",level:3},{value:"Range Locks",id:"range-locks",level:3},{value:"Gap Locks",id:"gap-locks",level:3},{value:"Index Locks",id:"index-locks",level:3},{value:"Table Locks",id:"table-locks",level:3},{value:"Intention Locks",id:"intention-locks",level:3},{value:"Insert intention lock",id:"insert-intention-lock",level:3},{value:"why is insert intention lock shared?",id:"why-is-insert-intention-lock-shared",level:4},{value:"Auto-inc lock",id:"auto-inc-lock",level:3},{value:"Deadlock",id:"deadlock",level:3},{value:"Key Differences between Range and Gap Locks",id:"key-differences-between-range-and-gap-locks",level:3},{value:"Locking Focus",id:"locking-focus",level:4},{value:"Use Case",id:"use-case",level:4},{value:"Lock Errors",id:"lock-errors",level:2},{value:"Waiting for metadata lock",id:"waiting-for-metadata-lock",level:3},{value:"Links",id:"links",level:2}];function d(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",img:"img",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,i.a)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.h1,{id:"optimizing-locking-operations",children:"Optimizing Locking Operations"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"8.11 Optimizing Locking Operations"}),"\n",(0,t.jsx)(n.li,{children:"8.11.2 Table Locking Issues"}),"\n",(0,t.jsx)(n.li,{children:"8.11.3 Concurrent Inserts"}),"\n",(0,t.jsx)(n.li,{children:"8.11.4 Metadata Locking"}),"\n",(0,t.jsx)(n.li,{children:"8.11.5 External Locking"}),"\n"]}),"\n",(0,t.jsxs)(n.p,{children:[(0,t.jsx)(n.strong,{children:"Internal locking"})," is performed within the MySQL server itself to manage contention for table contents by multiple threads. This type of locking is internal because it is performed entirely by the server and involves no other programs."]}),"\n",(0,t.jsxs)(n.p,{children:[(0,t.jsx)(n.strong,{children:"External locking"})," occurs when the server and other programs lock ",(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/myisam-storage-engine.html",children:"MyISAM"})," table files to coordinate among themselves which program can access the tables at which time.\n8.11.1 Internal Locking Methods"]}),"\n",(0,t.jsxs)(n.p,{children:["MySQL uses ",(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/glossary.html#glos_row_lock",children:(0,t.jsx)(n.strong,{children:"row-level locking"})})," for InnoDB tables to support simultaneous write access by multiple sessions, making them suitable for multi-user, highly concurrent, and OLTP applications."]}),"\n",(0,t.jsxs)(n.p,{children:["To avoid ",(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/glossary.html#glos_deadlock",children:"deadlocks"})," when performing multiple concurrent write operations on a single InnoDB table, acquire necessary locks at the start of the transaction by issuing a SELECT ... FOR UPDATE statement for each group of rows expected to be modified, even if the data change statements come later in the transaction. If transactions modify or lock more than one table, issue the applicable statements in the same order within each transaction. Deadlocks affect performance rather than representing a serious error, because InnoDB automatically ",(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/glossary.html#glos_deadlock_detection",children:"detects"})," deadlock conditions and rolls back one of the affected transactions."]}),"\n",(0,t.jsxs)(n.p,{children:["On high concurrency systems, ",(0,t.jsx)(n.strong,{children:"deadlock detection can cause a slowdown when numerous threads wait for the same lock."})," At times, it may be ",(0,t.jsxs)(n.strong,{children:["more efficient to disable deadlock detection and rely on the ",(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_lock_wait_timeout",children:"innodb_lock_wait_timeout"})," setting for transaction rollback"]})," when a deadlock occurs. Deadlock detection can be disabled using the ",(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_deadlock_detect",children:"innodb_deadlock_detect"})," configuration option."]}),"\n",(0,t.jsx)(n.p,{children:"Advantages of row-level locking:"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"Fewer lock conflicts when different sessions access different rows."}),"\n",(0,t.jsx)(n.li,{children:"Fewer changes for rollbacks."}),"\n",(0,t.jsx)(n.li,{children:"Possible to lock a single row for a long time."}),"\n"]}),"\n",(0,t.jsxs)(n.p,{children:["MySQL uses ",(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.7/en/glossary.html#glos_table_lock",children:(0,t.jsx)(n.strong,{children:"table-level locking"})})," for MyISAM, MEMORY, and MERGE tables"]}),"\n",(0,t.jsx)(n.h2,{id:"gap-locking",children:"Gap Locking"}),"\n",(0,t.jsx)(n.p,{children:"A gap lock is a lock on a gap between index records, or a lock on the gap before the first or after the last index record."}),"\n",(0,t.jsx)(n.p,{children:"A lock on a gap between index records, or a lock on the gap before the first or after the last index record. For example, SELECT c1 FROM t WHERE c1 BETWEEN 10 and 20 FOR UPDATE; prevents other transactions from inserting a value of 15 into the column t.c1, whether or not there was already any such value in the column, because the gaps between all existing values in the range are locked. Contrast with record lock and next-key lock."}),"\n",(0,t.jsx)(n.p,{children:"Gap locks are part of the tradeoff between performance and concurrency, and are used in some transaction isolation levels and not others."}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.6/en/glossary.html#glos_gap_lock",children:"Gap Lock"})}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://stackoverflow.com/questions/32498437/deadlock-in-mysql-due-to-insert-by-multiple-threads",children:"Deadlock in MySQL due to Insert by multiple threads"})}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"http://thushw.blogspot.com/2010/11/mysql-deadlocks-with-concurrent-inserts.html",children:"mysql deadlocks with concurrent inserts"})}),"\n",(0,t.jsx)(n.p,{children:"It is possible to cause deadlocks in mysql (Innodb) on concurrent insert statements, without there being any transactions in progress. Deadlocks are possible even when the inserts don't collide on any key."}),"\n",(0,t.jsx)(n.p,{children:"The deadlocks occur due to gap locking done by mysql. There are several reasons for gap locking, and in this particular case, it has to do with preserving a unique key constraint on an index. The situation presents itself to us this way: There is a unique key constraint on a column and we are doing an insert. Mysql has to make sure that the lock it takes is sufficient to prevent another concurrent insert from adding a record with the same key, thus breaking the unique key constraint."}),"\n",(0,t.jsx)(n.p,{children:'Mysql innodb engine performs row locking on inserts. If column A has a unique key constraint, and we are adding the value "bbb" for column A in an insert statement, mysql needs to lock any gap in the index between the two current records where "bbb" will be inserted at.'}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/5.6/en/innodb-locks-set.html",children:"Innodb locks set"})}),"\n",(0,t.jsx)(n.h2,{id:"different-locks",children:"Different Locks"}),"\n",(0,t.jsxs)(n.ol,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Shared Lock (S Lock) -"})," It allows multiple transactions to read a resource simultaneously but not modify it. Other transactions can also acquire a shared lock on the same resource."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Exclusive Lock (X Lock) -"})," It allows a transaction to both read and modify a resource. No other transaction can acquire any type of lock on the same resource while an exclusive lock is held."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Update Lock (U Lock) -"})," It is used to prevent a deadlock scenario when a transaction intends to update a resource."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Schema Lock -"})," It is used to protect the structure of database objects."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Bulk Update Lock (BU Lock) -"})," It is used during bulk insert operations to improve performance by reducing the number of locks required."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Key-Range Lock -"})," It is used in indexed data to prevent phantom reads (inserting new rows into a range that a transaction has already read)."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Row-Level Lock -"})," It locks a specific row in a table, allowing other rows to be accessed concurrently."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Page-Level Lock -"})," It locks a specific page (a fixed-size block of data) in the database."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Table-Level Lock -"})," It locks an entire table. This is simple to implement but can reduce concurrency significantly."]}),"\n"]}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.img,{alt:"Types of database locks",src:s(766191).Z+"",width:"1538",height:"2000"})}),"\n",(0,t.jsx)(n.h3,{id:"row-locks",children:"Row Locks"}),"\n",(0,t.jsxs)(n.p,{children:["InnoDB uses row-level locking for ",(0,t.jsx)(n.code,{children:"DELETE"})," operations. This means that all rows that match the condition ",(0,t.jsx)(n.code,{children:"id < 391919930"})," will be locked until the transaction is complete. Row locks prevent other transactions from modifying or deleting these rows until the current transaction is finished."]}),"\n",(0,t.jsx)(n.h3,{id:"range-locks",children:"Range Locks"}),"\n",(0,t.jsx)(n.p,{children:"A range lock is a type of lock that InnoDB uses to lock a range of index entries. It is more commonly associated with preventing other transactions from inserting, updating, or deleting rows within a specific range that matches the condition of a query. Range locks are part of the mechanism InnoDB uses to implement the REPEATABLE READ isolation level."}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-sql",children:"SELECT * FROM orders WHERE order_id BETWEEN 100 AND 200 FOR UPDATE;\n"})}),"\n",(0,t.jsxs)(n.p,{children:["In this case, InnoDB locks all rows where ",(0,t.jsx)(n.code,{children:"order_id"})," is between 100 and 200, including any potential gaps within this range."]}),"\n",(0,t.jsx)(n.h3,{id:"gap-locks",children:"Gap Locks"}),"\n",(0,t.jsxs)(n.p,{children:["Depending on the isolation level of your transaction, InnoDB might use gap locks to prevent other transactions from inserting new rows into the gaps covered by the index range of the ",(0,t.jsx)(n.code,{children:"DELETE"})," statement. Gap locks are particularly relevant in ",(0,t.jsx)(n.code,{children:"REPEATABLE READ"})," or higher isolation levels."]}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-sql",children:"DELETE FROM orders WHERE order_id < 100;\n"})}),"\n",(0,t.jsxs)(n.p,{children:["Here, InnoDB locks the gaps between existing rows where ",(0,t.jsx)(n.code,{children:"order_id"})," is less than 100 to prevent new rows from being inserted into these gaps, which would affect the results of this ",(0,t.jsx)(n.code,{children:"DELETE"})," operation."]}),"\n",(0,t.jsxs)(n.p,{children:["Therefore it's better to use between for ",(0,t.jsx)(n.code,{children:"DELETE"})," to make operation non-locking"]}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-sql",children:"DELETE FROM orders WHERE order_id betwen 0 and 100;\n"})}),"\n",(0,t.jsx)(n.h3,{id:"index-locks",children:"Index Locks"}),"\n",(0,t.jsx)(n.p,{children:"InnoDB locks the index entries for the rows being deleted. This prevents other transactions from modifying the indexes until the transaction is complete."}),"\n",(0,t.jsx)(n.h3,{id:"table-locks",children:"Table Locks"}),"\n",(0,t.jsxs)(n.p,{children:["While InnoDB primarily uses row-level locking, there can also be implicit table-level locks that prevent schema changes to the table while the ",(0,t.jsx)(n.code,{children:"DELETE"})," operation is in progress."]}),"\n",(0,t.jsx)(n.h3,{id:"intention-locks",children:"Intention Locks"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:'During SELECT/INSERT/UPDATE/DELETE, a shared intention lock ("IS") allows access by multiple threads to work on the same table, but blocks exclusive table locks.'}),"\n",(0,t.jsx)(n.li,{children:'\ufeff\ufeffDuring ALTER TABLE or DROP TABLE, an exclusive intention lock ("IX") blocks other table locks, either shared or exclusive. So no one else can query, and no one can run their own ALTER/DROP TABLE.'}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"insert-intention-lock",children:"Insert intention lock"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffA special kind of gap lock, requested before a client tries to insert a row."}),"\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffInsert locks are shared, not exclusive\u2014multiple clients can acquire insert locks on the same gap."}),"\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffBut insert locks conflict with other exclusive locks."}),"\n"]}),"\n",(0,t.jsx)(n.h4,{id:"why-is-insert-intention-lock-shared",children:"why is insert intention lock shared?"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffMultiple clients prepare to insert into the same gap."}),"\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffThey may be inserting different rows within the same gap, so they don't conflict with each other."}),"\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffBut the insert intention lock blocks other clients from requesting exclusive locks on the same gap."}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"auto-inc-lock",children:"Auto-inc lock"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffA table lock, used when a client requests the next unique id for a given table."}),"\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffEnsures that each id is given to one client."}),"\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffBrief\u2014it is released as soon as the id is generated, instead of lasting to the end of the transaction like other locks."}),"\n",(0,t.jsxs)(n.li,{children:['\ufeff\ufeffBecause the lock is so brief, neither client can "',(0,t.jsx)(n.strong,{children:"undo"}),'"\u2014 i.e. return their id to the stack for someone else to use.']}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"deadlock",children:"Deadlock"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffWhen two or more concurrent clients wait for each other to release their locks, but since they are both waiting, they will never give up the lock they have."}),"\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffIn other words, a catch-22 of lock-waits."}),"\n",(0,t.jsx)(n.li,{children:'\ufeff\ufeffMany people use the term "deadlock" incorrectly\u2014 when they are describing a simple one-way lock wait.'}),"\n",(0,t.jsx)(n.li,{children:"Resolving deadlocks - MySQL detects cycles in lock waits, and kills one of the transactions immediately."}),"\n",(0,t.jsxs)(n.li,{children:["avoiding deadlocks","\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffEach client locks everything they need in one atomic request."}),"\n",(0,t.jsx)(n.li,{children:"\ufeff\ufeffAll clients request locks in the same order."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"key-differences-between-range-and-gap-locks",children:"Key Differences between Range and Gap Locks"}),"\n",(0,t.jsx)(n.h4,{id:"locking-focus",children:"Locking Focus"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Range Lock"}),": Locks both existing index entries and the gaps between them."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Gap Lock"}),": Locks only the gaps between existing index entries."]}),"\n"]}),"\n",(0,t.jsx)(n.h4,{id:"use-case",children:"Use Case"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Range Lock"}),": Ensures that the range of index entries remains consistent, used in scenarios where the exact range of rows needs to be locked."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Gap Lock"}),": Ensures that no new rows can be inserted into the gaps, used to prevent phantom reads and ensure repeatable reads."]}),"\n"]}),"\n",(0,t.jsx)(n.h2,{id:"lock-errors",children:"Lock Errors"}),"\n",(0,t.jsx)(n.h3,{id:"waiting-for-metadata-lock",children:"Waiting for metadata lock"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://www.linkedin.com/pulse/pitfalls-metadata-locking-during-ddl-execution-pranav-pandey/",children:"Pitfalls of Metadata Locking During DDL Execution in Production"})}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://dev.mysql.com/doc/refman/8.0/en/performance-schema-metadata-locks-table.html",children:"MySQL :: MySQL 8.0 Reference Manual :: 29.12.13.3 The metadata_locks Table"})}),"\n",(0,t.jsx)(n.h2,{id:"links",children:"Links"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:(0,t.jsx)(n.a,{href:"https://www.youtube.com/watch?v=MqWQH-WWFBE&ab_channel=Percona",children:"Overview of Different ALTER Algorithms and Its Locking Scenarios in MySQL - Sri Sakthivel M.D. - YouTube"})}),"\n",(0,t.jsx)(n.li,{children:(0,t.jsx)(n.a,{href:"https://www.slideshare.net/slideshow/innodb-locking-explained-with-stick-figures/54574903",children:"InnoDB Locking Explained with Stick Figures | PPT"})}),"\n"]})]})}function h(e={}){const{wrapper:n}={...(0,i.a)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(d,{...e})}):d(e)}},766191:(e,n,s)=>{s.d(n,{Z:()=>t});const t=s.p+"assets/images/Pasted image 20240626161909-339cecf7806da77f7b2406e87478a6b6.png"},511151:(e,n,s)=>{s.d(n,{Z:()=>l,a:()=>r});var t=s(667294);const i={},o=t.createContext(i);function r(e){const n=t.useContext(o);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:r(e.components),t.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/8355551c.a550112c.js b/assets/js/8355551c.a550112c.js deleted file mode 100644 index 8afcaff7a85..00000000000 --- a/assets/js/8355551c.a550112c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[56526],{284600:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>i,default:()=>h,frontMatter:()=>r,metadata:()=>o,toc:()=>d});var s=t(785893),a=t(511151);const r={},i="Analysis and Analyzers",o={id:"technologies/elasticsearch/analysis-and-analyzers",title:"Analysis and Analyzers",description:"Analysisis aprocess that consists of the following:",source:"@site/docs/technologies/elasticsearch/analysis-and-analyzers.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/analysis-and-analyzers",permalink:"/technologies/elasticsearch/analysis-and-analyzers",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/analysis-and-analyzers.md",tags:[],version:"current",lastUpdatedAt:1701793554,formattedLastUpdatedAt:"Dec 5, 2023",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Elasticsearch",permalink:"/technologies/elasticsearch/"},next:{title:"Architecture",permalink:"/technologies/elasticsearch/architecture"}},l={},d=[{value:"Character filters",id:"character-filters",level:2},{value:"Tokenizer",id:"tokenizer",level:2},{value:"Token filters",id:"token-filters",level:2},{value:"Standard analyzer",id:"standard-analyzer",level:2},{value:"Simple analyzer",id:"simple-analyzer",level:2},{value:"Whitespace analyzer",id:"whitespace-analyzer",level:2},{value:"Language analyzers",id:"language-analyzers",level:2},{value:"Text Embeddings",id:"text-embeddings",level:2},{value:"Word Embeddings",id:"word-embeddings",level:3},{value:"Sentence Embeddings",id:"sentence-embeddings",level:3}];function c(e){const n={a:"a",h1:"h1",h2:"h2",h3:"h3",li:"li",p:"p",ul:"ul",...(0,a.a)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h1,{id:"analysis-and-analyzers",children:"Analysis and Analyzers"}),"\n",(0,s.jsx)(n.p,{children:"Analysisis aprocess that consists of the following:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"First, tokenizing a block of text into individualtermssuitable for use in an inverted index,"}),"\n",(0,s.jsx)(n.li,{children:'Then normalizing these terms into a standard form to improve their "searchability," orrecall'}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:"This job isperformed by analyzers. Ananalyzeris really just a wrapper that combines three functions into asingle package:"}),"\n",(0,s.jsx)(n.h2,{id:"character-filters",children:"Character filters"}),"\n",(0,s.jsx)(n.p,{children:"First, the string is passed through anycharacter filtersin turn. Their job is to tidy up the string before tokenization. A character filter could be used to strip out HTML, or to convert&characters to the wordand."}),"\n",(0,s.jsx)(n.h2,{id:"tokenizer",children:"Tokenizer"}),"\n",(0,s.jsx)(n.p,{children:"Next, the string is tokenized into individual terms by atokenizer. A simple tokenizer might split the text into terms whenever it encounters whitespace or punctuation."}),"\n",(0,s.jsx)(n.h2,{id:"token-filters",children:"Token filters"}),"\n",(0,s.jsx)(n.p,{children:"Last, each term is passed through anytoken filtersin turn, which can change terms (for example, lowercasingQuick), remove terms (for example, stopwords such asa, and, the) or add terms (for example, synonyms likejumpandleap)."}),"\n",(0,s.jsx)(n.h2,{id:"standard-analyzer",children:"Standard analyzer"}),"\n",(0,s.jsxs)(n.p,{children:["The standard analyzeris the default analyzer that Elasticsearch uses. It is the best general choice for analyzing text that may be in any language. It splits the text onword boundaries, asdefined by the ",(0,s.jsx)(n.a,{href:"http://www.unicode.org/reports/tr29/",children:"Unicode Consortium"}),", and removes most punctuation. Finally, it lowercases all terms. It would produce"]}),"\n",(0,s.jsx)(n.p,{children:"set, the, shape, to, semi, transparent, by, calling, set_trans, 5"}),"\n",(0,s.jsx)(n.h2,{id:"simple-analyzer",children:"Simple analyzer"}),"\n",(0,s.jsx)(n.p,{children:"The simple analyzer splitsthe text on anything that isn't a letter, and lowercases the terms. It would produce"}),"\n",(0,s.jsx)(n.p,{children:"set, the, shape, to, semi, transparent, by, calling, set, trans"}),"\n",(0,s.jsx)(n.h2,{id:"whitespace-analyzer",children:"Whitespace analyzer"}),"\n",(0,s.jsx)(n.p,{children:"The whitespace analyzer splitsthe text on whitespace. It doesn't lowercase. It would produce"}),"\n",(0,s.jsx)(n.p,{children:"Set, the, shape, to, semi-transparent, by, calling, set_trans(5)"}),"\n",(0,s.jsx)(n.h2,{id:"language-analyzers",children:"Language analyzers"}),"\n",(0,s.jsxs)(n.p,{children:["Language-specific analyzersare available for ",(0,s.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/reference/2.4/analysis-lang-analyzer.html",children:"many languages"}),". They are able to take the peculiarities of the specified language into account. For instance, theenglishanalyzer comes with a set of Englishstopwords (common words likeandorthethat don't have much impact on relevance), which it removes. This analyzer also is able tostemEnglishwords because it understands the rules of English grammar."]}),"\n",(0,s.jsx)(n.p,{children:"Theenglishanalyzer would produce the following:"}),"\n",(0,s.jsx)(n.p,{children:"set, shape, semi, transpar, call, set_tran, 5"}),"\n",(0,s.jsx)(n.p,{children:"Note howtransparent, calling, andset_transhave been stemmed to their root form."}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/analysis-intro.html",children:"https://www.elastic.co/guide/en/elasticsearch/guide/current/analysis-intro.html"})}),"\n",(0,s.jsx)(n.h2,{id:"text-embeddings",children:"Text Embeddings"}),"\n",(0,s.jsx)(n.p,{children:"Encodes words and sentences as numeric vectors. These vector representations are designed to capture the linguistic content of the text, and can be used to assess similarity between a query and a document."}),"\n",(0,s.jsx)(n.h3,{id:"word-embeddings",children:"Word Embeddings"}),"\n",(0,s.jsx)(n.p,{children:'A word embedding model represents a word as a dense numeric vector. These vectors aim to capture semantic properties of the word - words whose vectors are close together should be similar in terms of semantic meaning. In a good embedding, directions in the vector space are tied to different aspects of the word\'s meaning. As an example, the vector for "Canada" might be close to "France" in one direction, and close to "Toronto" in another.'}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://www.youtube.com/watch?v=GmXkCCa4eVA",children:"Word Embeddings - EXPLAINED! - YouTube"})}),"\n",(0,s.jsxs)(n.p,{children:["The NLP and search communities have been interested in vector representations of words for quite some time. There was a resurgence of interest in word embeddings in the past few years, when many traditional tasks were being revisited using neural networks. Some successful word embedding algorithms were developed, including ",(0,s.jsx)(n.a,{href:"https://papers.nips.cc/paper/5021-distributed-representations-of-words-and-phrases-and-their-compositionality.pdf",children:"word2vec"})," and ",(0,s.jsx)(n.a,{href:"https://nlp.stanford.edu/pubs/glove.pdf",children:"GloVe"}),". These approaches make use of large text collections, and examine the context each word appears in to determine its vector representation:"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"The word2vec Skip-gram model trains a neural network to predict the context words around a word in a sentence. The internal weights of the network give the word embeddings."}),"\n",(0,s.jsx)(n.li,{children:"In GloVe, the similarity of words depends on how frequently they appear with other context words. The algorithm trains a simple linear model on word co-occurrence counts."}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"sentence-embeddings",children:"Sentence Embeddings"}),"\n",(0,s.jsx)(n.p,{children:"Researchers have started to focus on embedding techniques that represent not only words, but longer sections of text. Most current approaches are based on complex neural network architectures, and sometimes incorporate labelled data during training to aid in capturing semantic information."}),"\n",(0,s.jsx)(n.p,{children:"Once trained, the models are able to take a sentence and produce a vector for each word in context, as well as a vector for the entire sentence. Similarly to word embedding, pre-trained versions of many models are available, allowing users to skip the expensive training process. While the training process can be very resource-intensive, invoking the model is much more lightweight - sentence embedding models are typically fast enough to be used as part of real-time applications."}),"\n",(0,s.jsxs)(n.p,{children:["Some common sentence embedding techniques include ",(0,s.jsx)(n.a,{href:"https://arxiv.org/abs/1705.02364",children:"InferSent"}),", ",(0,s.jsx)(n.a,{href:"https://arxiv.org/abs/1803.11175",children:"Universal Sentence Encoder"}),", ",(0,s.jsx)(n.a,{href:"https://arxiv.org/abs/1802.05365",children:"ELMo"}),", and ",(0,s.jsx)(n.a,{href:"https://arxiv.org/abs/1810.04805",children:"BERT"}),". Improving word and sentence embeddings is an active area of research, and it's likely that additional strong models will be introduced."]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://www.elastic.co/blog/text-similarity-search-with-vectors-in-elasticsearch",children:"https://www.elastic.co/blog/text-similarity-search-with-vectors-in-elasticsearch"})})]})}function h(e={}){const{wrapper:n}={...(0,a.a)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(c,{...e})}):c(e)}},511151:(e,n,t)=>{t.d(n,{Z:()=>o,a:()=>i});var s=t(667294);const a={},r=s.createContext(a);function i(e){const n=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:i(e.components),s.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/8355551c.a66d859d.js b/assets/js/8355551c.a66d859d.js new file mode 100644 index 00000000000..661183c14b9 --- /dev/null +++ b/assets/js/8355551c.a66d859d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[56526],{284600:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>i,default:()=>h,frontMatter:()=>r,metadata:()=>o,toc:()=>d});var s=t(785893),a=t(511151);const r={},i="Analysis and Analyzers",o={id:"technologies/elasticsearch/analysis-and-analyzers",title:"Analysis and Analyzers",description:"Analysis is a process that consists of the following:",source:"@site/docs/technologies/elasticsearch/analysis-and-analyzers.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/analysis-and-analyzers",permalink:"/technologies/elasticsearch/analysis-and-analyzers",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/analysis-and-analyzers.md",tags:[],version:"current",lastUpdatedAt:1732901510,formattedLastUpdatedAt:"Nov 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Elasticsearch",permalink:"/technologies/elasticsearch/"},next:{title:"Architecture",permalink:"/technologies/elasticsearch/architecture"}},l={},d=[{value:"Character filters",id:"character-filters",level:2},{value:"Tokenizer",id:"tokenizer",level:2},{value:"Token filters",id:"token-filters",level:2},{value:"Standard analyzer",id:"standard-analyzer",level:2},{value:"Simple analyzer",id:"simple-analyzer",level:2},{value:"Whitespace analyzer",id:"whitespace-analyzer",level:2},{value:"Language analyzers",id:"language-analyzers",level:2},{value:"Text Embeddings",id:"text-embeddings",level:2},{value:"Word Embeddings",id:"word-embeddings",level:3},{value:"Sentence Embeddings",id:"sentence-embeddings",level:3}];function c(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",li:"li",p:"p",ul:"ul",...(0,a.a)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h1,{id:"analysis-and-analyzers",children:"Analysis and Analyzers"}),"\n",(0,s.jsx)(n.p,{children:"Analysis is a process that consists of the following:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"First, tokenizing a block of text into individualtermssuitable for use in an inverted index,"}),"\n",(0,s.jsx)(n.li,{children:'Then normalizing these terms into a standard form to improve their "searchability," orrecall'}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:"This job is performed by analyzers. Ananalyzer is really just a wrapper that combines three functions into a single package:"}),"\n",(0,s.jsx)(n.h2,{id:"character-filters",children:"Character filters"}),"\n",(0,s.jsx)(n.p,{children:"First, the string is passed through any character filters in turn. Their job is to tidy up the string before tokenization. A character filter could be used to strip out HTML, or to convert & characters to the word and."}),"\n",(0,s.jsx)(n.h2,{id:"tokenizer",children:"Tokenizer"}),"\n",(0,s.jsx)(n.p,{children:"Next, the string is tokenized into individual terms by a tokenizer. A simple tokenizer might split the text into terms whenever it encounters whitespace or punctuation."}),"\n",(0,s.jsx)(n.h2,{id:"token-filters",children:"Token filters"}),"\n",(0,s.jsx)(n.p,{children:"Last, each term is passed through any token filters in turn, which can change terms (for example, lowercasing Quick), remove terms (for example, stop words such as a, and, the) or add terms (for example, synonyms like jump and leap)."}),"\n",(0,s.jsx)(n.h2,{id:"standard-analyzer",children:"Standard analyzer"}),"\n",(0,s.jsxs)(n.p,{children:["The standard analyzer is the default analyzer that Elasticsearch uses. It is the best general choice for analyzing text that may be in any language. It splits the text on word boundaries, as defined by the ",(0,s.jsx)(n.a,{href:"http://www.unicode.org/reports/tr29/",children:"Unicode Consortium"}),", and removes most punctuation. Finally, it lowercases all terms. It would produce"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.code,{children:"set, the, shape, to, semi, transparent, by, calling, set_trans, 5"})}),"\n",(0,s.jsx)(n.h2,{id:"simple-analyzer",children:"Simple analyzer"}),"\n",(0,s.jsx)(n.p,{children:"The simple analyzer splits the text on anything that isn't a letter, and lowercases the terms. It would produce"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.code,{children:"set, the, shape, to, semi, transparent, by, calling, set, trans"})}),"\n",(0,s.jsx)(n.h2,{id:"whitespace-analyzer",children:"Whitespace analyzer"}),"\n",(0,s.jsx)(n.p,{children:"The whitespace analyzer splitsthe text on whitespace. It doesn't lowercase. It would produce"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.code,{children:"Set, the, shape, to, semi-transparent, by, calling, set_trans(5)"})}),"\n",(0,s.jsx)(n.h2,{id:"language-analyzers",children:"Language analyzers"}),"\n",(0,s.jsxs)(n.p,{children:["Language-specific analyzers are available for ",(0,s.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/reference/2.4/analysis-lang-analyzer.html",children:"many languages"}),". They are able to take the peculiarities of the specified language into account. For instance, the english analyzer comes with a set of English stop words (common words like and or the that don't have much impact on relevance), which it removes. This analyzer also is able to stem English words because it understands the rules of English grammar."]}),"\n",(0,s.jsx)(n.p,{children:"The english analyzer would produce the following:"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.code,{children:"set, shape, semi, transpar, call, set_tran, 5"})}),"\n",(0,s.jsx)(n.p,{children:"Note how transparent, calling, and set_trans have been stemmed to their root form."}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://www.elastic.co/guide/en/elasticsearch/guide/current/analysis-intro.html",children:"https://www.elastic.co/guide/en/elasticsearch/guide/current/analysis-intro.html"})}),"\n",(0,s.jsx)(n.h2,{id:"text-embeddings",children:"Text Embeddings"}),"\n",(0,s.jsx)(n.p,{children:"Encodes words and sentences as numeric vectors. These vector representations are designed to capture the linguistic content of the text, and can be used to assess similarity between a query and a document."}),"\n",(0,s.jsx)(n.h3,{id:"word-embeddings",children:"Word Embeddings"}),"\n",(0,s.jsx)(n.p,{children:'A word embedding model represents a word as a dense numeric vector. These vectors aim to capture semantic properties of the word - words whose vectors are close together should be similar in terms of semantic meaning. In a good embedding, directions in the vector space are tied to different aspects of the word\'s meaning. As an example, the vector for "Canada" might be close to "France" in one direction, and close to "Toronto" in another.'}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://www.youtube.com/watch?v=GmXkCCa4eVA",children:"Word Embeddings - EXPLAINED! - YouTube"})}),"\n",(0,s.jsxs)(n.p,{children:["The NLP and search communities have been interested in vector representations of words for quite some time. There was a resurgence of interest in word embeddings in the past few years, when many traditional tasks were being revisited using neural networks. Some successful word embedding algorithms were developed, including ",(0,s.jsx)(n.a,{href:"https://papers.nips.cc/paper/5021-distributed-representations-of-words-and-phrases-and-their-compositionality.pdf",children:"word2vec"})," and ",(0,s.jsx)(n.a,{href:"https://nlp.stanford.edu/pubs/glove.pdf",children:"GloVe"}),". These approaches make use of large text collections, and examine the context each word appears in to determine its vector representation:"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"The word2vec Skip-gram model trains a neural network to predict the context words around a word in a sentence. The internal weights of the network give the word embeddings."}),"\n",(0,s.jsx)(n.li,{children:"In GloVe, the similarity of words depends on how frequently they appear with other context words. The algorithm trains a simple linear model on word co-occurrence counts."}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"sentence-embeddings",children:"Sentence Embeddings"}),"\n",(0,s.jsx)(n.p,{children:"Researchers have started to focus on embedding techniques that represent not only words, but longer sections of text. Most current approaches are based on complex neural network architectures, and sometimes incorporate labelled data during training to aid in capturing semantic information."}),"\n",(0,s.jsx)(n.p,{children:"Once trained, the models are able to take a sentence and produce a vector for each word in context, as well as a vector for the entire sentence. Similarly to word embedding, pre-trained versions of many models are available, allowing users to skip the expensive training process. While the training process can be very resource-intensive, invoking the model is much more lightweight - sentence embedding models are typically fast enough to be used as part of real-time applications."}),"\n",(0,s.jsxs)(n.p,{children:["Some common sentence embedding techniques include ",(0,s.jsx)(n.a,{href:"https://arxiv.org/abs/1705.02364",children:"InferSent"}),", ",(0,s.jsx)(n.a,{href:"https://arxiv.org/abs/1803.11175",children:"Universal Sentence Encoder"}),", ",(0,s.jsx)(n.a,{href:"https://arxiv.org/abs/1802.05365",children:"ELMo"}),", and ",(0,s.jsx)(n.a,{href:"https://arxiv.org/abs/1810.04805",children:"BERT"}),". Improving word and sentence embeddings is an active area of research, and it's likely that additional strong models will be introduced."]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://www.elastic.co/blog/text-similarity-search-with-vectors-in-elasticsearch",children:"https://www.elastic.co/blog/text-similarity-search-with-vectors-in-elasticsearch"})})]})}function h(e={}){const{wrapper:n}={...(0,a.a)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(c,{...e})}):c(e)}},511151:(e,n,t)=>{t.d(n,{Z:()=>o,a:()=>i});var s=t(667294);const a={},r=s.createContext(a);function i(e){const n=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:i(e.components),s.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/935f2afb.b9411c7f.js b/assets/js/935f2afb.28111786.js similarity index 98% rename from assets/js/935f2afb.b9411c7f.js rename to assets/js/935f2afb.28111786.js index cfadaf29947..af03e3a192f 100644 --- a/assets/js/935f2afb.b9411c7f.js +++ b/assets/js/935f2afb.28111786.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[80053],{1109:e=>{e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"category","label":"About Me","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Achievements / Activities / Awards","href":"/about-me/achievements-activities-awards","docId":"about-me/achievements-activities-awards","unlisted":false},{"type":"link","label":"Experience","href":"/about-me/experience","docId":"about-me/experience","unlisted":false},{"type":"link","label":"FAQs","href":"/about-me/faqs","docId":"about-me/faqs","unlisted":false},{"type":"category","label":"Ideas","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Creating a Business / Startup","href":"/about-me/ideas/creating-a-business-startup","docId":"about-me/ideas/creating-a-business-startup","unlisted":false},{"type":"link","label":"Donations","href":"/about-me/ideas/donations","docId":"about-me/ideas/donations","unlisted":false},{"type":"link","label":"Education","href":"/about-me/ideas/education","docId":"about-me/ideas/education","unlisted":false},{"type":"link","label":"Improvements / Feedbacks","href":"/about-me/ideas/improvements-feedbacks","docId":"about-me/ideas/improvements-feedbacks","unlisted":false},{"type":"link","label":"Intro","href":"/about-me/ideas/intro","docId":"about-me/ideas/intro","unlisted":false},{"type":"link","label":"Non Profit","href":"/about-me/ideas/non-profit","docId":"about-me/ideas/non-profit","unlisted":false},{"type":"link","label":"Others","href":"/about-me/ideas/others","docId":"about-me/ideas/others","unlisted":false},{"type":"link","label":"Society","href":"/about-me/ideas/society","docId":"about-me/ideas/society","unlisted":false},{"type":"link","label":"Startup Ideas - Physical","href":"/about-me/ideas/startup-ideas-physical","docId":"about-me/ideas/startup-ideas-physical","unlisted":false},{"type":"link","label":"Startup Quotes","href":"/about-me/ideas/startup-quotes","docId":"about-me/ideas/startup-quotes","unlisted":false},{"type":"link","label":"Startups Ideas - SAAS","href":"/about-me/ideas/startups-ideas-saas","docId":"about-me/ideas/startups-ideas-saas","unlisted":false},{"type":"link","label":"Thoughts / Future / Ideas / Vision / Prediction","href":"/about-me/ideas/thoughts-future-ideas-vision-prediction","docId":"about-me/ideas/thoughts-future-ideas-vision-prediction","unlisted":false}],"href":"/about-me/ideas/"},{"type":"link","label":"Papers & Publications","href":"/about-me/paper-publications-references","docId":"about-me/paper-publications-references","unlisted":false},{"type":"link","label":"Personality","href":"/about-me/personality","docId":"about-me/personality","unlisted":false},{"type":"category","label":"Projects","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Agri Tech Digital Transformation Case Study","href":"/about-me/projects/44-agri-tech-digital-transformation-case-study","docId":"about-me/projects/44-agri-tech-digital-transformation-case-study","unlisted":false},{"type":"link","label":"Traditional AI Case study","href":"/about-me/projects/45-traditional-ai-case-studies","docId":"about-me/projects/45-traditional-ai-case-studies","unlisted":false},{"type":"link","label":"Podcast - Streamlining Cloud Migration Through Data Engineering","href":"/about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering","docId":"about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering","unlisted":false},{"type":"link","label":"GenAI Case Study - Careers360","href":"/about-me/projects/47-genai-case-study-careers360","docId":"about-me/projects/47-genai-case-study-careers360","unlisted":false},{"type":"link","label":"RAG / GenAI Presentation","href":"/about-me/projects/48-rag-genai-presentation","docId":"about-me/projects/48-rag-genai-presentation","unlisted":false},{"type":"link","label":"Data Practical Use Cases","href":"/about-me/projects/49-data-practical-use-cases","docId":"about-me/projects/49-data-practical-use-cases","unlisted":false},{"type":"link","label":"Use Cases: AIML in Logistics and Warehousing","href":"/about-me/projects/50-use-cases-aiml-logistics-warehousing","docId":"about-me/projects/50-use-cases-aiml-logistics-warehousing","unlisted":false},{"type":"link","label":"Case Study: Anomaly Detection in Metric Data using Isolation Forest","href":"/about-me/projects/51-case-study-anomaly-detection","docId":"about-me/projects/51-case-study-anomaly-detection","unlisted":false},{"type":"link","label":"Pull Request Risk Tagging Heuristics","href":"/about-me/projects/52-pull-request-risk-tagging-heuristics","docId":"about-me/projects/52-pull-request-risk-tagging-heuristics","unlisted":false},{"type":"link","label":"Mozark - Cloud Cost Optimization and Performance Enhancement","href":"/about-me/projects/53-mozark-cloud-cost-optimization","docId":"about-me/projects/53-mozark-cloud-cost-optimization","unlisted":false},{"type":"link","label":"Airflow and Kafka Migration","href":"/about-me/projects/54-airflow-kafka-migration","docId":"about-me/projects/54-airflow-kafka-migration","unlisted":false},{"type":"link","label":"Azure Social Media Analytics","href":"/about-me/projects/55-azure-social-media-analytics","docId":"about-me/projects/55-azure-social-media-analytics","unlisted":false},{"type":"link","label":"Freecharge - Cost Optimization and Database Administration","href":"/about-me/projects/56-freecharge-cost-optimization-dba","docId":"about-me/projects/56-freecharge-cost-optimization-dba","unlisted":false},{"type":"link","label":"Careers360 Cost Optimization","href":"/about-me/projects/57-careers360-cost-optimization","docId":"about-me/projects/57-careers360-cost-optimization","unlisted":false},{"type":"link","label":"AWS Gen AI Hackathon RAG","href":"/about-me/projects/58-aws-gen-ai-hackathon-rag","docId":"about-me/projects/58-aws-gen-ai-hackathon-rag","unlisted":false},{"type":"link","label":"Data Engineering Product Pitch IoT Industry","href":"/about-me/projects/59-data-engineering-product-pitch-iot-industry","docId":"about-me/projects/59-data-engineering-product-pitch-iot-industry","unlisted":false},{"type":"link","label":"Data Engineering Case Studies","href":"/about-me/projects/60-data-engineering-case-studies","docId":"about-me/projects/60-data-engineering-case-studies","unlisted":false},{"type":"link","label":"General Application Management Case Study","href":"/about-me/projects/61-general-application-management-case-study","docId":"about-me/projects/61-general-application-management-case-study","unlisted":false},{"type":"link","label":"Application Management Case Study - Telecom","href":"/about-me/projects/62-application-management-case-study-telecom","docId":"about-me/projects/62-application-management-case-study-telecom","unlisted":false},{"type":"link","label":"MLOps Master Document","href":"/about-me/projects/63-mlops-master-document","docId":"about-me/projects/63-mlops-master-document","unlisted":false},{"type":"link","label":"MLOps Case Studies","href":"/about-me/projects/64-mlops-case-studies","docId":"about-me/projects/64-mlops-case-studies","unlisted":false},{"type":"link","label":"Problems in IoT Industry","href":"/about-me/projects/65-problems-in-iot-industry","docId":"about-me/projects/65-problems-in-iot-industry","unlisted":false},{"type":"link","label":"IoT Case Studies","href":"/about-me/projects/66-iot-case-studies","docId":"about-me/projects/66-iot-case-studies","unlisted":false},{"type":"link","label":"Data Engineering - Battle Cards","href":"/about-me/projects/67-data-engineering-battle-cards","docId":"about-me/projects/67-data-engineering-battle-cards","unlisted":false},{"type":"link","label":"Interview - Datainsight / Alerting Engine","href":"/about-me/projects/70-interview-datainsight-alerting-engine","docId":"about-me/projects/70-interview-datainsight-alerting-engine","unlisted":false},{"type":"link","label":"Opstree Standard Proposal Format","href":"/about-me/projects/71-opstree-standard-proposal-format","docId":"about-me/projects/71-opstree-standard-proposal-format","unlisted":false},{"type":"link","label":"Bake.io Data Engineering","href":"/about-me/projects/75-bake-io-data-engineering","docId":"about-me/projects/75-bake-io-data-engineering","unlisted":false},{"type":"link","label":"Stashfin","href":"/about-me/projects/80-stashfin","docId":"about-me/projects/80-stashfin","unlisted":false},{"type":"link","label":"Stashfin Terms","href":"/about-me/projects/81-stashfin-terms","docId":"about-me/projects/81-stashfin-terms","unlisted":false},{"type":"link","label":"Stashfin Metrics","href":"/about-me/projects/82-stashfin-metrics","docId":"about-me/projects/82-stashfin-metrics","unlisted":false},{"type":"link","label":"Stashfin Twitter Bot","href":"/about-me/projects/85-stashfin-twitter-bot","docId":"about-me/projects/85-stashfin-twitter-bot","unlisted":false},{"type":"link","label":"Stashfin Customer Support","href":"/about-me/projects/86-stashfin-customer-support","docId":"about-me/projects/86-stashfin-customer-support","unlisted":false},{"type":"link","label":"Stashfin Team Management / Culture","href":"/about-me/projects/87-stashfin-team-management-culture","docId":"about-me/projects/87-stashfin-team-management-culture","unlisted":false},{"type":"link","label":"Stashfin Security / IAM / APIs","href":"/about-me/projects/88-stashfin-security-iam-apis","docId":"about-me/projects/88-stashfin-security-iam-apis","unlisted":false},{"type":"link","label":"Stashfin DevOps Overhaul","href":"/about-me/projects/89-stashfin-devops-overhaul","docId":"about-me/projects/89-stashfin-devops-overhaul","unlisted":false},{"type":"link","label":"Stashfin Tech Stack / Infra","href":"/about-me/projects/90-stashfin-tech-stack-infra","docId":"about-me/projects/90-stashfin-tech-stack-infra","unlisted":false},{"type":"link","label":"Stashfin AIML Use Cases & Implementation","href":"/about-me/projects/91-stashfin-aiml-use-cases","docId":"about-me/projects/91-stashfin-aiml-use-cases","unlisted":false},{"type":"link","label":"Others","href":"/about-me/projects/98-others","docId":"about-me/projects/98-others","unlisted":false},{"type":"link","label":"CISO Cybersecurity","href":"/about-me/projects/99-ciso-cybersecurity","docId":"about-me/projects/99-ciso-cybersecurity","unlisted":false}],"href":"/about-me/projects/"},{"type":"link","label":"Social Links","href":"/about-me/social-links","docId":"about-me/social-links","unlisted":false}],"href":"/about-me/"},{"type":"category","label":"AI","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Big Data","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Characteristics","href":"/ai/big-data/characteristics","docId":"ai/big-data/characteristics","unlisted":false},{"type":"link","label":"Data Masking","href":"/ai/big-data/data-masking","docId":"ai/big-data/data-masking","unlisted":false},{"type":"link","label":"Data Preprocessing","href":"/ai/big-data/data-preprocessing","docId":"ai/big-data/data-preprocessing","unlisted":false},{"type":"link","label":"# Data Quality","href":"/ai/big-data/data-quality","docId":"ai/big-data/data-quality","unlisted":false},{"type":"link","label":"Data","href":"/ai/big-data/data","docId":"ai/big-data/data","unlisted":false},{"type":"link","label":"Design of HBase","href":"/ai/big-data/design-of-hbase","docId":"ai/big-data/design-of-hbase","unlisted":false},{"type":"link","label":"Design of Key-Value Stores","href":"/ai/big-data/design-of-key-value-stores","docId":"ai/big-data/design-of-key-value-stores","unlisted":false},{"type":"link","label":"Design of Zookeeper","href":"/ai/big-data/design-of-zookeeper","docId":"ai/big-data/design-of-zookeeper","unlisted":false},{"type":"link","label":"Big Data","href":"/ai/big-data/intro","docId":"ai/big-data/intro","unlisted":false},{"type":"link","label":"Page Rank","href":"/ai/big-data/page-rank","docId":"ai/big-data/page-rank","unlisted":false},{"type":"link","label":"Parameter Servers","href":"/ai/big-data/parameter-servers","docId":"ai/big-data/parameter-servers","unlisted":false},{"type":"link","label":"Processing Engine","href":"/ai/big-data/processing-engine","docId":"ai/big-data/processing-engine","unlisted":false},{"type":"link","label":"Tools","href":"/ai/big-data/tools","docId":"ai/big-data/tools","unlisted":false},{"type":"link","label":"Types of Data","href":"/ai/big-data/types-of-data","docId":"ai/big-data/types-of-data","unlisted":false}],"href":"/ai/big-data/"},{"type":"category","label":"Computer Vision","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Convolutional Neural Network (CNN)","href":"/ai/computer-vision-cv/convolutional-neural-network-cnn","docId":"ai/computer-vision-cv/convolutional-neural-network-cnn","unlisted":false},{"type":"link","label":"CV - Libraries / Tools","href":"/ai/computer-vision-cv/cv-libraries-tools","docId":"ai/computer-vision-cv/cv-libraries-tools","unlisted":false},{"type":"link","label":"Examples","href":"/ai/computer-vision-cv/examples","docId":"ai/computer-vision-cv/examples","unlisted":false},{"type":"link","label":"Image / Data Labeling Tools","href":"/ai/computer-vision-cv/image-data-labeling-tools","docId":"ai/computer-vision-cv/image-data-labeling-tools","unlisted":false},{"type":"link","label":"Image Formats","href":"/ai/computer-vision-cv/image-formats","docId":"ai/computer-vision-cv/image-formats","unlisted":false},{"type":"link","label":"ImageMagick","href":"/ai/computer-vision-cv/imagemagick","docId":"ai/computer-vision-cv/imagemagick","unlisted":false},{"type":"link","label":"Computer Vision / CV Intro","href":"/ai/computer-vision-cv/intro","docId":"ai/computer-vision-cv/intro","unlisted":false},{"type":"link","label":"MNIST For ML Beginners | TensorFlow","href":"/ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow","docId":"ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow","unlisted":false},{"type":"link","label":"Model Building Stages","href":"/ai/computer-vision-cv/model-building-stages","docId":"ai/computer-vision-cv/model-building-stages","unlisted":false},{"type":"link","label":"Others","href":"/ai/computer-vision-cv/others","docId":"ai/computer-vision-cv/others","unlisted":false},{"type":"link","label":"Pre-Trained Models","href":"/ai/computer-vision-cv/pre-trained-models","docId":"ai/computer-vision-cv/pre-trained-models","unlisted":false}],"href":"/ai/computer-vision-cv/"},{"type":"category","label":"Data Science","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Data Analysis","href":"/ai/data-science/data-analysis","docId":"ai/data-science/data-analysis","unlisted":false},{"type":"link","label":"Data Governance","href":"/ai/data-science/data-governance","docId":"ai/data-science/data-governance","unlisted":false},{"type":"link","label":"Data Mining","href":"/ai/data-science/data-mining","docId":"ai/data-science/data-mining","unlisted":false},{"type":"link","label":"Datasets","href":"/ai/data-science/datasets","docId":"ai/data-science/datasets","unlisted":false},{"type":"link","label":"Intro","href":"/ai/data-science/intro","docId":"ai/data-science/intro","unlisted":false},{"type":"link","label":"Questions","href":"/ai/data-science/questions","docId":"ai/data-science/questions","unlisted":false},{"type":"link","label":"Recommender System","href":"/ai/data-science/recommender-system","docId":"ai/data-science/recommender-system","unlisted":false},{"type":"link","label":"Statistics","href":"/ai/data-science/statistics","docId":"ai/data-science/statistics","unlisted":false},{"type":"link","label":"Topics","href":"/ai/data-science/topics","docId":"ai/data-science/topics","unlisted":false}],"href":"/ai/data-science/"},{"type":"category","label":"Data Visualization","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"BI Tools","href":"/ai/data-visualization/bi-tools","docId":"ai/data-visualization/bi-tools","unlisted":false},{"type":"link","label":"Charts","href":"/ai/data-visualization/charts","docId":"ai/data-visualization/charts","unlisted":false},{"type":"link","label":"D3 (Data Driven Documents)","href":"/ai/data-visualization/d3-data-driven-documents","docId":"ai/data-visualization/d3-data-driven-documents","unlisted":false},{"type":"link","label":"Data Visualization","href":"/ai/data-visualization/intro","docId":"ai/data-visualization/intro","unlisted":false},{"type":"link","label":"Matplotlib","href":"/ai/data-visualization/matplotlib","docId":"ai/data-visualization/matplotlib","unlisted":false},{"type":"link","label":"Metabase","href":"/ai/data-visualization/metabase","docId":"ai/data-visualization/metabase","unlisted":false},{"type":"link","label":"Plotly","href":"/ai/data-visualization/plotly","docId":"ai/data-visualization/plotly","unlisted":false},{"type":"link","label":"PowerBI","href":"/ai/data-visualization/powerbi","docId":"ai/data-visualization/powerbi","unlisted":false},{"type":"category","label":"Tableau","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture and Components","href":"/ai/data-visualization/tableau/architecture-components","docId":"ai/data-visualization/tableau/architecture-components","unlisted":false},{"type":"link","label":"Augmented Analytics","href":"/ai/data-visualization/tableau/augmented-analytics","docId":"ai/data-visualization/tableau/augmented-analytics","unlisted":false},{"type":"link","label":"Concepts","href":"/ai/data-visualization/tableau/concepts","docId":"ai/data-visualization/tableau/concepts","unlisted":false},{"type":"link","label":"Dashboarding","href":"/ai/data-visualization/tableau/dashboarding","docId":"ai/data-visualization/tableau/dashboarding","unlisted":false},{"type":"link","label":"Data Model","href":"/ai/data-visualization/tableau/data-model","docId":"ai/data-visualization/tableau/data-model","unlisted":false},{"type":"link","label":"Data Sources","href":"/ai/data-visualization/tableau/data-sources","docId":"ai/data-visualization/tableau/data-sources","unlisted":false},{"type":"link","label":"Others","href":"/ai/data-visualization/tableau/others","docId":"ai/data-visualization/tableau/others","unlisted":false}],"href":"/ai/data-visualization/tableau/"}],"href":"/ai/data-visualization/"},{"type":"category","label":"Deep Learning","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/ai/deep-learning/commands","docId":"ai/deep-learning/commands","unlisted":false},{"type":"link","label":"Components","href":"/ai/deep-learning/components","docId":"ai/deep-learning/components","unlisted":false},{"type":"link","label":"DL Specialization","href":"/ai/deep-learning/dl-specialization","docId":"ai/deep-learning/dl-specialization","unlisted":false},{"type":"link","label":"Neural network and deep learning","href":"/ai/deep-learning/neural-network-and-deep-learning","docId":"ai/deep-learning/neural-network-and-deep-learning","unlisted":false},{"type":"link","label":"Others","href":"/ai/deep-learning/others","docId":"ai/deep-learning/others","unlisted":false},{"type":"link","label":"Resources","href":"/ai/deep-learning/resources","docId":"ai/deep-learning/resources","unlisted":false},{"type":"link","label":"Roadmap","href":"/ai/deep-learning/roadmap","docId":"ai/deep-learning/roadmap","unlisted":false}],"href":"/ai/deep-learning/"},{"type":"link","label":"Hackathons","href":"/ai/hackathons","docId":"ai/hackathons","unlisted":false},{"type":"category","label":"Libraries","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"AWS Sagemaker","href":"/ai/libraries/aws-sagemaker","docId":"ai/libraries/aws-sagemaker","unlisted":false},{"type":"link","label":"Deep Learning Frameworks","href":"/ai/libraries/deep-learning-frameworks","docId":"ai/libraries/deep-learning-frameworks","unlisted":false},{"type":"link","label":"Distributed Training","href":"/ai/libraries/distributed-training","docId":"ai/libraries/distributed-training","unlisted":false},{"type":"link","label":"JAX","href":"/ai/libraries/jax","docId":"ai/libraries/jax","unlisted":false},{"type":"link","label":"Keras","href":"/ai/libraries/keras","docId":"ai/libraries/keras","unlisted":false},{"type":"link","label":"Libraries","href":"/ai/libraries/ml-libraries","docId":"ai/libraries/ml-libraries","unlisted":false},{"type":"link","label":"ML Monitoring","href":"/ai/libraries/ml-monitoring","docId":"ai/libraries/ml-monitoring","unlisted":false},{"type":"link","label":"MLOps / Model Deployment","href":"/ai/libraries/mlops-model-deployment","docId":"ai/libraries/mlops-model-deployment","unlisted":false},{"type":"category","label":"TensorFlow","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Core Tensorflow","href":"/ai/libraries/tensorflow/core-tensorflow","docId":"ai/libraries/tensorflow/core-tensorflow","unlisted":false},{"type":"link","label":"Estimator API","href":"/ai/libraries/tensorflow/estimator-api","docId":"ai/libraries/tensorflow/estimator-api","unlisted":false},{"type":"link","label":"TensorFlow","href":"/ai/libraries/tensorflow/intro","docId":"ai/libraries/tensorflow/intro","unlisted":false}],"href":"/ai/libraries/tensorflow/"},{"type":"link","label":"Tools","href":"/ai/libraries/tools","docId":"ai/libraries/tools","unlisted":false}],"href":"/ai/libraries/"},{"type":"category","label":"ChatGPT / LLM","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Code Generators","href":"/ai/llm/code-generators","docId":"ai/llm/code-generators","unlisted":false},{"type":"link","label":"Design patterns","href":"/ai/llm/design-patterns","docId":"ai/llm/design-patterns","unlisted":false},{"type":"link","label":"Fintech Use Cases","href":"/ai/llm/fintech-use-cases","docId":"ai/llm/fintech-use-cases","unlisted":false},{"type":"link","label":"GenAI Projects","href":"/ai/llm/genai-projects","docId":"ai/llm/genai-projects","unlisted":false},{"type":"link","label":"Interview Questions","href":"/ai/llm/interview-questions","docId":"ai/llm/interview-questions","unlisted":false},{"type":"link","label":"Intro","href":"/ai/llm/intro","docId":"ai/llm/intro","unlisted":false},{"type":"link","label":"Libraries","href":"/ai/llm/libraries","docId":"ai/llm/libraries","unlisted":false},{"type":"link","label":"Model Limitations / Problems","href":"/ai/llm/limitations-problems","docId":"ai/llm/limitations-problems","unlisted":false},{"type":"link","label":"LLM Building","href":"/ai/llm/llm-building","docId":"ai/llm/llm-building","unlisted":false},{"type":"link","label":"LLM Tuning","href":"/ai/llm/llm-tuning","docId":"ai/llm/llm-tuning","unlisted":false},{"type":"link","label":"Models","href":"/ai/llm/models","docId":"ai/llm/models","unlisted":false},{"type":"link","label":"Natural Language to SQL","href":"/ai/llm/natural-language-to-sql","docId":"ai/llm/natural-language-to-sql","unlisted":false},{"type":"link","label":"Prompt Engineering","href":"/ai/llm/prompt-engineering","docId":"ai/llm/prompt-engineering","unlisted":false},{"type":"link","label":"Prompt Examples","href":"/ai/llm/prompt-examples","docId":"ai/llm/prompt-examples","unlisted":false},{"type":"link","label":"RAG Hackathon Questions","href":"/ai/llm/rag-hackathon-questions","docId":"ai/llm/rag-hackathon-questions","unlisted":false},{"type":"link","label":"RAG - retrieval-augmented generation","href":"/ai/llm/rag-retrieval-augmented-generation","docId":"ai/llm/rag-retrieval-augmented-generation","unlisted":false},{"type":"link","label":"Tools","href":"/ai/llm/tools","docId":"ai/llm/tools","unlisted":false}],"href":"/ai/llm/"},{"type":"category","label":"ML Algorithms","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Artificial Neural Networks","href":"/ai/ml-algorithms/artificial-neural-networks","docId":"ai/ml-algorithms/artificial-neural-networks","unlisted":false},{"type":"link","label":"Association Rules & Apriori Algorithm","href":"/ai/ml-algorithms/association-rules-and-apriori-algorithm","docId":"ai/ml-algorithms/association-rules-and-apriori-algorithm","unlisted":false},{"type":"link","label":"Bagging and Random Forest","href":"/ai/ml-algorithms/bagging-and-random-forest","docId":"ai/ml-algorithms/bagging-and-random-forest","unlisted":false},{"type":"link","label":"Bayes Classification","href":"/ai/ml-algorithms/bayes-classification","docId":"ai/ml-algorithms/bayes-classification","unlisted":false},{"type":"link","label":"Boosting and Adaboost","href":"/ai/ml-algorithms/boosting-and-adaboost","docId":"ai/ml-algorithms/boosting-and-adaboost","unlisted":false},{"type":"link","label":"Classification","href":"/ai/ml-algorithms/classification","docId":"ai/ml-algorithms/classification","unlisted":false},{"type":"link","label":"Clustering","href":"/ai/ml-algorithms/clustering","docId":"ai/ml-algorithms/clustering","unlisted":false},{"type":"link","label":"Decision Tree","href":"/ai/ml-algorithms/decision-tree","docId":"ai/ml-algorithms/decision-tree","unlisted":false},{"type":"link","label":"Dimensionality Reduction","href":"/ai/ml-algorithms/dimensionality-reduction","docId":"ai/ml-algorithms/dimensionality-reduction","unlisted":false},{"type":"link","label":"Embeddings & Estimators","href":"/ai/ml-algorithms/embeddings-and-estimators","docId":"ai/ml-algorithms/embeddings-and-estimators","unlisted":false},{"type":"link","label":"Ensemble Algorithms","href":"/ai/ml-algorithms/ensemble-algorithms","docId":"ai/ml-algorithms/ensemble-algorithms","unlisted":false},{"type":"link","label":"Feature Engineering","href":"/ai/ml-algorithms/feature-engineering","docId":"ai/ml-algorithms/feature-engineering","unlisted":false},{"type":"link","label":"Generative Adversarial Networks (GANs)","href":"/ai/ml-algorithms/generative-adversarial-networks-gans","docId":"ai/ml-algorithms/generative-adversarial-networks-gans","unlisted":false},{"type":"link","label":"Graph Neural Networks (GNN)","href":"/ai/ml-algorithms/graph-neural-networks-gnn","docId":"ai/ml-algorithms/graph-neural-networks-gnn","unlisted":false},{"type":"link","label":"ID3, C4.5 and CHAID","href":"/ai/ml-algorithms/id3-c45-and-chaid","docId":"ai/ml-algorithms/id3-c45-and-chaid","unlisted":false},{"type":"link","label":"K-Nearest Neighbor (KNN)","href":"/ai/ml-algorithms/k-nearest-neighbor-knn","docId":"ai/ml-algorithms/k-nearest-neighbor-knn","unlisted":false},{"type":"link","label":"Learning Vector Quantization (LVQ)","href":"/ai/ml-algorithms/learning-vector-quantization-lvq","docId":"ai/ml-algorithms/learning-vector-quantization-lvq","unlisted":false},{"type":"link","label":"Linear Discriminant Analysis (LDA)","href":"/ai/ml-algorithms/linear-discriminant-analysis-lda","docId":"ai/ml-algorithms/linear-discriminant-analysis-lda","unlisted":false},{"type":"link","label":"Linear regression","href":"/ai/ml-algorithms/linear-regression","docId":"ai/ml-algorithms/linear-regression","unlisted":false},{"type":"link","label":"Logistic regression","href":"/ai/ml-algorithms/logistic-regression","docId":"ai/ml-algorithms/logistic-regression","unlisted":false},{"type":"link","label":"Machine Learning Algorithm K-means using Map Reduce for Big Data Analytics","href":"/ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics","docId":"ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics","unlisted":false},{"type":"link","label":"Non linear regression","href":"/ai/ml-algorithms/non-linear-regression","docId":"ai/ml-algorithms/non-linear-regression","unlisted":false},{"type":"link","label":"Others","href":"/ai/ml-algorithms/others","docId":"ai/ml-algorithms/others","unlisted":false},{"type":"link","label":"Parallel K-means using Map Reduce on Big Data Cluster Analysis","href":"/ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis","docId":"ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis","unlisted":false},{"type":"link","label":"Predictive Analytics 1","href":"/ai/ml-algorithms/predictive-analytics-1","docId":"ai/ml-algorithms/predictive-analytics-1","unlisted":false},{"type":"link","label":"Predictive Analytics 2","href":"/ai/ml-algorithms/predictive-analytics-2","docId":"ai/ml-algorithms/predictive-analytics-2","unlisted":false},{"type":"link","label":"Regression","href":"/ai/ml-algorithms/regression","docId":"ai/ml-algorithms/regression","unlisted":false},{"type":"link","label":"Regularization","href":"/ai/ml-algorithms/regularization","docId":"ai/ml-algorithms/regularization","unlisted":false},{"type":"link","label":"Rule generation & Pattern Evaluation","href":"/ai/ml-algorithms/rule-generation-and-pattern-evaluation","docId":"ai/ml-algorithms/rule-generation-and-pattern-evaluation","unlisted":false},{"type":"link","label":"Support Vector Machine (SVM)","href":"/ai/ml-algorithms/support-vector-machine-svm","docId":"ai/ml-algorithms/support-vector-machine-svm","unlisted":false},{"type":"link","label":"Vector Embeddings","href":"/ai/ml-algorithms/vector-embeddings","docId":"ai/ml-algorithms/vector-embeddings","unlisted":false}],"href":"/ai/ml-algorithms/"},{"type":"category","label":"ML Fundamentals","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Andrew NG","href":"/ai/ml-fundamentals/andrew-ng","docId":"ai/ml-fundamentals/andrew-ng","unlisted":false},{"type":"link","label":"Intro","href":"/ai/ml-fundamentals/intro","docId":"ai/ml-fundamentals/intro","unlisted":false},{"type":"link","label":"Loss Function","href":"/ai/ml-fundamentals/loss-function","docId":"ai/ml-fundamentals/loss-function","unlisted":false},{"type":"link","label":"ML Classification","href":"/ai/ml-fundamentals/ml-classification","docId":"ai/ml-fundamentals/ml-classification","unlisted":false},{"type":"link","label":"ML Process","href":"/ai/ml-fundamentals/ml-process","docId":"ai/ml-fundamentals/ml-process","unlisted":false},{"type":"link","label":"Neural Networks 3B1B","href":"/ai/ml-fundamentals/neural-networks-3b1b","docId":"ai/ml-fundamentals/neural-networks-3b1b","unlisted":false},{"type":"link","label":"Neural Networks","href":"/ai/ml-fundamentals/neural-networks","docId":"ai/ml-fundamentals/neural-networks","unlisted":false},{"type":"link","label":"Practical AI Problems","href":"/ai/ml-fundamentals/practical-ai-problems","docId":"ai/ml-fundamentals/practical-ai-problems","unlisted":false},{"type":"link","label":"Preliminaries","href":"/ai/ml-fundamentals/preliminaries","docId":"ai/ml-fundamentals/preliminaries","unlisted":false},{"type":"link","label":"Questions","href":"/ai/ml-fundamentals/questions","docId":"ai/ml-fundamentals/questions","unlisted":false},{"type":"link","label":"Table of contents","href":"/ai/ml-fundamentals/table-of-contents","docId":"ai/ml-fundamentals/table-of-contents","unlisted":false}],"href":"/ai/ml-fundamentals/"},{"type":"category","label":"Model Evaluation","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"bias-variance trade-off","href":"/ai/model-evaluation/bias-variance-trade-off","docId":"ai/model-evaluation/bias-variance-trade-off","unlisted":false},{"type":"link","label":"Confusion Matrix","href":"/ai/model-evaluation/confusion-matrix","docId":"ai/model-evaluation/confusion-matrix","unlisted":false},{"type":"link","label":"Evaluation","href":"/ai/model-evaluation/evaluation","docId":"ai/model-evaluation/evaluation","unlisted":false},{"type":"link","label":"Generalization and Sampling","href":"/ai/model-evaluation/generalization-and-sampling","docId":"ai/model-evaluation/generalization-and-sampling","unlisted":false},{"type":"link","label":"Model Validation / Monitoring","href":"/ai/model-evaluation/model-validation-monitoring","docId":"ai/model-evaluation/model-validation-monitoring","unlisted":false},{"type":"link","label":"Optimization","href":"/ai/model-evaluation/optimization","docId":"ai/model-evaluation/optimization","unlisted":false},{"type":"link","label":"Others","href":"/ai/model-evaluation/others","docId":"ai/model-evaluation/others","unlisted":false}],"href":"/ai/model-evaluation/"},{"type":"category","label":"Move37","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"1. Markov Decision Process","href":"/ai/move-37/1-markov-decision-process","docId":"ai/move-37/1-markov-decision-process","unlisted":false},{"type":"link","label":"2. Dynamic Programming","href":"/ai/move-37/2-dynamic-programming","docId":"ai/move-37/2-dynamic-programming","unlisted":false},{"type":"link","label":"3. Monte Carlo Methods","href":"/ai/move-37/3-monte-carlo-methods","docId":"ai/move-37/3-monte-carlo-methods","unlisted":false},{"type":"link","label":"4. Model Free Learning","href":"/ai/move-37/4-model-free-learning","docId":"ai/move-37/4-model-free-learning","unlisted":false},{"type":"link","label":"5. RL in Continuous Space","href":"/ai/move-37/5-rl-in-continuous-space","docId":"ai/move-37/5-rl-in-continuous-space","unlisted":false},{"type":"link","label":"Algorithms","href":"/ai/move-37/algorithms","docId":"ai/move-37/algorithms","unlisted":false},{"type":"link","label":"Open AI Gym","href":"/ai/move-37/open-ai-gym","docId":"ai/move-37/open-ai-gym","unlisted":false},{"type":"link","label":"Others","href":"/ai/move-37/others","docId":"ai/move-37/others","unlisted":false},{"type":"link","label":"Q-Learning Algorithms","href":"/ai/move-37/q-learning-algorithms","docId":"ai/move-37/q-learning-algorithms","unlisted":false},{"type":"link","label":"Quizzes","href":"/ai/move-37/quizzes","docId":"ai/move-37/quizzes","unlisted":false},{"type":"link","label":"Reinforcement Learning","href":"/ai/move-37/reinforcement-learning","docId":"ai/move-37/reinforcement-learning","unlisted":false},{"type":"link","label":"Syllabus","href":"/ai/move-37/syllabus","docId":"ai/move-37/syllabus","unlisted":false}],"href":"/ai/move-37/"},{"type":"category","label":"NLP","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Chatbot / chatops","href":"/ai/nlp/chatbot-chatops","docId":"ai/nlp/chatbot-chatops","unlisted":false},{"type":"link","label":"Chatbot SAAS","href":"/ai/nlp/chatbot-saas","docId":"ai/nlp/chatbot-saas","unlisted":false},{"type":"link","label":"NLP","href":"/ai/nlp/intro","docId":"ai/nlp/intro","unlisted":false},{"type":"link","label":"NLP Concepts","href":"/ai/nlp/nlp-concepts","docId":"ai/nlp/nlp-concepts","unlisted":false},{"type":"link","label":"NLTK","href":"/ai/nlp/nltk","docId":"ai/nlp/nltk","unlisted":false},{"type":"link","label":"Word Embedding to Transformers","href":"/ai/nlp/word-embedding-to-transformers","docId":"ai/nlp/word-embedding-to-transformers","unlisted":false}],"href":"/ai/nlp/"},{"type":"category","label":"Numpy","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Cheatsheet","href":"/ai/numpy/cheatsheet","docId":"ai/numpy/cheatsheet","unlisted":false},{"type":"link","label":"Data Types","href":"/ai/numpy/data-types","docId":"ai/numpy/data-types","unlisted":false},{"type":"link","label":"Internals","href":"/ai/numpy/internals","docId":"ai/numpy/internals","unlisted":false},{"type":"link","label":"Intro","href":"/ai/numpy/intro","docId":"ai/numpy/intro","unlisted":false},{"type":"link","label":"Ndarray Object","href":"/ai/numpy/ndarray-object","docId":"ai/numpy/ndarray-object","unlisted":false},{"type":"link","label":"NumPy Reference","href":"/ai/numpy/numpy-reference","docId":"ai/numpy/numpy-reference","unlisted":false}],"href":"/ai/numpy/"},{"type":"link","label":"Others / Resources / Interview / Learning / Courses","href":"/ai/others-resources-interview-learning-courses","docId":"ai/others-resources-interview-learning-courses","unlisted":false},{"type":"category","label":"Pandas","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"CheatSheet","href":"/ai/pandas/cheatsheet","docId":"ai/pandas/cheatsheet","unlisted":false},{"type":"link","label":"Commands","href":"/ai/pandas/commands","docId":"ai/pandas/commands","unlisted":false},{"type":"link","label":"Data Structures","href":"/ai/pandas/data-structures","docId":"ai/pandas/data-structures","unlisted":false},{"type":"link","label":"Examples","href":"/ai/pandas/examples","docId":"ai/pandas/examples","unlisted":false},{"type":"link","label":"Others","href":"/ai/pandas/others","docId":"ai/pandas/others","unlisted":false},{"type":"link","label":"Pandas Intro","href":"/ai/pandas/pandas-intro","docId":"ai/pandas/pandas-intro","unlisted":false},{"type":"link","label":"user_guide","href":"/ai/pandas/user_guide","docId":"ai/pandas/user_guide","unlisted":false}],"href":"/ai/pandas/"},{"type":"category","label":"Scikit Learn / Scipy","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/ai/scikit-learn/commands","docId":"ai/scikit-learn/commands","unlisted":false},{"type":"link","label":"Intro","href":"/ai/scikit-learn/intro","docId":"ai/scikit-learn/intro","unlisted":false},{"type":"link","label":"Others","href":"/ai/scikit-learn/others","docId":"ai/scikit-learn/others","unlisted":false},{"type":"link","label":"Cheatsheet","href":"/ai/scikit-learn/scipy-cheatsheet","docId":"ai/scikit-learn/scipy-cheatsheet","unlisted":false},{"type":"link","label":"Intro","href":"/ai/scikit-learn/scipy-intro","docId":"ai/scikit-learn/scipy-intro","unlisted":false}],"href":"/ai/scikit-learn/"},{"type":"link","label":"Social Media Analytics Solution","href":"/ai/social-media-analytics-solution","docId":"ai/social-media-analytics-solution","unlisted":false},{"type":"link","label":"Solutions","href":"/ai/solutions","docId":"ai/solutions","unlisted":false}],"href":"/ai/"},{"type":"category","label":"Algorithms","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Advanced Algorithms","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"A* Search Algorithm","href":"/algorithms/advanced-algorithms/a-search-algorithm","docId":"algorithms/advanced-algorithms/a-search-algorithm","unlisted":false},{"type":"link","label":"Automated Planning and Scheduling","href":"/algorithms/advanced-algorithms/automated-planning-and-scheduling","docId":"algorithms/advanced-algorithms/automated-planning-and-scheduling","unlisted":false},{"type":"link","label":"Disk Scheduling Algorithms","href":"/algorithms/advanced-algorithms/disk-scheduling-algorithms","docId":"algorithms/advanced-algorithms/disk-scheduling-algorithms","unlisted":false},{"type":"link","label":"Informed Search Algorithms","href":"/algorithms/advanced-algorithms/informed-search-algorithms","docId":"algorithms/advanced-algorithms/informed-search-algorithms","unlisted":false},{"type":"link","label":"Intractability","href":"/algorithms/advanced-algorithms/intractability","docId":"algorithms/advanced-algorithms/intractability","unlisted":false},{"type":"link","label":"Linear Programming","href":"/algorithms/advanced-algorithms/linear-programming","docId":"algorithms/advanced-algorithms/linear-programming","unlisted":false},{"type":"link","label":"Multi Armed Bandit (MAB)","href":"/algorithms/advanced-algorithms/multi-armed-bandit-mab","docId":"algorithms/advanced-algorithms/multi-armed-bandit-mab","unlisted":false},{"type":"link","label":"Others","href":"/algorithms/advanced-algorithms/others","docId":"algorithms/advanced-algorithms/others","unlisted":false},{"type":"link","label":"Principle of Deferred Decisions","href":"/algorithms/advanced-algorithms/principle-of-deferred-decisions","docId":"algorithms/advanced-algorithms/principle-of-deferred-decisions","unlisted":false},{"type":"link","label":"Reductions","href":"/algorithms/advanced-algorithms/reductions","docId":"algorithms/advanced-algorithms/reductions","unlisted":false},{"type":"link","label":"Regular Expressions","href":"/algorithms/advanced-algorithms/regular-expressions","docId":"algorithms/advanced-algorithms/regular-expressions","unlisted":false},{"type":"link","label":"Travelling Salesman Problem","href":"/algorithms/advanced-algorithms/travelling-salesman-problem","docId":"algorithms/advanced-algorithms/travelling-salesman-problem","unlisted":false}],"href":"/algorithms/advanced-algorithms/"},{"type":"category","label":"Algorithmic Complexity","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Analysis of Algorithms","href":"/algorithms/algorithmic-complexity/analysis-of-algorithms","docId":"algorithms/algorithmic-complexity/analysis-of-algorithms","unlisted":false},{"type":"link","label":"Complexity Zoo","href":"/algorithms/algorithmic-complexity/complexity-zoo","docId":"algorithms/algorithmic-complexity/complexity-zoo","unlisted":false},{"type":"link","label":"Computational Complexity Theory","href":"/algorithms/algorithmic-complexity/computational-complexity-theory","docId":"algorithms/algorithmic-complexity/computational-complexity-theory","unlisted":false},{"type":"link","label":"Finite-State Machine","href":"/algorithms/algorithmic-complexity/finite-state-machine","docId":"algorithms/algorithmic-complexity/finite-state-machine","unlisted":false},{"type":"link","label":"Halting Problem","href":"/algorithms/algorithmic-complexity/halting-problem","docId":"algorithms/algorithmic-complexity/halting-problem","unlisted":false},{"type":"link","label":"NP Hardness","href":"/algorithms/algorithmic-complexity/np-hardness","docId":"algorithms/algorithmic-complexity/np-hardness","unlisted":false},{"type":"link","label":"Sub-linear time","href":"/algorithms/algorithmic-complexity/sub-linear-time","docId":"algorithms/algorithmic-complexity/sub-linear-time","unlisted":false},{"type":"link","label":"Time Complexities","href":"/algorithms/algorithmic-complexity/time-complexities","docId":"algorithms/algorithmic-complexity/time-complexities","unlisted":false},{"type":"link","label":"Turing vs Non Turing Machine","href":"/algorithms/algorithmic-complexity/turing-vs-non-turing-machine","docId":"algorithms/algorithmic-complexity/turing-vs-non-turing-machine","unlisted":false}],"href":"/algorithms/algorithmic-complexity/"},{"type":"category","label":"Bit Manipulation","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Examples","href":"/algorithms/bit-manipulation/examples","docId":"algorithms/bit-manipulation/examples","unlisted":false},{"type":"link","label":"General","href":"/algorithms/bit-manipulation/general","docId":"algorithms/bit-manipulation/general","unlisted":false}],"href":"/algorithms/bit-manipulation/"},{"type":"category","label":"Complex Systems","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Game Theory","href":"/algorithms/complex-systems/game-theory","docId":"algorithms/complex-systems/game-theory","unlisted":false},{"type":"link","label":"Complex Systems","href":"/algorithms/complex-systems/intro","docId":"algorithms/complex-systems/intro","unlisted":false},{"type":"link","label":"MiniMax Algorithm","href":"/algorithms/complex-systems/minimax-algorithm","docId":"algorithms/complex-systems/minimax-algorithm","unlisted":false},{"type":"link","label":"Move by nature","href":"/algorithms/complex-systems/move-by-nature","docId":"algorithms/complex-systems/move-by-nature","unlisted":false},{"type":"link","label":"Others","href":"/algorithms/complex-systems/others","docId":"algorithms/complex-systems/others","unlisted":false}],"href":"/algorithms/complex-systems/"},{"type":"category","label":"Data Compression","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Bitmap Compression Algorithms","href":"/algorithms/data-compression/bitmap-compression-algorithms","docId":"algorithms/data-compression/bitmap-compression-algorithms","unlisted":false},{"type":"link","label":"Huffman Compression","href":"/algorithms/data-compression/huffman-compression","docId":"algorithms/data-compression/huffman-compression","unlisted":false},{"type":"link","label":"Intro","href":"/algorithms/data-compression/intro","docId":"algorithms/data-compression/intro","unlisted":false},{"type":"link","label":"LZW Compression","href":"/algorithms/data-compression/lzw-compression","docId":"algorithms/data-compression/lzw-compression","unlisted":false},{"type":"link","label":"Others","href":"/algorithms/data-compression/others","docId":"algorithms/data-compression/others","unlisted":false},{"type":"link","label":"Run Length Encoding","href":"/algorithms/data-compression/run-length-encoding","docId":"algorithms/data-compression/run-length-encoding","unlisted":false}],"href":"/algorithms/data-compression/"},{"type":"category","label":"Dynamic Programming","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Basic Gold Mines","href":"/algorithms/dynamic-programming/basic-gold-mines","docId":"algorithms/dynamic-programming/basic-gold-mines","unlisted":false},{"type":"link","label":"General","href":"/algorithms/dynamic-programming/greedy-algorithms","docId":"algorithms/dynamic-programming/greedy-algorithms","unlisted":false},{"type":"link","label":"How to find DP","href":"/algorithms/dynamic-programming/how-to-find-dp","docId":"algorithms/dynamic-programming/how-to-find-dp","unlisted":false},{"type":"link","label":"Intro","href":"/algorithms/dynamic-programming/intro","docId":"algorithms/dynamic-programming/intro","unlisted":false},{"type":"link","label":"Knapsack Problem","href":"/algorithms/dynamic-programming/knapsack-problem","docId":"algorithms/dynamic-programming/knapsack-problem","unlisted":false},{"type":"link","label":"Levenshtein distance or Edit Distance","href":"/algorithms/dynamic-programming/levenshtein-distance-or-edit-distance","docId":"algorithms/dynamic-programming/levenshtein-distance-or-edit-distance","unlisted":false}],"href":"/algorithms/dynamic-programming/"},{"type":"category","label":"General","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"1d Range Search","href":"/algorithms/general/1d-range-search","docId":"algorithms/general/1d-range-search","unlisted":false},{"type":"link","label":"2d orthogonal range search","href":"/algorithms/general/2d-orthogonal-range-search","docId":"algorithms/general/2d-orthogonal-range-search","unlisted":false},{"type":"link","label":"Algo + DS","href":"/algorithms/general/algo-ds","docId":"algorithms/general/algo-ds","unlisted":false},{"type":"link","label":"Algorithms Questions","href":"/algorithms/general/algorithms-questions","docId":"algorithms/general/algorithms-questions","unlisted":false},{"type":"link","label":"Appel\'s Algorithm","href":"/algorithms/general/appel-algorithm","docId":"algorithms/general/appel-algorithm","unlisted":false},{"type":"link","label":"Competitive Programming Questions","href":"/algorithms/general/competitive-programming","docId":"algorithms/general/competitive-programming","unlisted":false},{"type":"link","label":"Euclidean Algorithm - Gcd","href":"/algorithms/general/euclidean-algorithm-gcd","docId":"algorithms/general/euclidean-algorithm-gcd","unlisted":false},{"type":"link","label":"Flocking Boids Algorithm","href":"/algorithms/general/flocking-boids-algorithm","docId":"algorithms/general/flocking-boids-algorithm","unlisted":false},{"type":"link","label":"Knuth Shuffle","href":"/algorithms/general/knuth-shuffle","docId":"algorithms/general/knuth-shuffle","unlisted":false},{"type":"link","label":"List of Algorithms","href":"/algorithms/general/list-of-algorithms","docId":"algorithms/general/list-of-algorithms","unlisted":false},{"type":"link","label":"N Queens Problem","href":"/algorithms/general/n-queens-problem","docId":"algorithms/general/n-queens-problem","unlisted":false},{"type":"link","label":"Orthogonal rectangle intersection search","href":"/algorithms/general/orthogonal-rectangle-intersection-search","docId":"algorithms/general/orthogonal-rectangle-intersection-search","unlisted":false},{"type":"link","label":"Prime Factorization","href":"/algorithms/general/prime-factorization","docId":"algorithms/general/prime-factorization","unlisted":false},{"type":"link","label":"Quick Select","href":"/algorithms/general/quick-select","docId":"algorithms/general/quick-select","unlisted":false},{"type":"link","label":"Recursion","href":"/algorithms/general/recursion","docId":"algorithms/general/recursion","unlisted":false},{"type":"link","label":"Reverse Polish Notation / Postfix Notation","href":"/algorithms/general/reverse-polish-notation-postfix-notation","docId":"algorithms/general/reverse-polish-notation-postfix-notation","unlisted":false},{"type":"link","label":"Sweep Line Algorithm","href":"/algorithms/general/sweep-line-algorithm","docId":"algorithms/general/sweep-line-algorithm","unlisted":false},{"type":"link","label":"Two-Stack Algorithm","href":"/algorithms/general/two-stack-algorithm","docId":"algorithms/general/two-stack-algorithm","unlisted":false},{"type":"link","label":"Types of algorithms","href":"/algorithms/general/types-of-algorithms","docId":"algorithms/general/types-of-algorithms","unlisted":false},{"type":"link","label":"Union-Find Algorithm","href":"/algorithms/general/union-find-algorithm","docId":"algorithms/general/union-find-algorithm","unlisted":false}],"href":"/algorithms/general/"},{"type":"category","label":"Graph Theory","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Acyclic Edge Weighted Digraphs","href":"/algorithms/graphtheory/acyclic-edge-weighted-digraphs","docId":"algorithms/graphtheory/acyclic-edge-weighted-digraphs","unlisted":false},{"type":"link","label":"Bellman Ford Algorithm","href":"/algorithms/graphtheory/bellman-ford-algorithm","docId":"algorithms/graphtheory/bellman-ford-algorithm","unlisted":false},{"type":"link","label":"Breadth First Search (BFS)","href":"/algorithms/graphtheory/breadth-first-search-bfs","docId":"algorithms/graphtheory/breadth-first-search-bfs","unlisted":false},{"type":"link","label":"Connected Components","href":"/algorithms/graphtheory/connected-components","docId":"algorithms/graphtheory/connected-components","unlisted":false},{"type":"link","label":"Depth First Search (DFS)","href":"/algorithms/graphtheory/depth-first-search-dfs","docId":"algorithms/graphtheory/depth-first-search-dfs","unlisted":false},{"type":"link","label":"Dijkstra\'s Algorithm","href":"/algorithms/graphtheory/dijkstra-algorithm","docId":"algorithms/graphtheory/dijkstra-algorithm","unlisted":false},{"type":"link","label":"Eulerian Trail","href":"/algorithms/graphtheory/eulerian-trail","docId":"algorithms/graphtheory/eulerian-trail","unlisted":false},{"type":"link","label":"Ford-Fulkerson Algorithm","href":"/algorithms/graphtheory/ford-fulkerson-algorithm","docId":"algorithms/graphtheory/ford-fulkerson-algorithm","unlisted":false},{"type":"link","label":"Graph Search","href":"/algorithms/graphtheory/graph-search","docId":"algorithms/graphtheory/graph-search","unlisted":false},{"type":"link","label":"Intro","href":"/algorithms/graphtheory/intro","docId":"algorithms/graphtheory/intro","unlisted":false},{"type":"link","label":"Kruskal\'s Algorithm for MST","href":"/algorithms/graphtheory/kruskal-algorithm-for-mst","docId":"algorithms/graphtheory/kruskal-algorithm-for-mst","unlisted":false},{"type":"link","label":"Longest Path in Edge-Weighted DAGs","href":"/algorithms/graphtheory/longest-path-in-edge-weighted-dags","docId":"algorithms/graphtheory/longest-path-in-edge-weighted-dags","unlisted":false},{"type":"link","label":"Maximum Flow and Minimum Cut","href":"/algorithms/graphtheory/maximum-flow-and-minimum-cut","docId":"algorithms/graphtheory/maximum-flow-and-minimum-cut","unlisted":false},{"type":"link","label":"Minimum Spanning Tree","href":"/algorithms/graphtheory/minimum-spanning-tree","docId":"algorithms/graphtheory/minimum-spanning-tree","unlisted":false},{"type":"link","label":"Other Graph Algorithms","href":"/algorithms/graphtheory/other-graph-algorithms","docId":"algorithms/graphtheory/other-graph-algorithms","unlisted":false},{"type":"link","label":"Prim\'s Algorithm for MST","href":"/algorithms/graphtheory/prim-algorithm-for-mst","docId":"algorithms/graphtheory/prim-algorithm-for-mst","unlisted":false},{"type":"link","label":"Problems","href":"/algorithms/graphtheory/problems","docId":"algorithms/graphtheory/problems","unlisted":false},{"type":"link","label":"Resources","href":"/algorithms/graphtheory/resources","docId":"algorithms/graphtheory/resources","unlisted":false},{"type":"link","label":"Seam Carving","href":"/algorithms/graphtheory/seam-carving","docId":"algorithms/graphtheory/seam-carving","unlisted":false},{"type":"link","label":"Shortest Path Algorithms","href":"/algorithms/graphtheory/shortest-path-algorithms","docId":"algorithms/graphtheory/shortest-path-algorithms","unlisted":false},{"type":"link","label":"Strong Components","href":"/algorithms/graphtheory/strong-components","docId":"algorithms/graphtheory/strong-components","unlisted":false},{"type":"link","label":"Topological Sort Algorithm","href":"/algorithms/graphtheory/topological-sort-algorithm","docId":"algorithms/graphtheory/topological-sort-algorithm","unlisted":false}],"href":"/algorithms/graphtheory/"},{"type":"category","label":"Mathematics","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Combinatorial Optimization","href":"/algorithms/mathematics/combinatorial-optimization","docId":"algorithms/mathematics/combinatorial-optimization","unlisted":false},{"type":"link","label":"MO\'s Algorithm","href":"/algorithms/mathematics/mo-algorithm","docId":"algorithms/mathematics/mo-algorithm","unlisted":false},{"type":"link","label":"Powerset","href":"/algorithms/mathematics/powerset","docId":"algorithms/mathematics/powerset","unlisted":false}],"href":"/algorithms/mathematics/"},{"type":"category","label":"Searching Sorting","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"3-Way Quick Sort","href":"/algorithms/searching-sorting/3-way-quick-sort","docId":"algorithms/searching-sorting/3-way-quick-sort","unlisted":false},{"type":"link","label":"3-way string radix quicksort","href":"/algorithms/searching-sorting/3-way-string-radix-quicksort","docId":"algorithms/searching-sorting/3-way-string-radix-quicksort","unlisted":false},{"type":"link","label":"Binary Search","href":"/algorithms/searching-sorting/binary-search","docId":"algorithms/searching-sorting/binary-search","unlisted":false},{"type":"link","label":"Convex Hull","href":"/algorithms/searching-sorting/convex-hull","docId":"algorithms/searching-sorting/convex-hull","unlisted":false},{"type":"link","label":"External Sort","href":"/algorithms/searching-sorting/external-sort","docId":"algorithms/searching-sorting/external-sort","unlisted":false},{"type":"link","label":"Heapsort","href":"/algorithms/searching-sorting/heapsort","docId":"algorithms/searching-sorting/heapsort","unlisted":false},{"type":"link","label":"Insertion Sort","href":"/algorithms/searching-sorting/insertion-sort","docId":"algorithms/searching-sorting/insertion-sort","unlisted":false},{"type":"link","label":"Intro","href":"/algorithms/searching-sorting/intro","docId":"algorithms/searching-sorting/intro","unlisted":false},{"type":"link","label":"Key-indexed Counting","href":"/algorithms/searching-sorting/key-indexed-counting","docId":"algorithms/searching-sorting/key-indexed-counting","unlisted":false},{"type":"link","label":"Knuth Shuffle","href":"/algorithms/searching-sorting/knuth-shuffle","docId":"algorithms/searching-sorting/knuth-shuffle","unlisted":false},{"type":"link","label":"LSD Radix Sort","href":"/algorithms/searching-sorting/lsd-radix-sort","docId":"algorithms/searching-sorting/lsd-radix-sort","unlisted":false},{"type":"link","label":"Merge Sort","href":"/algorithms/searching-sorting/merge-sort","docId":"algorithms/searching-sorting/merge-sort","unlisted":false},{"type":"link","label":"MSD Radix Sort","href":"/algorithms/searching-sorting/msd-radix-sort","docId":"algorithms/searching-sorting/msd-radix-sort","unlisted":false},{"type":"link","label":"Others","href":"/algorithms/searching-sorting/others","docId":"algorithms/searching-sorting/others","unlisted":false},{"type":"link","label":"Quick Sort","href":"/algorithms/searching-sorting/quick-sort","docId":"algorithms/searching-sorting/quick-sort","unlisted":false},{"type":"link","label":"Selection Sort","href":"/algorithms/searching-sorting/selection-sort","docId":"algorithms/searching-sorting/selection-sort","unlisted":false},{"type":"link","label":"Shell Sort","href":"/algorithms/searching-sorting/shell-sort","docId":"algorithms/searching-sorting/shell-sort","unlisted":false},{"type":"link","label":"Shuffle Sort","href":"/algorithms/searching-sorting/shuffle-sort","docId":"algorithms/searching-sorting/shuffle-sort","unlisted":false},{"type":"link","label":"System Sort","href":"/algorithms/searching-sorting/system-sort","docId":"algorithms/searching-sorting/system-sort","unlisted":false},{"type":"link","label":"TimSort","href":"/algorithms/searching-sorting/timsort","docId":"algorithms/searching-sorting/timsort","unlisted":false}],"href":"/algorithms/searching-sorting/"},{"type":"category","label":"String Algorithms","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Boyer-Moore","href":"/algorithms/string-algorithms/boyer-moore","docId":"algorithms/string-algorithms/boyer-moore","unlisted":false},{"type":"link","label":"Brute Force","href":"/algorithms/string-algorithms/brute-force","docId":"algorithms/string-algorithms/brute-force","unlisted":false},{"type":"link","label":"Intro","href":"/algorithms/string-algorithms/intro","docId":"algorithms/string-algorithms/intro","unlisted":false},{"type":"link","label":"Knuth-Morris-Pratt","href":"/algorithms/string-algorithms/knuth-morris-pratt","docId":"algorithms/string-algorithms/knuth-morris-pratt","unlisted":false},{"type":"link","label":"Longest Common Prefix","href":"/algorithms/string-algorithms/longest-common-prefix","docId":"algorithms/string-algorithms/longest-common-prefix","unlisted":false},{"type":"link","label":"Rabin Karp","href":"/algorithms/string-algorithms/rabin-karp","docId":"algorithms/string-algorithms/rabin-karp","unlisted":false},{"type":"link","label":"Substring Search Intro","href":"/algorithms/string-algorithms/substring-search-intro","docId":"algorithms/string-algorithms/substring-search-intro","unlisted":false}],"href":"/algorithms/string-algorithms/"}],"href":"/algorithms/"},{"type":"category","label":"Book Summaries","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"13 Things Mentally Strong Parents Don\'t Do","href":"/book-summaries/13-things-mentally-strong-parents-dont-do","docId":"book-summaries/13-things-mentally-strong-parents-dont-do","unlisted":false},{"type":"link","label":"13 Things Mentally Strong People Don\'t Do","href":"/book-summaries/13-things-mentally-strong-people-dont-do","docId":"book-summaries/13-things-mentally-strong-people-dont-do","unlisted":false},{"type":"link","label":"48 Laws of Power","href":"/book-summaries/48-laws-of-power","docId":"book-summaries/48-laws-of-power","unlisted":false},{"type":"link","label":"7 Powers: The Foundations of Business Strategy","href":"/book-summaries/7-powers-the-foundations-of-business-strategy","docId":"book-summaries/7-powers-the-foundations-of-business-strategy","unlisted":false},{"type":"link","label":"Alchemy: The Surprising Power of Ideas That Don\'t Make Sense","href":"/book-summaries/alchemy-the-surprising-power-of-ideas-that-dont-make-sense","docId":"book-summaries/alchemy-the-surprising-power-of-ideas-that-dont-make-sense","unlisted":false},{"type":"link","label":"Atomic Habits","href":"/book-summaries/atomic-habits","docId":"book-summaries/atomic-habits","unlisted":false},{"type":"link","label":"Books / Blinkist - Productivity","href":"/book-summaries/books-blinkist-productivity","docId":"book-summaries/books-blinkist-productivity","unlisted":false},{"type":"link","label":"Books","href":"/book-summaries/books-to-read","docId":"book-summaries/books-to-read","unlisted":false},{"type":"link","label":"Chasing Excellence","href":"/book-summaries/chasing-excellence","docId":"book-summaries/chasing-excellence","unlisted":false},{"type":"link","label":"Collaborative Intelligence","href":"/book-summaries/collaborative-intelligence","docId":"book-summaries/collaborative-intelligence","unlisted":false},{"type":"link","label":"David and Goliath","href":"/book-summaries/david-and-goliath","docId":"book-summaries/david-and-goliath","unlisted":false},{"type":"link","label":"Deep work","href":"/book-summaries/deep-work","docId":"book-summaries/deep-work","unlisted":false},{"type":"link","label":"Didn\'t see it coming","href":"/book-summaries/didnt-see-it-coming","docId":"book-summaries/didnt-see-it-coming","unlisted":false},{"type":"link","label":"Do Hard Things","href":"/book-summaries/do-hard-things","docId":"book-summaries/do-hard-things","unlisted":false},{"type":"link","label":"Doing Good Better","href":"/book-summaries/doing-good-better","docId":"book-summaries/doing-good-better","unlisted":false},{"type":"link","label":"Dollars and Sense","href":"/book-summaries/dollars-and-sense","docId":"book-summaries/dollars-and-sense","unlisted":false},{"type":"link","label":"Doughnut Economics","href":"/book-summaries/doughnut-economics","docId":"book-summaries/doughnut-economics","unlisted":false},{"type":"link","label":"Economics for the Common Good","href":"/book-summaries/economics-for-the-common-good","docId":"book-summaries/economics-for-the-common-good","unlisted":false},{"type":"link","label":"Edge of Chaos","href":"/book-summaries/edge-of-chaos","docId":"book-summaries/edge-of-chaos","unlisted":false},{"type":"link","label":"Essentialism","href":"/book-summaries/essentialism","docId":"book-summaries/essentialism","unlisted":false},{"type":"link","label":"Everyday Millionaires","href":"/book-summaries/everyday-millionaires","docId":"book-summaries/everyday-millionaires","unlisted":false},{"type":"link","label":"Find Your Element","href":"/book-summaries/find-your-element","docId":"book-summaries/find-your-element","unlisted":false},{"type":"link","label":"First Things First","href":"/book-summaries/first-things-first","docId":"book-summaries/first-things-first","unlisted":false},{"type":"link","label":"From Strength to Strength","href":"/book-summaries/from-strength-to-strength","docId":"book-summaries/from-strength-to-strength","unlisted":false},{"type":"link","label":"Game Changers","href":"/book-summaries/game-changers","docId":"book-summaries/game-changers","unlisted":false},{"type":"link","label":"Get it","href":"/book-summaries/get-it","docId":"book-summaries/get-it","unlisted":false},{"type":"link","label":"Getting Things Done","href":"/book-summaries/getting-things-done","docId":"book-summaries/getting-things-done","unlisted":false},{"type":"link","label":"Good Economics for Hard Times","href":"/book-summaries/good-economics-for-hard-times","docId":"book-summaries/good-economics-for-hard-times","unlisted":false},{"type":"link","label":"How should we live?","href":"/book-summaries/how-should-we-live","docId":"book-summaries/how-should-we-live","unlisted":false},{"type":"link","label":"How to be a Stoic","href":"/book-summaries/how-to-be-a-stoic","docId":"book-summaries/how-to-be-a-stoic","unlisted":false},{"type":"link","label":"How to be an adult in relationships","href":"/book-summaries/how-to-be-an-adult-in-relationships","docId":"book-summaries/how-to-be-an-adult-in-relationships","unlisted":false},{"type":"link","label":"How to have impossible conversations","href":"/book-summaries/how-to-have-impossible-conversations","docId":"book-summaries/how-to-have-impossible-conversations","unlisted":false},{"type":"link","label":"How to live a good life","href":"/book-summaries/how-to-live-a-good-life","docId":"book-summaries/how-to-live-a-good-life","unlisted":false},{"type":"link","label":"How to Make Money in Stocks","href":"/book-summaries/how-to-make-money-in-stocks","docId":"book-summaries/how-to-make-money-in-stocks","unlisted":false},{"type":"link","label":"How to Take Smart Notes","href":"/book-summaries/how-to-take-smart-notes","docId":"book-summaries/how-to-take-smart-notes","unlisted":false},{"type":"link","label":"Hyperfocus","href":"/book-summaries/hyperfocus","docId":"book-summaries/hyperfocus","unlisted":false},{"type":"link","label":"Leaders Eat Last","href":"/book-summaries/leaders-eat-last","docId":"book-summaries/leaders-eat-last","unlisted":false},{"type":"link","label":"Leadership and the Rise of Great Powers","href":"/book-summaries/leadership-and-the-rise-of-great-powers","docId":"book-summaries/leadership-and-the-rise-of-great-powers","unlisted":false},{"type":"link","label":"Life is in the Transitions","href":"/book-summaries/life-is-in-the-transitions","docId":"book-summaries/life-is-in-the-transitions","unlisted":false},{"type":"link","label":"Off the Clock","href":"/book-summaries/off-the-clock","docId":"book-summaries/off-the-clock","unlisted":false},{"type":"link","label":"On Writing Well","href":"/book-summaries/on-writing-well","docId":"book-summaries/on-writing-well","unlisted":false},{"type":"link","label":"Organize Tomorrow Today","href":"/book-summaries/organize-tomorrow-today","docId":"book-summaries/organize-tomorrow-today","unlisted":false},{"type":"link","label":"Others","href":"/book-summaries/others","docId":"book-summaries/others","unlisted":false},{"type":"link","label":"Power and Prediction","href":"/book-summaries/power-and-prediction","docId":"book-summaries/power-and-prediction","unlisted":false},{"type":"link","label":"Power Relationships","href":"/book-summaries/power-relationships","docId":"book-summaries/power-relationships","unlisted":false},{"type":"link","label":"Power, Sex, Suicide","href":"/book-summaries/power-sex-suicide","docId":"book-summaries/power-sex-suicide","unlisted":false},{"type":"link","label":"Predictably Irrational","href":"/book-summaries/predictably-irrational","docId":"book-summaries/predictably-irrational","unlisted":false},{"type":"link","label":"Primed to Perform","href":"/book-summaries/primed-to-perform","docId":"book-summaries/primed-to-perform","unlisted":false},{"type":"link","label":"Principles","href":"/book-summaries/principles","docId":"book-summaries/principles","unlisted":false},{"type":"link","label":"Secrets of Power Negotiating","href":"/book-summaries/secrets-of-power-negotiating","docId":"book-summaries/secrets-of-power-negotiating","unlisted":false},{"type":"link","label":"Sell Like Crazy","href":"/book-summaries/sell-like-crazy","docId":"book-summaries/sell-like-crazy","unlisted":false},{"type":"link","label":"Skin in the Game","href":"/book-summaries/skin-in-the-game","docId":"book-summaries/skin-in-the-game","unlisted":false},{"type":"link","label":"Small Is Beautiful: Economics as if People Mattered","href":"/book-summaries/small-is-beautiful","docId":"book-summaries/small-is-beautiful","unlisted":false},{"type":"link","label":"Social Intelligence","href":"/book-summaries/social-intelligence","docId":"book-summaries/social-intelligence","unlisted":false},{"type":"link","label":"Solve for Happy","href":"/book-summaries/solve-for-happy","docId":"book-summaries/solve-for-happy","unlisted":false},{"type":"link","label":"Switch on your brain","href":"/book-summaries/switch-on-your-brain","docId":"book-summaries/switch-on-your-brain","unlisted":false},{"type":"link","label":"Talking Across the Divide","href":"/book-summaries/talking-across-divide","docId":"book-summaries/talking-across-divide","unlisted":false},{"type":"link","label":"The 22 Immutable Laws of Branding","href":"/book-summaries/the-22-immutable-laws-of-branding","docId":"book-summaries/the-22-immutable-laws-of-branding","unlisted":false},{"type":"link","label":"The 3-Minute Rule","href":"/book-summaries/the-3-minute-rule","docId":"book-summaries/the-3-minute-rule","unlisted":false},{"type":"link","label":"The 4 Agreements","href":"/book-summaries/the-4-agreements","docId":"book-summaries/the-4-agreements","unlisted":false},{"type":"link","label":"The 4-Hour Workweek","href":"/book-summaries/the-4-hour-workweek","docId":"book-summaries/the-4-hour-workweek","unlisted":false},{"type":"link","label":"The 5 AM Club","href":"/book-summaries/the-5-am-club","docId":"book-summaries/the-5-am-club","unlisted":false},{"type":"link","label":"The Almanack of Naval Ravikant","href":"/book-summaries/the-almanack-of-naval-ravikant","docId":"book-summaries/the-almanack-of-naval-ravikant","unlisted":false},{"type":"link","label":"The Art of Impossible","href":"/book-summaries/the-art-of-impossible","docId":"book-summaries/the-art-of-impossible","unlisted":false},{"type":"link","label":"The Art of Logic","href":"/book-summaries/the-art-of-logic","docId":"book-summaries/the-art-of-logic","unlisted":false},{"type":"link","label":"The Book of Joy","href":"/book-summaries/the-book-of-joy","docId":"book-summaries/the-book-of-joy","unlisted":false},{"type":"link","label":"The Courage to be Happy","href":"/book-summaries/the-courage-to-be-happy","docId":"book-summaries/the-courage-to-be-happy","unlisted":false},{"type":"link","label":"The Dip","href":"/book-summaries/the-dip","docId":"book-summaries/the-dip","unlisted":false},{"type":"link","label":"The Distriction Addiction","href":"/book-summaries/the-distraction-addiction","docId":"book-summaries/the-distraction-addiction","unlisted":false},{"type":"link","label":"The Elephant in the Brain","href":"/book-summaries/the-elephant-in-the-brain","docId":"book-summaries/the-elephant-in-the-brain","unlisted":false},{"type":"link","label":"The Grid","href":"/book-summaries/the-grid","docId":"book-summaries/the-grid","unlisted":false},{"type":"link","label":"The Knowledge Illusion","href":"/book-summaries/the-knowledge-illusion","docId":"book-summaries/the-knowledge-illusion","unlisted":false},{"type":"link","label":"The life you can save","href":"/book-summaries/the-life-you-can-save","docId":"book-summaries/the-life-you-can-save","unlisted":false},{"type":"link","label":"The Organized Mind","href":"/book-summaries/the-organized-mind","docId":"book-summaries/the-organized-mind","unlisted":false},{"type":"link","label":"The path between us","href":"/book-summaries/the-path-between-us","docId":"book-summaries/the-path-between-us","unlisted":false},{"type":"link","label":"The power of Concentration","href":"/book-summaries/the-power-of-concentration","docId":"book-summaries/the-power-of-concentration","unlisted":false},{"type":"link","label":"The Power of Regret","href":"/book-summaries/the-power-of-regret","docId":"book-summaries/the-power-of-regret","unlisted":false},{"type":"link","label":"The Science of Selling","href":"/book-summaries/the-science-of-selling","docId":"book-summaries/the-science-of-selling","unlisted":false},{"type":"link","label":"The Seven Habits of Highly Effective People","href":"/book-summaries/the-seven-habits-of-highly-effective-people","docId":"book-summaries/the-seven-habits-of-highly-effective-people","unlisted":false},{"type":"link","label":"The Slight Edge","href":"/book-summaries/the-slight-edge","docId":"book-summaries/the-slight-edge","unlisted":false},{"type":"link","label":"The Squiggly Career","href":"/book-summaries/the-squiggly-career","docId":"book-summaries/the-squiggly-career","unlisted":false},{"type":"link","label":"The Status Game","href":"/book-summaries/the-status-game","docId":"book-summaries/the-status-game","unlisted":false},{"type":"link","label":"The Tangled Tree","href":"/book-summaries/the-tangled-tree","docId":"book-summaries/the-tangled-tree","unlisted":false},{"type":"link","label":"The Uninhabitable Earth","href":"/book-summaries/the-uninhabitable-earth","docId":"book-summaries/the-uninhabitable-earth","unlisted":false},{"type":"link","label":"Think Again","href":"/book-summaries/think-again","docId":"book-summaries/think-again","unlisted":false},{"type":"link","label":"Think and Grow Rich","href":"/book-summaries/think-and-grow-rich","docId":"book-summaries/think-and-grow-rich","unlisted":false},{"type":"link","label":"Thinking, Fast and Slow","href":"/book-summaries/thinking-fast-and-slow","docId":"book-summaries/thinking-fast-and-slow","unlisted":false},{"type":"link","label":"Thinking in Systems","href":"/book-summaries/thinking-in-systems","docId":"book-summaries/thinking-in-systems","unlisted":false},{"type":"link","label":"Time and How to Spend it","href":"/book-summaries/time-and-how-to-spend-it","docId":"book-summaries/time-and-how-to-spend-it","unlisted":false},{"type":"link","label":"UltraLearning","href":"/book-summaries/ultralearning","docId":"book-summaries/ultralearning","unlisted":false},{"type":"link","label":"What Philosophy Can Teach You About Being a Better Leader","href":"/book-summaries/what-philosophy-can-teach-you-about-being-a-better-leader","docId":"book-summaries/what-philosophy-can-teach-you-about-being-a-better-leader","unlisted":false},{"type":"link","label":"Who we are and how we got here","href":"/book-summaries/who-we-are-and-how-we-got-here","docId":"book-summaries/who-we-are-and-how-we-got-here","unlisted":false}],"href":"/book-summaries/"},{"type":"category","label":"Cloud","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"AWS","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Amazon Pinpoint","href":"/cloud/aws/amazon-pinpoint","docId":"cloud/aws/amazon-pinpoint","unlisted":false},{"type":"category","label":"Analytics","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Amazon Athena","href":"/cloud/aws/analytics/amazon-athena","docId":"cloud/aws/analytics/amazon-athena","unlisted":false},{"type":"link","label":"Amazon DevOps Guru","href":"/cloud/aws/analytics/amazon-devops-guru","docId":"cloud/aws/analytics/amazon-devops-guru","unlisted":false},{"type":"link","label":"Amazon Kinesis","href":"/cloud/aws/analytics/amazon-kinesis","docId":"cloud/aws/analytics/amazon-kinesis","unlisted":false}],"href":"/cloud/aws/analytics/"},{"type":"link","label":"AWS Backup","href":"/cloud/aws/aws-backup","docId":"cloud/aws/aws-backup","unlisted":false},{"type":"link","label":"AWS Competency Program","href":"/cloud/aws/aws-competency-program","docId":"cloud/aws/aws-competency-program","unlisted":false},{"type":"link","label":"AWS Database Migration Service (DMS)","href":"/cloud/aws/aws-database-migration-service-dms","docId":"cloud/aws/aws-database-migration-service-dms","unlisted":false},{"type":"link","label":"AWS Glue","href":"/cloud/aws/aws-glue","docId":"cloud/aws/aws-glue","unlisted":false},{"type":"link","label":"AWS Rekognition","href":"/cloud/aws/aws-rekognition","docId":"cloud/aws/aws-rekognition","unlisted":false},{"type":"link","label":"AWS Services List","href":"/cloud/aws/aws-services-list","docId":"cloud/aws/aws-services-list","unlisted":false},{"type":"link","label":"AWS Services","href":"/cloud/aws/aws-services","docId":"cloud/aws/aws-services","unlisted":false},{"type":"link","label":"AWS SNS","href":"/cloud/aws/aws-sns","docId":"cloud/aws/aws-sns","unlisted":false},{"type":"link","label":"AWS SQS","href":"/cloud/aws/aws-sqs","docId":"cloud/aws/aws-sqs","unlisted":false},{"type":"link","label":"CLI Commands","href":"/cloud/aws/cli-commands","docId":"cloud/aws/cli-commands","unlisted":false},{"type":"category","label":"Compute","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Amazon ECS (Elastic Container Service)","href":"/cloud/aws/compute/amazon-ecs","docId":"cloud/aws/compute/amazon-ecs","unlisted":false},{"type":"link","label":"Amazon EKS","href":"/cloud/aws/compute/amazon-eks","docId":"cloud/aws/compute/amazon-eks","unlisted":false},{"type":"link","label":"AWS Lambda","href":"/cloud/aws/compute/aws-lambda","docId":"cloud/aws/compute/aws-lambda","unlisted":false},{"type":"link","label":"Burstable Instances","href":"/cloud/aws/compute/burstable-instances","docId":"cloud/aws/compute/burstable-instances","unlisted":false},{"type":"link","label":"EC2 Instance types","href":"/cloud/aws/compute/ec2-instance-types","docId":"cloud/aws/compute/ec2-instance-types","unlisted":false}],"href":"/cloud/aws/compute/"},{"type":"link","label":"Cost Optimization / Explorer / Billing","href":"/cloud/aws/cost-optimization-explorer-billing","docId":"cloud/aws/cost-optimization-explorer-billing","unlisted":false},{"type":"link","label":"Architecting on AWS","href":"/cloud/aws/course-architecting-on-aws","docId":"cloud/aws/course-architecting-on-aws","unlisted":false},{"type":"category","label":"developer-tools","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Code Build","href":"/cloud/aws/developer-tools/code-build","docId":"cloud/aws/developer-tools/code-build","unlisted":false},{"type":"link","label":"Developer Tools","href":"/cloud/aws/developer-tools/intro","docId":"cloud/aws/developer-tools/intro","unlisted":false}]},{"type":"link","label":"Intro","href":"/cloud/aws/intro","docId":"cloud/aws/intro","unlisted":false},{"type":"category","label":"networking-content-delivery","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"amazon-cloudfront","href":"/cloud/aws/networking-content-delivery/amazon-cloudfront","docId":"cloud/aws/networking-content-delivery/amazon-cloudfront","unlisted":false},{"type":"link","label":"Amazon VPC","href":"/cloud/aws/networking-content-delivery/amazon-vpc","docId":"cloud/aws/networking-content-delivery/amazon-vpc","unlisted":false},{"type":"link","label":"AWS ELB","href":"/cloud/aws/networking-content-delivery/aws-elb","docId":"cloud/aws/networking-content-delivery/aws-elb","unlisted":false},{"type":"link","label":"Networking and Content Delivery","href":"/cloud/aws/networking-content-delivery/intro","docId":"cloud/aws/networking-content-delivery/intro","unlisted":false}]},{"type":"link","label":"Others","href":"/cloud/aws/others","docId":"cloud/aws/others","unlisted":false},{"type":"category","label":"security-identity-compliance","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Compliance MCQs","href":"/cloud/aws/security-identity-compliance/compliance-mcqs","docId":"cloud/aws/security-identity-compliance/compliance-mcqs","unlisted":false},{"type":"link","label":"Compliances","href":"/cloud/aws/security-identity-compliance/compliance","docId":"cloud/aws/security-identity-compliance/compliance","unlisted":false},{"type":"link","label":"IAM","href":"/cloud/aws/security-identity-compliance/iam","docId":"cloud/aws/security-identity-compliance/iam","unlisted":false},{"type":"link","label":"Security, Identity and Compliance","href":"/cloud/aws/security-identity-compliance/intro","docId":"cloud/aws/security-identity-compliance/intro","unlisted":false},{"type":"link","label":"License Scanning","href":"/cloud/aws/security-identity-compliance/license-scanning","docId":"cloud/aws/security-identity-compliance/license-scanning","unlisted":false},{"type":"link","label":"Security Guidelines","href":"/cloud/aws/security-identity-compliance/security-guidelines","docId":"cloud/aws/security-identity-compliance/security-guidelines","unlisted":false},{"type":"link","label":"Tools","href":"/cloud/aws/security-identity-compliance/tools","docId":"cloud/aws/security-identity-compliance/tools","unlisted":false}]},{"type":"category","label":"Storage","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Amazon EBS","href":"/cloud/aws/storage/amazon-ebs","docId":"cloud/aws/storage/amazon-ebs","unlisted":false},{"type":"link","label":"Amazon EFS","href":"/cloud/aws/storage/amazon-efs","docId":"cloud/aws/storage/amazon-efs","unlisted":false},{"type":"link","label":"Amazon S3 Pricing","href":"/cloud/aws/storage/amazon-s3-pricing","docId":"cloud/aws/storage/amazon-s3-pricing","unlisted":false},{"type":"link","label":"Amazon S3 Storage Classes","href":"/cloud/aws/storage/amazon-s3-storage-classes","docId":"cloud/aws/storage/amazon-s3-storage-classes","unlisted":false},{"type":"link","label":"Amazon S3","href":"/cloud/aws/storage/amazon-s3","docId":"cloud/aws/storage/amazon-s3","unlisted":false},{"type":"link","label":"IOPS","href":"/cloud/aws/storage/iops","docId":"cloud/aws/storage/iops","unlisted":false}],"href":"/cloud/aws/storage/"}],"href":"/cloud/aws/"},{"type":"category","label":"Other Clouds","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Azure","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/cloud/others/azure/commands","docId":"cloud/others/azure/commands","unlisted":false},{"type":"link","label":"IAM","href":"/cloud/others/azure/iam","docId":"cloud/others/azure/iam","unlisted":false},{"type":"link","label":"Microsoft BizTalk","href":"/cloud/others/azure/microsoft-biztalk","docId":"cloud/others/azure/microsoft-biztalk","unlisted":false},{"type":"link","label":"Services","href":"/cloud/others/azure/services","docId":"cloud/others/azure/services","unlisted":false}],"href":"/cloud/others/azure/"},{"type":"link","label":"Business Rules Engine (BRE) / Decision Rule Engine","href":"/cloud/others/business-rule-engine","docId":"cloud/others/business-rule-engine","unlisted":false},{"type":"link","label":"Cache Invalidation","href":"/cloud/others/cdn-cache-invalidation","docId":"cloud/others/cdn-cache-invalidation","unlisted":false},{"type":"link","label":"CDN Comparision","href":"/cloud/others/cdn-comparision","docId":"cloud/others/cdn-comparision","unlisted":false},{"type":"link","label":"CDN (Content Delivery Network)","href":"/cloud/others/cdn-content-delivery-network","docId":"cloud/others/cdn-content-delivery-network","unlisted":false},{"type":"link","label":"Cloudflare","href":"/cloud/others/cloudflare","docId":"cloud/others/cloudflare","unlisted":false},{"type":"category","label":"Firebase","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Automatic Collected Events","href":"/cloud/others/firebase/automatic-collected-events","docId":"cloud/others/firebase/automatic-collected-events","unlisted":false},{"type":"link","label":"FCM Notifications","href":"/cloud/others/firebase/fcm-notifications","docId":"cloud/others/firebase/fcm-notifications","unlisted":false},{"type":"link","label":"Firebase / Google Analytics","href":"/cloud/others/firebase/firebase-google-analytics","docId":"cloud/others/firebase/firebase-google-analytics","unlisted":false},{"type":"link","label":"Web Push Notifications","href":"/cloud/others/firebase/web-push-notifications","docId":"cloud/others/firebase/web-push-notifications","unlisted":false}],"href":"/cloud/others/firebase/"},{"type":"link","label":"GCP Anthos","href":"/cloud/others/gcp-anthos","docId":"cloud/others/gcp-anthos","unlisted":false},{"type":"link","label":"GCP BigQuery / Big Query","href":"/cloud/others/gcp-bigquery-big-query","docId":"cloud/others/gcp-bigquery-big-query","unlisted":false},{"type":"link","label":"GCP / Google Cloud Platform","href":"/cloud/others/gcp-google-cloud-platform","docId":"cloud/others/gcp-google-cloud-platform","unlisted":false},{"type":"link","label":"GCP ML Services","href":"/cloud/others/gcp-ml-services","docId":"cloud/others/gcp-ml-services","unlisted":false},{"type":"link","label":"Imagekit","href":"/cloud/others/imagekit","docId":"cloud/others/imagekit","unlisted":false},{"type":"link","label":"Linode","href":"/cloud/others/linode","docId":"cloud/others/linode","unlisted":false},{"type":"link","label":"Loan Management System (LMS)","href":"/cloud/others/loan-management-system-lms","docId":"cloud/others/loan-management-system-lms","unlisted":false},{"type":"link","label":"Low-Code / No-Code Platforms / LCNC","href":"/cloud/others/low-code-no-code-lcnc","docId":"cloud/others/low-code-no-code-lcnc","unlisted":false},{"type":"link","label":"MDM (Mobile Device Management)","href":"/cloud/others/mdm-mobile-device-management","docId":"cloud/others/mdm-mobile-device-management","unlisted":false},{"type":"link","label":"Openstack","href":"/cloud/others/openstack","docId":"cloud/others/openstack","unlisted":false},{"type":"link","label":"Oracle","href":"/cloud/others/oracle","docId":"cloud/others/oracle","unlisted":false},{"type":"link","label":"Others - SAAS","href":"/cloud/others/others-saas","docId":"cloud/others/others-saas","unlisted":false},{"type":"link","label":"SAP","href":"/cloud/others/sap","docId":"cloud/others/sap","unlisted":false},{"type":"link","label":"Ticketing / TMS","href":"/cloud/others/ticketing-tms","docId":"cloud/others/ticketing-tms","unlisted":false},{"type":"link","label":"VMware","href":"/cloud/others/vmware","docId":"cloud/others/vmware","unlisted":false}],"href":"/cloud/others/"},{"type":"link","label":"Tools","href":"/cloud/tools","docId":"cloud/tools","unlisted":false}],"href":"/cloud/"},{"type":"category","label":"Computer Science","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Distributed System","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Byzantine Generals\' Problem","href":"/computer-science/distributed-system/byzantine-generals-problem","docId":"computer-science/distributed-system/byzantine-generals-problem","unlisted":false},{"type":"link","label":"CAP Theorem","href":"/computer-science/distributed-system/cap-theorem","docId":"computer-science/distributed-system/cap-theorem","unlisted":false},{"type":"link","label":"Clocks","href":"/computer-science/distributed-system/clocks","docId":"computer-science/distributed-system/clocks","unlisted":false},{"type":"link","label":"Consensus Protocols","href":"/computer-science/distributed-system/consensus-protocols","docId":"computer-science/distributed-system/consensus-protocols","unlisted":false},{"type":"link","label":"Consistency","href":"/computer-science/distributed-system/consistency","docId":"computer-science/distributed-system/consistency","unlisted":false},{"type":"link","label":"Distributed Logging","href":"/computer-science/distributed-system/distributed-logging","docId":"computer-science/distributed-system/distributed-logging","unlisted":false},{"type":"link","label":"Fallacies and Problems","href":"/computer-science/distributed-system/fallacies-and-problems","docId":"computer-science/distributed-system/fallacies-and-problems","unlisted":false},{"type":"link","label":"Intro","href":"/computer-science/distributed-system/intro","docId":"computer-science/distributed-system/intro","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/distributed-system/others","docId":"computer-science/distributed-system/others","unlisted":false},{"type":"link","label":"Vocabulary","href":"/computer-science/distributed-system/vocabulary","docId":"computer-science/distributed-system/vocabulary","unlisted":false}],"href":"/computer-science/distributed-system/"},{"type":"category","label":"General","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Common","href":"/computer-science/general/common","docId":"computer-science/general/common","unlisted":false},{"type":"link","label":"Newsletter / Learning Resources","href":"/computer-science/general/newsletter-learning-resources","docId":"computer-science/general/newsletter-learning-resources","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/general/others","docId":"computer-science/general/others","unlisted":false},{"type":"link","label":"Research Papers","href":"/computer-science/general/research-papers","docId":"computer-science/general/research-papers","unlisted":false},{"type":"link","label":"Standards","href":"/computer-science/general/standards","docId":"computer-science/general/standards","unlisted":false},{"type":"link","label":"UUID / GUID","href":"/computer-science/general/uuid-guid","docId":"computer-science/general/uuid-guid","unlisted":false}],"href":"/computer-science/general/"},{"type":"category","label":"Interview Question","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"AWS/Tech/Other Questions","href":"/computer-science/interview-question/aws-tech-other-questions","docId":"computer-science/interview-question/aws-tech-other-questions","unlisted":false},{"type":"link","label":"Blogs / Conferences / Blogging / Presentation / Tech Thursdays","href":"/computer-science/interview-question/blogs-conferences-blogging-presentation-tech-thursdays","docId":"computer-science/interview-question/blogs-conferences-blogging-presentation-tech-thursdays","unlisted":false},{"type":"link","label":"Coding Interview Questions","href":"/computer-science/interview-question/coding-interview-questions","docId":"computer-science/interview-question/coding-interview-questions","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/interview-question/others","docId":"computer-science/interview-question/others","unlisted":false},{"type":"link","label":"System Design - Autocomplete or TypeAhead","href":"/computer-science/interview-question/system-design-autocomplete-or-typeahead","docId":"computer-science/interview-question/system-design-autocomplete-or-typeahead","unlisted":false},{"type":"link","label":"System Design - What happens when you type google.com into your browser\'s address box and press enter?","href":"/computer-science/interview-question/system-design-google-com-into-browser-press-enter","docId":"computer-science/interview-question/system-design-google-com-into-browser-press-enter","unlisted":false},{"type":"link","label":"System Design of Google Search Engine","href":"/computer-science/interview-question/system-design-google-search","docId":"computer-science/interview-question/system-design-google-search","unlisted":false},{"type":"link","label":"System Design - Messenger / WhatsApp","href":"/computer-science/interview-question/system-design-messenger-whatsapp","docId":"computer-science/interview-question/system-design-messenger-whatsapp","unlisted":false},{"type":"link","label":"System Design - MMOG - Game","href":"/computer-science/interview-question/system-design-mmog-game","docId":"computer-science/interview-question/system-design-mmog-game","unlisted":false},{"type":"link","label":"System Design - Others","href":"/computer-science/interview-question/system-design-others","docId":"computer-science/interview-question/system-design-others","unlisted":false},{"type":"link","label":"System Design - Parking Lot","href":"/computer-science/interview-question/system-design-parking-lot","docId":"computer-science/interview-question/system-design-parking-lot","unlisted":false},{"type":"link","label":"System Design - TinyURL","href":"/computer-science/interview-question/system-design-tinyurl","docId":"computer-science/interview-question/system-design-tinyurl","unlisted":false},{"type":"link","label":"System Design - Twitter","href":"/computer-science/interview-question/system-design-twitter","docId":"computer-science/interview-question/system-design-twitter","unlisted":false},{"type":"link","label":"System Design of Uber Data Architecture","href":"/computer-science/interview-question/system-design-uber-data-architecture","docId":"computer-science/interview-question/system-design-uber-data-architecture","unlisted":false},{"type":"link","label":"System Design - Uber Lyft ride sharing services","href":"/computer-science/interview-question/system-design-uber-lyft-ride-sharing-services","docId":"computer-science/interview-question/system-design-uber-lyft-ride-sharing-services","unlisted":false},{"type":"link","label":"System Design of YouTube","href":"/computer-science/interview-question/system-design-youtube","docId":"computer-science/interview-question/system-design-youtube","unlisted":false},{"type":"link","label":"TopTal","href":"/computer-science/interview-question/toptal","docId":"computer-science/interview-question/toptal","unlisted":false}],"href":"/computer-science/interview-question/"},{"type":"category","label":"IOT","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Device Management","href":"/computer-science/iot/device-management","docId":"computer-science/iot/device-management","unlisted":false},{"type":"link","label":"Edge Computing","href":"/computer-science/iot/edge-computing","docId":"computer-science/iot/edge-computing","unlisted":false},{"type":"link","label":"EdgeXFoundary","href":"/computer-science/iot/edgexfoundary","docId":"computer-science/iot/edgexfoundary","unlisted":false},{"type":"link","label":"Industrial IoT (IIoT)","href":"/computer-science/iot/industrial-iot-iiot","docId":"computer-science/iot/industrial-iot-iiot","unlisted":false},{"type":"link","label":"IoT Intro","href":"/computer-science/iot/iot-intro","docId":"computer-science/iot/iot-intro","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/iot/others","docId":"computer-science/iot/others","unlisted":false}],"href":"/computer-science/iot/"},{"type":"link","label":"Links","href":"/computer-science/links","docId":"computer-science/links","unlisted":false},{"type":"category","label":"Operating System","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Basic Computer Organization","href":"/computer-science/operating-system/basic-computer-organization","docId":"computer-science/operating-system/basic-computer-organization","unlisted":false},{"type":"link","label":"Cache Access Patterns (Writing Policies)","href":"/computer-science/operating-system/cache-access-patterns","docId":"computer-science/operating-system/cache-access-patterns","unlisted":false},{"type":"link","label":"Cache Coherence","href":"/computer-science/operating-system/cache-coherence-invalidation","docId":"computer-science/operating-system/cache-coherence-invalidation","unlisted":false},{"type":"link","label":"Caches / Caching","href":"/computer-science/operating-system/caches-caching","docId":"computer-science/operating-system/caches-caching","unlisted":false},{"type":"link","label":"Caching Strategies","href":"/computer-science/operating-system/caching-strategies-topologies","docId":"computer-science/operating-system/caching-strategies-topologies","unlisted":false},{"type":"link","label":"Compilers","href":"/computer-science/operating-system/compilers","docId":"computer-science/operating-system/compilers","unlisted":false},{"type":"link","label":"Concepts","href":"/computer-science/operating-system/concepts","docId":"computer-science/operating-system/concepts","unlisted":false},{"type":"link","label":"Concurrency Models - Async","href":"/computer-science/operating-system/concurrency-models-async","docId":"computer-science/operating-system/concurrency-models-async","unlisted":false},{"type":"link","label":"Concurrency Problems","href":"/computer-science/operating-system/concurrency-problems","docId":"computer-science/operating-system/concurrency-problems","unlisted":false},{"type":"link","label":"Concurrency / Threading","href":"/computer-science/operating-system/concurrency-threading","docId":"computer-science/operating-system/concurrency-threading","unlisted":false},{"type":"link","label":"Coroutines","href":"/computer-science/operating-system/coroutines","docId":"computer-science/operating-system/coroutines","unlisted":false},{"type":"link","label":"CPU | GPU | TPU","href":"/computer-science/operating-system/cpu-gpu-tpu","docId":"computer-science/operating-system/cpu-gpu-tpu","unlisted":false},{"type":"link","label":"Disk IO","href":"/computer-science/operating-system/disk-io","docId":"computer-science/operating-system/disk-io","unlisted":false},{"type":"link","label":"DRAM","href":"/computer-science/operating-system/dram","docId":"computer-science/operating-system/dram","unlisted":false},{"type":"link","label":"Intro","href":"/computer-science/operating-system/intro","docId":"computer-science/operating-system/intro","unlisted":false},{"type":"link","label":"Journaling File System","href":"/computer-science/operating-system/journaling-file-system","docId":"computer-science/operating-system/journaling-file-system","unlisted":false},{"type":"link","label":"Memory Allocation","href":"/computer-science/operating-system/memory-allocation","docId":"computer-science/operating-system/memory-allocation","unlisted":false},{"type":"link","label":"Memory Layout","href":"/computer-science/operating-system/memory-layout","docId":"computer-science/operating-system/memory-layout","unlisted":false},{"type":"link","label":"Memory Mapping mmap","href":"/computer-science/operating-system/memory-mapping-mmap","docId":"computer-science/operating-system/memory-mapping-mmap","unlisted":false},{"type":"link","label":"Memory","href":"/computer-science/operating-system/memory","docId":"computer-science/operating-system/memory","unlisted":false},{"type":"link","label":"Microprocessor","href":"/computer-science/operating-system/microprocessor","docId":"computer-science/operating-system/microprocessor","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/operating-system/others","docId":"computer-science/operating-system/others","unlisted":false},{"type":"link","label":"Parallel Processing","href":"/computer-science/operating-system/parallel-processing","docId":"computer-science/operating-system/parallel-processing","unlisted":false},{"type":"link","label":"RAID","href":"/computer-science/operating-system/raid","docId":"computer-science/operating-system/raid","unlisted":false},{"type":"link","label":"Scheduling","href":"/computer-science/operating-system/scheduling","docId":"computer-science/operating-system/scheduling","unlisted":false},{"type":"link","label":"Swap / Paging / Caching","href":"/computer-science/operating-system/swap-paging-caching","docId":"computer-science/operating-system/swap-paging-caching","unlisted":false},{"type":"link","label":"Unix / Linux File System","href":"/computer-science/operating-system/unix-linux-file-system","docId":"computer-science/operating-system/unix-linux-file-system","unlisted":false},{"type":"link","label":"Unix / Linux","href":"/computer-science/operating-system/unix-linux","docId":"computer-science/operating-system/unix-linux","unlisted":false},{"type":"link","label":"Write Ahead Log, WAL","href":"/computer-science/operating-system/write-ahead-log-wal","docId":"computer-science/operating-system/write-ahead-log-wal","unlisted":false}],"href":"/computer-science/operating-system/"},{"type":"category","label":"Others","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"BioInformatics/BioTechnology","href":"/computer-science/others/bioinformatics-biotechnology","docId":"computer-science/others/bioinformatics-biotechnology","unlisted":false},{"type":"link","label":"Computer Graphics","href":"/computer-science/others/computer-graphics","docId":"computer-science/others/computer-graphics","unlisted":false},{"type":"link","label":"Digital Circuits","href":"/computer-science/others/digital-circuits","docId":"computer-science/others/digital-circuits","unlisted":false},{"type":"link","label":"Game Development","href":"/computer-science/others/game-development","docId":"computer-science/others/game-development","unlisted":false},{"type":"link","label":"Gamification","href":"/computer-science/others/gamification","docId":"computer-science/others/gamification","unlisted":false},{"type":"link","label":"Other","href":"/computer-science/others/other","docId":"computer-science/others/other","unlisted":false},{"type":"link","label":"Tech Books","href":"/computer-science/others/tech-books","docId":"computer-science/others/tech-books","unlisted":false}],"href":"/computer-science/others/"},{"type":"category","label":"Programming Concepts","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Cohesion and Coupling","href":"/computer-science/programming-concepts/cohesion-and-coupling","docId":"computer-science/programming-concepts/cohesion-and-coupling","unlisted":false},{"type":"link","label":"Dependency Injection","href":"/computer-science/programming-concepts/dependency-injection","docId":"computer-science/programming-concepts/dependency-injection","unlisted":false},{"type":"link","label":"Inversion of Control","href":"/computer-science/programming-concepts/inversion-of-control","docId":"computer-science/programming-concepts/inversion-of-control","unlisted":false},{"type":"link","label":"Marshalling","href":"/computer-science/programming-concepts/marshalling","docId":"computer-science/programming-concepts/marshalling","unlisted":false},{"type":"link","label":"Metaprogramming","href":"/computer-science/programming-concepts/metaprogramming","docId":"computer-science/programming-concepts/metaprogramming","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/programming-concepts/others","docId":"computer-science/programming-concepts/others","unlisted":false},{"type":"link","label":"Programming Styles","href":"/computer-science/programming-concepts/programming-styles","docId":"computer-science/programming-concepts/programming-styles","unlisted":false},{"type":"link","label":"Type Introspection and Reflection","href":"/computer-science/programming-concepts/type-introspection-and-reflection","docId":"computer-science/programming-concepts/type-introspection-and-reflection","unlisted":false},{"type":"link","label":"Type Systems","href":"/computer-science/programming-concepts/type-systems","docId":"computer-science/programming-concepts/type-systems","unlisted":false}],"href":"/computer-science/programming-concepts/"},{"type":"category","label":"Programming Paradigms","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architectural - MVVM","href":"/computer-science/programming-paradigms/architectural-mvvm","docId":"computer-science/programming-paradigms/architectural-mvvm","unlisted":false},{"type":"link","label":"Behavioral - Chain of Responsibility","href":"/computer-science/programming-paradigms/behavioral-chain-of-responsibility","docId":"computer-science/programming-paradigms/behavioral-chain-of-responsibility","unlisted":false},{"type":"link","label":"Behavioral - Iterator","href":"/computer-science/programming-paradigms/behavioral-iterator","docId":"computer-science/programming-paradigms/behavioral-iterator","unlisted":false},{"type":"link","label":"Behavioral - Mediator","href":"/computer-science/programming-paradigms/behavioral-mediator","docId":"computer-science/programming-paradigms/behavioral-mediator","unlisted":false},{"type":"link","label":"Behavioral - Memento","href":"/computer-science/programming-paradigms/behavioral-memento","docId":"computer-science/programming-paradigms/behavioral-memento","unlisted":false},{"type":"link","label":"Behavioral - Observer","href":"/computer-science/programming-paradigms/behavioral-observer","docId":"computer-science/programming-paradigms/behavioral-observer","unlisted":false},{"type":"link","label":"Behavioral - Publisher Subscriber","href":"/computer-science/programming-paradigms/behavioral-publisher-subscriber","docId":"computer-science/programming-paradigms/behavioral-publisher-subscriber","unlisted":false},{"type":"link","label":"Behavioral - State","href":"/computer-science/programming-paradigms/behavioral-state","docId":"computer-science/programming-paradigms/behavioral-state","unlisted":false},{"type":"link","label":"Behavioral - Strategy","href":"/computer-science/programming-paradigms/behavioral-strategy","docId":"computer-science/programming-paradigms/behavioral-strategy","unlisted":false},{"type":"link","label":"Concurrency - Reactor","href":"/computer-science/programming-paradigms/concurrency-reactor","docId":"computer-science/programming-paradigms/concurrency-reactor","unlisted":false},{"type":"link","label":"Creational - Abstract Factory","href":"/computer-science/programming-paradigms/creational-abstract-factory","docId":"computer-science/programming-paradigms/creational-abstract-factory","unlisted":false},{"type":"link","label":"Creational - Object Pool","href":"/computer-science/programming-paradigms/creational-object-pool","docId":"computer-science/programming-paradigms/creational-object-pool","unlisted":false},{"type":"link","label":"Design Patterns","href":"/computer-science/programming-paradigms/design-patterns","docId":"computer-science/programming-paradigms/design-patterns","unlisted":false},{"type":"link","label":"Functional Programming","href":"/computer-science/programming-paradigms/functional-programming","docId":"computer-science/programming-paradigms/functional-programming","unlisted":false},{"type":"link","label":"OOPS / SOLID","href":"/computer-science/programming-paradigms/oops-solid","docId":"computer-science/programming-paradigms/oops-solid","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/programming-paradigms/others","docId":"computer-science/programming-paradigms/others","unlisted":false},{"type":"link","label":"Structural - Adapter","href":"/computer-science/programming-paradigms/structural-adapter","docId":"computer-science/programming-paradigms/structural-adapter","unlisted":false},{"type":"link","label":"Structural - Bridge","href":"/computer-science/programming-paradigms/structural-bridge","docId":"computer-science/programming-paradigms/structural-bridge","unlisted":false},{"type":"link","label":"Structural - Decorator","href":"/computer-science/programming-paradigms/structural-decorator","docId":"computer-science/programming-paradigms/structural-decorator","unlisted":false},{"type":"link","label":"Structural - Facade","href":"/computer-science/programming-paradigms/structural-facade","docId":"computer-science/programming-paradigms/structural-facade","unlisted":false},{"type":"link","label":"Structural - Proxy","href":"/computer-science/programming-paradigms/structural-proxy","docId":"computer-science/programming-paradigms/structural-proxy","unlisted":false},{"type":"link","label":"Types of programming paradigm","href":"/computer-science/programming-paradigms/types-of-programming-paradigm","docId":"computer-science/programming-paradigms/types-of-programming-paradigm","unlisted":false}],"href":"/computer-science/programming-paradigms/"},{"type":"category","label":"Security","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Attacks","href":"/computer-science/security/attacks","docId":"computer-science/security/attacks","unlisted":false},{"type":"category","label":"Authentication","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Certificates","href":"/computer-science/security/authentication/certificates","docId":"computer-science/security/authentication/certificates","unlisted":false},{"type":"link","label":"HTTP Authentication","href":"/computer-science/security/authentication/http-authentication","docId":"computer-science/security/authentication/http-authentication","unlisted":false},{"type":"link","label":"Authentication","href":"/computer-science/security/authentication/intro","docId":"computer-science/security/authentication/intro","unlisted":false},{"type":"link","label":"JWT","href":"/computer-science/security/authentication/jwt","docId":"computer-science/security/authentication/jwt","unlisted":false},{"type":"link","label":"OAuth","href":"/computer-science/security/authentication/oauth","docId":"computer-science/security/authentication/oauth","unlisted":false},{"type":"link","label":"OpenID","href":"/computer-science/security/authentication/openid","docId":"computer-science/security/authentication/openid","unlisted":false},{"type":"link","label":"SIEM","href":"/computer-science/security/authentication/siem","docId":"computer-science/security/authentication/siem","unlisted":false},{"type":"link","label":"2FA / 2-Factor Authentication","href":"/computer-science/security/authentication/two-2fa","docId":"computer-science/security/authentication/two-2fa","unlisted":false}],"href":"/computer-science/security/authentication/"},{"type":"link","label":"Concepts","href":"/computer-science/security/concepts","docId":"computer-science/security/concepts","unlisted":false},{"type":"category","label":"Cryptography","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Cryptographic Algorithms","href":"/computer-science/security/cryptography/cryptographic-algorithms","docId":"computer-science/security/cryptography/cryptographic-algorithms","unlisted":false},{"type":"link","label":"Cryptographic Hash Functions","href":"/computer-science/security/cryptography/cryptographic-hash-functions","docId":"computer-science/security/cryptography/cryptographic-hash-functions","unlisted":false},{"type":"link","label":"Cryptography Terms","href":"/computer-science/security/cryptography/cryptography-terms","docId":"computer-science/security/cryptography/cryptography-terms","unlisted":false},{"type":"link","label":"Diffie-Hellman Key Exchange","href":"/computer-science/security/cryptography/diffie-hellman-key-exchange","docId":"computer-science/security/cryptography/diffie-hellman-key-exchange","unlisted":false},{"type":"link","label":"Hash Function Design","href":"/computer-science/security/cryptography/hash-function-design","docId":"computer-science/security/cryptography/hash-function-design","unlisted":false},{"type":"link","label":"Cryptography","href":"/computer-science/security/cryptography/intro","docId":"computer-science/security/cryptography/intro","unlisted":false},{"type":"link","label":"Post Quantum Cryptography","href":"/computer-science/security/cryptography/post-quantum-cryptography","docId":"computer-science/security/cryptography/post-quantum-cryptography","unlisted":false},{"type":"link","label":"Public-key cryptography","href":"/computer-science/security/cryptography/public-key-cryptography","docId":"computer-science/security/cryptography/public-key-cryptography","unlisted":false}],"href":"/computer-science/security/cryptography/"},{"type":"link","label":"Ethical Hacking","href":"/computer-science/security/ethical-hacking","docId":"computer-science/security/ethical-hacking","unlisted":false},{"type":"link","label":"Firewall WAF","href":"/computer-science/security/firewall-waf","docId":"computer-science/security/firewall-waf","unlisted":false},{"type":"link","label":"Improving Security Posture","href":"/computer-science/security/improving-security-posture","docId":"computer-science/security/improving-security-posture","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/security/others","docId":"computer-science/security/others","unlisted":false},{"type":"link","label":"Systems Protection","href":"/computer-science/security/systems-protection","docId":"computer-science/security/systems-protection","unlisted":false},{"type":"link","label":"Tools","href":"/computer-science/security/tools","docId":"computer-science/security/tools","unlisted":false},{"type":"link","label":"Vault","href":"/computer-science/security/vault","docId":"computer-science/security/vault","unlisted":false},{"type":"link","label":"Vulnerabilities","href":"/computer-science/security/vulnerabilities","docId":"computer-science/security/vulnerabilities","unlisted":false}],"href":"/computer-science/security/"},{"type":"category","label":"Software Engineering","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Change Management","href":"/computer-science/software-engineering/change-management","docId":"computer-science/software-engineering/change-management","unlisted":false},{"type":"link","label":"Code Smell","href":"/computer-science/software-engineering/code-smell","docId":"computer-science/software-engineering/code-smell","unlisted":false},{"type":"link","label":"Coding Guidelines / Code Reviews / Clean Code","href":"/computer-science/software-engineering/coding-guidelines-code-reviews-clean-code","docId":"computer-science/software-engineering/coding-guidelines-code-reviews-clean-code","unlisted":false},{"type":"link","label":"Software Complexity","href":"/computer-science/software-engineering/complexity","docId":"computer-science/software-engineering/complexity","unlisted":false},{"type":"link","label":"Developer Roles","href":"/computer-science/software-engineering/developer-roles","docId":"computer-science/software-engineering/developer-roles","unlisted":false},{"type":"link","label":"Development Approaches","href":"/computer-science/software-engineering/development-approaches","docId":"computer-science/software-engineering/development-approaches","unlisted":false},{"type":"link","label":"Software Engineering","href":"/computer-science/software-engineering/intro","docId":"computer-science/software-engineering/intro","unlisted":false},{"type":"link","label":"Modeling Language","href":"/computer-science/software-engineering/modeling-languages","docId":"computer-science/software-engineering/modeling-languages","unlisted":false},{"type":"link","label":"Principles of sofware design","href":"/computer-science/software-engineering/principles","docId":"computer-science/software-engineering/principles","unlisted":false},{"type":"link","label":"Refactoring","href":"/computer-science/software-engineering/refactoring","docId":"computer-science/software-engineering/refactoring","unlisted":false},{"type":"link","label":"Static Code Analysis","href":"/computer-science/software-engineering/static-code-analysis","docId":"computer-science/software-engineering/static-code-analysis","unlisted":false},{"type":"link","label":"Technical Debt","href":"/computer-science/software-engineering/technical-debt","docId":"computer-science/software-engineering/technical-debt","unlisted":false},{"type":"link","label":"Types of code","href":"/computer-science/software-engineering/types-of-code","docId":"computer-science/software-engineering/types-of-code","unlisted":false}],"href":"/computer-science/software-engineering/"},{"type":"category","label":"System Design","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Addressing Failures","href":"/computer-science/system-design/addressing-failures","docId":"computer-science/system-design/addressing-failures","unlisted":false},{"type":"link","label":"API Gateway","href":"/computer-science/system-design/api-gateway","docId":"computer-science/system-design/api-gateway","unlisted":false},{"type":"link","label":"Architecture Guide","href":"/computer-science/system-design/architecture-guide","docId":"computer-science/system-design/architecture-guide","unlisted":false},{"type":"link","label":"Cloud Native","href":"/computer-science/system-design/cloud-native","docId":"computer-science/system-design/cloud-native","unlisted":false},{"type":"link","label":"Enterprise Integration Patterns","href":"/computer-science/system-design/enterprise-integration-patterns","docId":"computer-science/system-design/enterprise-integration-patterns","unlisted":false},{"type":"link","label":"Event driven architecture","href":"/computer-science/system-design/event-driven-architecture","docId":"computer-science/system-design/event-driven-architecture","unlisted":false},{"type":"link","label":"Intro","href":"/computer-science/system-design/intro","docId":"computer-science/system-design/intro","unlisted":false},{"type":"link","label":"Message Oriented Architecture (MOM)","href":"/computer-science/system-design/message-oriented-architecture-mom","docId":"computer-science/system-design/message-oriented-architecture-mom","unlisted":false},{"type":"link","label":"Message Queues","href":"/computer-science/system-design/message-queues","docId":"computer-science/system-design/message-queues","unlisted":false},{"type":"category","label":"Microservice Architecture","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Design Patterns","href":"/computer-science/system-design/microservice-architecture/design-patterns","docId":"computer-science/system-design/microservice-architecture/design-patterns","unlisted":false},{"type":"link","label":"Domain Driven Design","href":"/computer-science/system-design/microservice-architecture/domain-driven-design","docId":"computer-science/system-design/microservice-architecture/domain-driven-design","unlisted":false},{"type":"link","label":"Example","href":"/computer-science/system-design/microservice-architecture/example","docId":"computer-science/system-design/microservice-architecture/example","unlisted":false},{"type":"link","label":"Microservice Architecture","href":"/computer-science/system-design/microservice-architecture/intro","docId":"computer-science/system-design/microservice-architecture/intro","unlisted":false}],"href":"/computer-science/system-design/microservice-architecture/"},{"type":"link","label":"N-Tier Application Architecture","href":"/computer-science/system-design/n-tier-application-architecture","docId":"computer-science/system-design/n-tier-application-architecture","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/system-design/others","docId":"computer-science/system-design/others","unlisted":false},{"type":"link","label":"Rate Limiting","href":"/computer-science/system-design/rate-limiting","docId":"computer-science/system-design/rate-limiting","unlisted":false},{"type":"link","label":"Reactive Microservices / Manifesto","href":"/computer-science/system-design/reactive-microservices-manifesto","docId":"computer-science/system-design/reactive-microservices-manifesto","unlisted":false},{"type":"link","label":"Retries","href":"/computer-science/system-design/retries","docId":"computer-science/system-design/retries","unlisted":false},{"type":"link","label":"Serverless Architecture","href":"/computer-science/system-design/serverless-architecture","docId":"computer-science/system-design/serverless-architecture","unlisted":false},{"type":"link","label":"Trade offs","href":"/computer-science/system-design/trade-offs","docId":"computer-science/system-design/trade-offs","unlisted":false},{"type":"link","label":"Twelve-Factor App","href":"/computer-science/system-design/twelve-factor-app","docId":"computer-science/system-design/twelve-factor-app","unlisted":false}],"href":"/computer-science/system-design/"},{"type":"category","label":"Testing","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Checkov","href":"/computer-science/testing/checkov","docId":"computer-science/testing/checkov","unlisted":false},{"type":"link","label":"Intro","href":"/computer-science/testing/intro","docId":"computer-science/testing/intro","unlisted":false},{"type":"link","label":"iperf3 Testing","href":"/computer-science/testing/iperf3-testing","docId":"computer-science/testing/iperf3-testing","unlisted":false},{"type":"link","label":"Load / Performance Testing/QA Tools","href":"/computer-science/testing/load-performance-testing-qa-tools","docId":"computer-science/testing/load-performance-testing-qa-tools","unlisted":false},{"type":"link","label":"Mocking","href":"/computer-science/testing/mocking","docId":"computer-science/testing/mocking","unlisted":false},{"type":"link","label":"Postman","href":"/computer-science/testing/postman","docId":"computer-science/testing/postman","unlisted":false},{"type":"link","label":"Selenium","href":"/computer-science/testing/selenium","docId":"computer-science/testing/selenium","unlisted":false},{"type":"link","label":"Terms","href":"/computer-science/testing/terms","docId":"computer-science/testing/terms","unlisted":false},{"type":"link","label":"Test Pyramid","href":"/computer-science/testing/test-pyramid","docId":"computer-science/testing/test-pyramid","unlisted":false},{"type":"link","label":"Tools","href":"/computer-science/testing/tools","docId":"computer-science/testing/tools","unlisted":false}],"href":"/computer-science/testing/"}],"href":"/computer-science/"},{"type":"category","label":"Courses / Certifications","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"365 Data Science Program","href":"/courses/365-data-science-program","docId":"courses/365-data-science-program","unlisted":false},{"type":"link","label":"365 DS - Advanced Stastistical Methods in Python","href":"/courses/365-ds-advanced-stastistical-methods-in-python","docId":"courses/365-ds-advanced-stastistical-methods-in-python","unlisted":false},{"type":"link","label":"365 DS - Mathematics","href":"/courses/365-ds-mathematics","docId":"courses/365-ds-mathematics","unlisted":false},{"type":"link","label":"AWS Certified Data Engineer - Associate Questions","href":"/courses/aws-certified-data-engineer-associate-questions","docId":"courses/aws-certified-data-engineer-associate-questions","unlisted":false},{"type":"link","label":"AWS Certified Data Engineer - Associate","href":"/courses/aws-certified-data-engineer-associate","docId":"courses/aws-certified-data-engineer-associate","unlisted":false},{"type":"link","label":"AWS Certified Developer Associate","href":"/courses/aws-certified-developer-associate","docId":"courses/aws-certified-developer-associate","unlisted":false},{"type":"link","label":"Course - Art and Science of ML","href":"/courses/course-art-and-science-of-ml","docId":"courses/course-art-and-science-of-ml","unlisted":false},{"type":"link","label":"Course - Big Data Computing - NPTEL","href":"/courses/course-big-data-computing-nptel","docId":"courses/course-big-data-computing-nptel","unlisted":false},{"type":"category","label":"course-credit-risk-modeling","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Credit & Debt","href":"/courses/course-credit-risk-modeling/credit-and-debt","docId":"courses/course-credit-risk-modeling/credit-and-debt","unlisted":false},{"type":"link","label":"Decision Areas & Credit Scorecards","href":"/courses/course-credit-risk-modeling/decision-areas-and-credit-scorecards","docId":"courses/course-credit-risk-modeling/decision-areas-and-credit-scorecards","unlisted":false},{"type":"link","label":"Fraud Detection and Prevention","href":"/courses/course-credit-risk-modeling/fraud-detection-and-prevention","docId":"courses/course-credit-risk-modeling/fraud-detection-and-prevention","unlisted":false},{"type":"link","label":"Fraud Features","href":"/courses/course-credit-risk-modeling/fraud-features","docId":"courses/course-credit-risk-modeling/fraud-features","unlisted":false},{"type":"link","label":"Fraud Types","href":"/courses/course-credit-risk-modeling/fraud-types","docId":"courses/course-credit-risk-modeling/fraud-types","unlisted":false},{"type":"link","label":"Intro","href":"/courses/course-credit-risk-modeling/intro","docId":"courses/course-credit-risk-modeling/intro","unlisted":false},{"type":"link","label":"Course - Credit Risk Modeling","href":"/courses/course-credit-risk-modeling/syllabus","docId":"courses/course-credit-risk-modeling/syllabus","unlisted":false}]},{"type":"link","label":"Course - Data Mining NPTEL","href":"/courses/course-data-mining-nptel","docId":"courses/course-data-mining-nptel","unlisted":false},{"type":"link","label":"Course - Data Storage and Processing - edX","href":"/courses/course-data-storage-and-processing-edx","docId":"courses/course-data-storage-and-processing-edx","unlisted":false},{"type":"link","label":"Course - Feature Engineering","href":"/courses/course-feature-engineering","docId":"courses/course-feature-engineering","unlisted":false},{"type":"link","label":"Course - Intro to Data and Data Science","href":"/courses/course-intro-to-data-and-data-science","docId":"courses/course-intro-to-data-and-data-science","unlisted":false},{"type":"link","label":"Course - Intro to TensorFlow","href":"/courses/course-intro-to-tensorflow","docId":"courses/course-intro-to-tensorflow","unlisted":false},{"type":"link","label":"Course - Launching into ML","href":"/courses/course-launching-into-ml","docId":"courses/course-launching-into-ml","unlisted":false},{"type":"category","label":"course-time-series-analysis","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Exponential Smoothing","href":"/courses/course-time-series-analysis/exponential-smoothing","docId":"courses/course-time-series-analysis/exponential-smoothing","unlisted":false},{"type":"link","label":"Intro - Time Series","href":"/courses/course-time-series-analysis/intro-time-series","docId":"courses/course-time-series-analysis/intro-time-series","unlisted":false},{"type":"link","label":"Course - Time Series Analysis","href":"/courses/course-time-series-analysis/syllabus","docId":"courses/course-time-series-analysis/syllabus","unlisted":false},{"type":"link","label":"Time-Series Modeling","href":"/courses/course-time-series-analysis/time-series-modeling","docId":"courses/course-time-series-analysis/time-series-modeling","unlisted":false}]},{"type":"link","label":"Coursera - Algorithms Part - 1","href":"/courses/coursera-algorithms-part-1","docId":"courses/coursera-algorithms-part-1","unlisted":false},{"type":"link","label":"Coursera - Algorithms Part - 2","href":"/courses/coursera-algorithms-part-2","docId":"courses/coursera-algorithms-part-2","unlisted":false},{"type":"link","label":"Coursera - How Google does ML","href":"/courses/coursera-how-google-does-ml","docId":"courses/coursera-how-google-does-ml","unlisted":false},{"type":"category","label":"customer-analytics-in-python","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Intro","href":"/courses/customer-analytics-in-python/intro","docId":"courses/customer-analytics-in-python/intro","unlisted":false},{"type":"link","label":"Customer Analytics in Python","href":"/courses/customer-analytics-in-python/syllabus","docId":"courses/customer-analytics-in-python/syllabus","unlisted":false}]},{"type":"link","label":"Data Integration Specialist - AWS","href":"/courses/data-integration-specialist-aws","docId":"courses/data-integration-specialist-aws","unlisted":false},{"type":"link","label":"Google Professional Cloud Architect (PCA)","href":"/courses/google-professional-cloud-architect-pca","docId":"courses/google-professional-cloud-architect-pca","unlisted":false},{"type":"link","label":"Google Professional Data Engineer (PDE)","href":"/courses/google-professional-data-engineer-pde","docId":"courses/google-professional-data-engineer-pde","unlisted":false},{"type":"link","label":"Microsoft Excel / Google Sheets","href":"/courses/microsoft-excel-google-sheets","docId":"courses/microsoft-excel-google-sheets","unlisted":false},{"type":"link","label":"Mordern Algorithm Design","href":"/courses/mordern-algorithm-design","docId":"courses/mordern-algorithm-design","unlisted":false},{"type":"link","label":"Nutanix Hybrid Cloud","href":"/courses/nutanix-hybrid-cloud","docId":"courses/nutanix-hybrid-cloud","unlisted":false},{"type":"link","label":"SE Radio","href":"/courses/se-radio","docId":"courses/se-radio","unlisted":false},{"type":"link","label":"Self-Driving Nanodegree","href":"/courses/self-driving-nanodegree","docId":"courses/self-driving-nanodegree","unlisted":false},{"type":"link","label":"Udemy - Becoming a Production MySQL DBA","href":"/courses/udemy-becoming-a-production-mysql-dba","docId":"courses/udemy-becoming-a-production-mysql-dba","unlisted":false},{"type":"link","label":"Udemy - Python for data structures algorithms","href":"/courses/udemy-python-for-data-structures-algorithms","docId":"courses/udemy-python-for-data-structures-algorithms","unlisted":false}],"href":"/courses/"},{"type":"category","label":"Data Structures","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"General","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Disjoint-Set Data Structure","href":"/data-structures/general/disjoint-set-data-structure","docId":"data-structures/general/disjoint-set-data-structure","unlisted":false},{"type":"link","label":"DS Intro","href":"/data-structures/general/ds-intro","docId":"data-structures/general/ds-intro","unlisted":false},{"type":"link","label":"Elementary Symbol Tables","href":"/data-structures/general/elementary-symbol-tables","docId":"data-structures/general/elementary-symbol-tables","unlisted":false},{"type":"link","label":"Endianness","href":"/data-structures/general/endianness","docId":"data-structures/general/endianness","unlisted":false},{"type":"link","label":"Mutable/Immutable Data Structures","href":"/data-structures/general/mutable-immutable-data-structures","docId":"data-structures/general/mutable-immutable-data-structures","unlisted":false}],"href":"/data-structures/general/"},{"type":"category","label":"Graph","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Adjacency List","href":"/data-structures/graph/adjacency-list","docId":"data-structures/graph/adjacency-list","unlisted":false},{"type":"link","label":"Adjacency Matrix","href":"/data-structures/graph/adjacency-matrix","docId":"data-structures/graph/adjacency-matrix","unlisted":false},{"type":"link","label":"Digraphs (Directed Graphs)","href":"/data-structures/graph/digraphs-directed-graphs","docId":"data-structures/graph/digraphs-directed-graphs","unlisted":false},{"type":"link","label":"Implementation","href":"/data-structures/graph/implementation","docId":"data-structures/graph/implementation","unlisted":false},{"type":"link","label":"Intro","href":"/data-structures/graph/intro","docId":"data-structures/graph/intro","unlisted":false},{"type":"link","label":"Questions","href":"/data-structures/graph/questions","docId":"data-structures/graph/questions","unlisted":false},{"type":"link","label":"Undirected Graph","href":"/data-structures/graph/undirected-graph","docId":"data-structures/graph/undirected-graph","unlisted":false}],"href":"/data-structures/graph/"},{"type":"category","label":"HashTable","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Bloom Filters","href":"/data-structures/hashtable/bloom-filters","docId":"data-structures/hashtable/bloom-filters","unlisted":false},{"type":"link","label":"Chord","href":"/data-structures/hashtable/chord","docId":"data-structures/hashtable/chord","unlisted":false},{"type":"link","label":"Count-min Sketch","href":"/data-structures/hashtable/count-min-sketch","docId":"data-structures/hashtable/count-min-sketch","unlisted":false},{"type":"link","label":"DHT - Distributed Hash Tables","href":"/data-structures/hashtable/dht-distributed-hash-tables","docId":"data-structures/hashtable/dht-distributed-hash-tables","unlisted":false},{"type":"link","label":"Dictionaries","href":"/data-structures/hashtable/dictionaries","docId":"data-structures/hashtable/dictionaries","unlisted":false},{"type":"link","label":"Hash Functions","href":"/data-structures/hashtable/hash-functions","docId":"data-structures/hashtable/hash-functions","unlisted":false},{"type":"link","label":"Hash Tables","href":"/data-structures/hashtable/hash-tables","docId":"data-structures/hashtable/hash-tables","unlisted":false},{"type":"link","label":"Hashing Techniques","href":"/data-structures/hashtable/hashing-techniques","docId":"data-structures/hashtable/hashing-techniques","unlisted":false},{"type":"link","label":"Hashing","href":"/data-structures/hashtable/hashing","docId":"data-structures/hashtable/hashing","unlisted":false},{"type":"link","label":"HyperLogLog","href":"/data-structures/hashtable/hyperloglog","docId":"data-structures/hashtable/hyperloglog","unlisted":false},{"type":"link","label":"Kademlia","href":"/data-structures/hashtable/kademlia","docId":"data-structures/hashtable/kademlia","unlisted":false},{"type":"link","label":"List of Hash Functions","href":"/data-structures/hashtable/list-of-hash-functions","docId":"data-structures/hashtable/list-of-hash-functions","unlisted":false},{"type":"link","label":"Merkle Trees","href":"/data-structures/hashtable/merkle-trees","docId":"data-structures/hashtable/merkle-trees","unlisted":false},{"type":"link","label":"Probabilistic Data Structure","href":"/data-structures/hashtable/probabilistic-data-structure","docId":"data-structures/hashtable/probabilistic-data-structure","unlisted":false},{"type":"link","label":"Questions","href":"/data-structures/hashtable/questions","docId":"data-structures/hashtable/questions","unlisted":false},{"type":"link","label":"Verkle Trees","href":"/data-structures/hashtable/verkle-trees","docId":"data-structures/hashtable/verkle-trees","unlisted":false}],"href":"/data-structures/hashtable/"},{"type":"category","label":"Hierarchical Data Structure","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"2-3 Search Trees","href":"/data-structures/hierarchical-data-structure/2-3-search-trees","docId":"data-structures/hierarchical-data-structure/2-3-search-trees","unlisted":false},{"type":"link","label":"AVL Tree","href":"/data-structures/hierarchical-data-structure/avl-tree","docId":"data-structures/hierarchical-data-structure/avl-tree","unlisted":false},{"type":"link","label":"B-Tree","href":"/data-structures/hierarchical-data-structure/b-tree","docId":"data-structures/hierarchical-data-structure/b-tree","unlisted":false},{"type":"link","label":"Beap (Bi-Parental Heap)","href":"/data-structures/hierarchical-data-structure/beap-bi-parental-heap","docId":"data-structures/hierarchical-data-structure/beap-bi-parental-heap","unlisted":false},{"type":"link","label":"Binary Heap","href":"/data-structures/hierarchical-data-structure/binary-heap","docId":"data-structures/hierarchical-data-structure/binary-heap","unlisted":false},{"type":"link","label":"Binary Search Tree","href":"/data-structures/hierarchical-data-structure/binary-search-tree","docId":"data-structures/hierarchical-data-structure/binary-search-tree","unlisted":false},{"type":"link","label":"Binary Tree","href":"/data-structures/hierarchical-data-structure/binary-tree","docId":"data-structures/hierarchical-data-structure/binary-tree","unlisted":false},{"type":"link","label":"Binomial Heap","href":"/data-structures/hierarchical-data-structure/binomial-heap","docId":"data-structures/hierarchical-data-structure/binomial-heap","unlisted":false},{"type":"link","label":"Fibonacci Heap","href":"/data-structures/hierarchical-data-structure/fibonacci-heap","docId":"data-structures/hierarchical-data-structure/fibonacci-heap","unlisted":false},{"type":"link","label":"Interval Search Tree","href":"/data-structures/hierarchical-data-structure/interval-search-tree","docId":"data-structures/hierarchical-data-structure/interval-search-tree","unlisted":false},{"type":"link","label":"k-ary heap / d-ary heap / d-way heap","href":"/data-structures/hierarchical-data-structure/k-ary-heap-d-ary-heap-d-way-heap","docId":"data-structures/hierarchical-data-structure/k-ary-heap-d-ary-heap-d-way-heap","unlisted":false},{"type":"link","label":"Kd-trees","href":"/data-structures/hierarchical-data-structure/kd-trees","docId":"data-structures/hierarchical-data-structure/kd-trees","unlisted":false},{"type":"link","label":"Left Leaning Red-Black BSTs (LLRB tree)","href":"/data-structures/hierarchical-data-structure/left-leaning-red-black-bsts-llrb-tree","docId":"data-structures/hierarchical-data-structure/left-leaning-red-black-bsts-llrb-tree","unlisted":false},{"type":"link","label":"Problems","href":"/data-structures/hierarchical-data-structure/problems","docId":"data-structures/hierarchical-data-structure/problems","unlisted":false},{"type":"link","label":"Segment Tree","href":"/data-structures/hierarchical-data-structure/segment-tree","docId":"data-structures/hierarchical-data-structure/segment-tree","unlisted":false},{"type":"link","label":"Space-partitioning trees","href":"/data-structures/hierarchical-data-structure/space-partitioning-trees","docId":"data-structures/hierarchical-data-structure/space-partitioning-trees","unlisted":false},{"type":"link","label":"Tree DS","href":"/data-structures/hierarchical-data-structure/tree-ds","docId":"data-structures/hierarchical-data-structure/tree-ds","unlisted":false}],"href":"/data-structures/hierarchical-data-structure/"},{"type":"category","label":"Linear Data Structure","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Array","href":"/data-structures/linear-data-structure/array","docId":"data-structures/linear-data-structure/array","unlisted":false},{"type":"link","label":"Bag Data Structure","href":"/data-structures/linear-data-structure/bag-data-structure","docId":"data-structures/linear-data-structure/bag-data-structure","unlisted":false},{"type":"link","label":"Circular Buffer","href":"/data-structures/linear-data-structure/circular-buffer","docId":"data-structures/linear-data-structure/circular-buffer","unlisted":false},{"type":"link","label":"Dequeue","href":"/data-structures/linear-data-structure/dequeue","docId":"data-structures/linear-data-structure/dequeue","unlisted":false},{"type":"link","label":"Indexed Priority Queue","href":"/data-structures/linear-data-structure/indexed-priority-queue","docId":"data-structures/linear-data-structure/indexed-priority-queue","unlisted":false},{"type":"link","label":"Linked List","href":"/data-structures/linear-data-structure/linked-list","docId":"data-structures/linear-data-structure/linked-list","unlisted":false},{"type":"link","label":"Priority Queue","href":"/data-structures/linear-data-structure/priority-queue","docId":"data-structures/linear-data-structure/priority-queue","unlisted":false},{"type":"link","label":"Problems","href":"/data-structures/linear-data-structure/problems","docId":"data-structures/linear-data-structure/problems","unlisted":false},{"type":"link","label":"Queue FIFO","href":"/data-structures/linear-data-structure/queue-fifo","docId":"data-structures/linear-data-structure/queue-fifo","unlisted":false},{"type":"link","label":"Randomized Queue","href":"/data-structures/linear-data-structure/randomized-queue","docId":"data-structures/linear-data-structure/randomized-queue","unlisted":false},{"type":"link","label":"Sets","href":"/data-structures/linear-data-structure/sets","docId":"data-structures/linear-data-structure/sets","unlisted":false},{"type":"link","label":"Skip Lists","href":"/data-structures/linear-data-structure/skip-lists","docId":"data-structures/linear-data-structure/skip-lists","unlisted":false},{"type":"link","label":"Stack LIFO","href":"/data-structures/linear-data-structure/stack-lifo","docId":"data-structures/linear-data-structure/stack-lifo","unlisted":false}],"href":"/data-structures/linear-data-structure/"},{"type":"category","label":"Others","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Bitmap","href":"/data-structures/others/bitmap","docId":"data-structures/others/bitmap","unlisted":false},{"type":"link","label":"Large Objects","href":"/data-structures/others/large-objects","docId":"data-structures/others/large-objects","unlisted":false},{"type":"link","label":"LSM (Log Structured Merge Trees)","href":"/data-structures/others/lsm-log-structured-merge-trees","docId":"data-structures/others/lsm-log-structured-merge-trees","unlisted":false},{"type":"link","label":"SSTables, Sorted String Tables","href":"/data-structures/others/sstables-sorted-string-tables","docId":"data-structures/others/sstables-sorted-string-tables","unlisted":false}],"href":"/data-structures/others/"},{"type":"category","label":"Trie","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Compressed Trie","href":"/data-structures/trie/compressed-trie","docId":"data-structures/trie/compressed-trie","unlisted":false},{"type":"link","label":"Others","href":"/data-structures/trie/others","docId":"data-structures/trie/others","unlisted":false},{"type":"link","label":"Patricia Trie","href":"/data-structures/trie/patricia-trie","docId":"data-structures/trie/patricia-trie","unlisted":false},{"type":"link","label":"Questions","href":"/data-structures/trie/questions","docId":"data-structures/trie/questions","unlisted":false},{"type":"link","label":"R-way Tries","href":"/data-structures/trie/r-way-tries","docId":"data-structures/trie/r-way-tries","unlisted":false},{"type":"link","label":"Standard Trie","href":"/data-structures/trie/standard-trie","docId":"data-structures/trie/standard-trie","unlisted":false},{"type":"link","label":"Suffix Array","href":"/data-structures/trie/suffix-array","docId":"data-structures/trie/suffix-array","unlisted":false},{"type":"link","label":"Suffix Tree","href":"/data-structures/trie/suffix-tree","docId":"data-structures/trie/suffix-tree","unlisted":false},{"type":"link","label":"Ternary Search Tries (TST)","href":"/data-structures/trie/ternary-search-tries-tst","docId":"data-structures/trie/ternary-search-tries-tst","unlisted":false}],"href":"/data-structures/trie/"}],"href":"/data-structures/"},{"type":"category","label":"Databases","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Databases Concepts","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"ACID and BASE","href":"/databases/concepts/acid-and-base","docId":"databases/concepts/acid-and-base","unlisted":false},{"type":"link","label":"amazon-databases","href":"/databases/concepts/amazon-databases","docId":"databases/concepts/amazon-databases","unlisted":false},{"type":"link","label":"Comparisons","href":"/databases/concepts/comparisions","docId":"databases/concepts/comparisions","unlisted":false},{"type":"link","label":"Concurrency Control","href":"/databases/concepts/concurrency-control","docId":"databases/concepts/concurrency-control","unlisted":false},{"type":"link","label":"Core Concepts","href":"/databases/concepts/core-concepts","docId":"databases/concepts/core-concepts","unlisted":false},{"type":"link","label":"Database Workloads","href":"/databases/concepts/database-workloads","docId":"databases/concepts/database-workloads","unlisted":false},{"type":"link","label":"Disk oriented vs in-memory DBs","href":"/databases/concepts/disk-oriented-vs-in-memory-dbs","docId":"databases/concepts/disk-oriented-vs-in-memory-dbs","unlisted":false},{"type":"link","label":"History","href":"/databases/concepts/history","docId":"databases/concepts/history","unlisted":false},{"type":"link","label":"Intro","href":"/databases/concepts/intro","docId":"databases/concepts/intro","unlisted":false},{"type":"link","label":"Isolation Levels","href":"/databases/concepts/isolation-levels","docId":"databases/concepts/isolation-levels","unlisted":false},{"type":"link","label":"MVCC, MultiVersion Concurrency Control","href":"/databases/concepts/mvcc-multiversion-concurrency-control","docId":"databases/concepts/mvcc-multiversion-concurrency-control","unlisted":false},{"type":"link","label":"Others","href":"/databases/concepts/others","docId":"databases/concepts/others","unlisted":false},{"type":"link","label":"RUM Conjecture","href":"/databases/concepts/rum-conjecture","docId":"databases/concepts/rum-conjecture","unlisted":false},{"type":"link","label":"Types of Databases","href":"/databases/concepts/types-of-databases","docId":"databases/concepts/types-of-databases","unlisted":false}],"href":"/databases/concepts/"},{"type":"category","label":"Data Warehousing","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Data Warehousing","href":"/databases/data-warehousing/01-intro","docId":"databases/data-warehousing/01-intro","unlisted":false},{"type":"link","label":"Concepts","href":"/databases/data-warehousing/02-concepts","docId":"databases/data-warehousing/02-concepts","unlisted":false},{"type":"link","label":"Slowly Changing Dimension (SCD)","href":"/databases/data-warehousing/03-slowly-changing-dimension-scd","docId":"databases/data-warehousing/03-slowly-changing-dimension-scd","unlisted":false},{"type":"link","label":"Fact / Dimension Tables","href":"/databases/data-warehousing/04-fact-dimension-tables","docId":"databases/data-warehousing/04-fact-dimension-tables","unlisted":false},{"type":"link","label":"Characteristics","href":"/databases/data-warehousing/05-characteristics","docId":"databases/data-warehousing/05-characteristics","unlisted":false},{"type":"link","label":"Architecture","href":"/databases/data-warehousing/06-architecture","docId":"databases/data-warehousing/06-architecture","unlisted":false},{"type":"link","label":"Warehouse Schemas","href":"/databases/data-warehousing/07-warehouse-schemas","docId":"databases/data-warehousing/07-warehouse-schemas","unlisted":false},{"type":"link","label":"Data Lake","href":"/databases/data-warehousing/08-data-lake","docId":"databases/data-warehousing/08-data-lake","unlisted":false},{"type":"link","label":"Kimball / Inmon Architecture","href":"/databases/data-warehousing/09-kimball-inmon-architecture","docId":"databases/data-warehousing/09-kimball-inmon-architecture","unlisted":false},{"type":"link","label":"Lambda Architecture","href":"/databases/data-warehousing/10-lambda-architecture","docId":"databases/data-warehousing/10-lambda-architecture","unlisted":false},{"type":"link","label":"DW - Databases","href":"/databases/data-warehousing/11-dw-databases","docId":"databases/data-warehousing/11-dw-databases","unlisted":false},{"type":"link","label":"Change Data Capture (CDC)","href":"/databases/data-warehousing/change-data-capture-cdc","docId":"databases/data-warehousing/change-data-capture-cdc","unlisted":false},{"type":"link","label":"Data Engineering","href":"/databases/data-warehousing/data-engineering","docId":"databases/data-warehousing/data-engineering","unlisted":false},{"type":"link","label":"Debezium","href":"/databases/data-warehousing/debezium","docId":"databases/data-warehousing/debezium","unlisted":false},{"type":"link","label":"ETL (Extract Transform Load)","href":"/databases/data-warehousing/etl-extract-transform-load","docId":"databases/data-warehousing/etl-extract-transform-load","unlisted":false},{"type":"link","label":"Master Data Management (MDM)","href":"/databases/data-warehousing/master-data-management-mdm","docId":"databases/data-warehousing/master-data-management-mdm","unlisted":false},{"type":"link","label":"Tools","href":"/databases/data-warehousing/tools","docId":"databases/data-warehousing/tools","unlisted":false}],"href":"/databases/data-warehousing/"},{"type":"category","label":"Indexing","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Database Index","href":"/databases/indexing/database-index","docId":"databases/indexing/database-index","unlisted":false},{"type":"link","label":"Indexing Questions","href":"/databases/indexing/indexing-questions","docId":"databases/indexing/indexing-questions","unlisted":false},{"type":"link","label":"Indexing","href":"/databases/indexing/intro","docId":"databases/indexing/intro","unlisted":false},{"type":"link","label":"Inverted Index","href":"/databases/indexing/inverted-index","docId":"databases/indexing/inverted-index","unlisted":false},{"type":"link","label":"MySQL Indexing","href":"/databases/indexing/mysql-indexing","docId":"databases/indexing/mysql-indexing","unlisted":false}],"href":"/databases/indexing/"},{"type":"category","label":"Modeling","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Data Modeling","href":"/databases/modeling/data-modeling","docId":"databases/modeling/data-modeling","unlisted":false},{"type":"link","label":"ER Diagrams (Entity Relationships)","href":"/databases/modeling/er-diagrams-entity-relationships","docId":"databases/modeling/er-diagrams-entity-relationships","unlisted":false},{"type":"link","label":"ER - Tools","href":"/databases/modeling/er-tools","docId":"databases/modeling/er-tools","unlisted":false}],"href":"/databases/modeling/"},{"type":"category","label":"NoSQL Databases","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"DynamoDB","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Capacity Modes","href":"/databases/nosql-databases/aws-dynamodb/capacity-modes","docId":"databases/nosql-databases/aws-dynamodb/capacity-modes","unlisted":false},{"type":"link","label":"Cheatsheet","href":"/databases/nosql-databases/aws-dynamodb/cheatsheet","docId":"databases/nosql-databases/aws-dynamodb/cheatsheet","unlisted":false},{"type":"link","label":"Core components","href":"/databases/nosql-databases/aws-dynamodb/core-components","docId":"databases/nosql-databases/aws-dynamodb/core-components","unlisted":false},{"type":"link","label":"Documentation","href":"/databases/nosql-databases/aws-dynamodb/documentation","docId":"databases/nosql-databases/aws-dynamodb/documentation","unlisted":false},{"type":"link","label":"AWS DynamoDB","href":"/databases/nosql-databases/aws-dynamodb/intro","docId":"databases/nosql-databases/aws-dynamodb/intro","unlisted":false},{"type":"link","label":"Others","href":"/databases/nosql-databases/aws-dynamodb/others","docId":"databases/nosql-databases/aws-dynamodb/others","unlisted":false},{"type":"link","label":"Table Classes","href":"/databases/nosql-databases/aws-dynamodb/table-classes","docId":"databases/nosql-databases/aws-dynamodb/table-classes","unlisted":false},{"type":"link","label":"Working","href":"/databases/nosql-databases/aws-dynamodb/working","docId":"databases/nosql-databases/aws-dynamodb/working","unlisted":false}],"href":"/databases/nosql-databases/aws-dynamodb/"},{"type":"category","label":"Cassandra","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/databases/nosql-databases/cassandra/commands","docId":"databases/nosql-databases/cassandra/commands","unlisted":false},{"type":"link","label":"Consistency","href":"/databases/nosql-databases/cassandra/consistency","docId":"databases/nosql-databases/cassandra/consistency","unlisted":false},{"type":"link","label":"CQL (Cassandra Query Language)","href":"/databases/nosql-databases/cassandra/cql-cassandra-query-language","docId":"databases/nosql-databases/cassandra/cql-cassandra-query-language","unlisted":false},{"type":"link","label":"Data Model","href":"/databases/nosql-databases/cassandra/data-model","docId":"databases/nosql-databases/cassandra/data-model","unlisted":false},{"type":"link","label":"Design","href":"/databases/nosql-databases/cassandra/design","docId":"databases/nosql-databases/cassandra/design","unlisted":false},{"type":"link","label":"Drivers / Clients","href":"/databases/nosql-databases/cassandra/drivers-clients","docId":"databases/nosql-databases/cassandra/drivers-clients","unlisted":false},{"type":"link","label":"Cassandra","href":"/databases/nosql-databases/cassandra/intro","docId":"databases/nosql-databases/cassandra/intro","unlisted":false},{"type":"link","label":"Questions","href":"/databases/nosql-databases/cassandra/questions","docId":"databases/nosql-databases/cassandra/questions","unlisted":false},{"type":"link","label":"Working","href":"/databases/nosql-databases/cassandra/working","docId":"databases/nosql-databases/cassandra/working","unlisted":false}],"href":"/databases/nosql-databases/cassandra/"},{"type":"link","label":"ClickHouse","href":"/databases/nosql-databases/clickhouse","docId":"databases/nosql-databases/clickhouse","unlisted":false},{"type":"link","label":"Column family","href":"/databases/nosql-databases/column-family","docId":"databases/nosql-databases/column-family","unlisted":false},{"type":"link","label":"Comparisions","href":"/databases/nosql-databases/comparisions","docId":"databases/nosql-databases/comparisions","unlisted":false},{"type":"category","label":"Druid","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture","href":"/databases/nosql-databases/druid/architecture","docId":"databases/nosql-databases/druid/architecture","unlisted":false},{"type":"link","label":"Cheatsheet","href":"/databases/nosql-databases/druid/cheatsheet","docId":"databases/nosql-databases/druid/cheatsheet","unlisted":false},{"type":"link","label":"Commands","href":"/databases/nosql-databases/druid/commands","docId":"databases/nosql-databases/druid/commands","unlisted":false},{"type":"link","label":"Documentation","href":"/databases/nosql-databases/druid/documentation","docId":"databases/nosql-databases/druid/documentation","unlisted":false},{"type":"link","label":"FAQs","href":"/databases/nosql-databases/druid/faqs","docId":"databases/nosql-databases/druid/faqs","unlisted":false},{"type":"link","label":"Druid","href":"/databases/nosql-databases/druid/intro","docId":"databases/nosql-databases/druid/intro","unlisted":false},{"type":"link","label":"Others","href":"/databases/nosql-databases/druid/others","docId":"databases/nosql-databases/druid/others","unlisted":false},{"type":"link","label":"Paper","href":"/databases/nosql-databases/druid/paper","docId":"databases/nosql-databases/druid/paper","unlisted":false}],"href":"/databases/nosql-databases/druid/"},{"type":"link","label":"etcd","href":"/databases/nosql-databases/etcd","docId":"databases/nosql-databases/etcd","unlisted":false},{"type":"category","label":"MongoDB","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/databases/nosql-databases/mongodb/commands","docId":"databases/nosql-databases/mongodb/commands","unlisted":false},{"type":"link","label":"Data Types","href":"/databases/nosql-databases/mongodb/data-types","docId":"databases/nosql-databases/mongodb/data-types","unlisted":false},{"type":"link","label":"Indexes","href":"/databases/nosql-databases/mongodb/indexes","docId":"databases/nosql-databases/mongodb/indexes","unlisted":false},{"type":"link","label":"MongoDB","href":"/databases/nosql-databases/mongodb/intro","docId":"databases/nosql-databases/mongodb/intro","unlisted":false},{"type":"link","label":"Others","href":"/databases/nosql-databases/mongodb/others","docId":"databases/nosql-databases/mongodb/others","unlisted":false},{"type":"link","label":"Overview","href":"/databases/nosql-databases/mongodb/overview","docId":"databases/nosql-databases/mongodb/overview","unlisted":false},{"type":"link","label":"pymongo","href":"/databases/nosql-databases/mongodb/pymongo","docId":"databases/nosql-databases/mongodb/pymongo","unlisted":false},{"type":"link","label":"Questions","href":"/databases/nosql-databases/mongodb/questions","docId":"databases/nosql-databases/mongodb/questions","unlisted":false},{"type":"link","label":"Read / Write Concern","href":"/databases/nosql-databases/mongodb/read-write-concern","docId":"databases/nosql-databases/mongodb/read-write-concern","unlisted":false},{"type":"link","label":"Sharding / Replication","href":"/databases/nosql-databases/mongodb/sharding-replication","docId":"databases/nosql-databases/mongodb/sharding-replication","unlisted":false},{"type":"link","label":"Vector Search","href":"/databases/nosql-databases/mongodb/vector-search","docId":"databases/nosql-databases/mongodb/vector-search","unlisted":false}],"href":"/databases/nosql-databases/mongodb/"},{"type":"link","label":"Other NoSQL Databases","href":"/databases/nosql-databases/others","docId":"databases/nosql-databases/others","unlisted":false},{"type":"category","label":"Redis","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Best Practices","href":"/databases/nosql-databases/redis/best-practices","docId":"databases/nosql-databases/redis/best-practices","unlisted":false},{"type":"link","label":"Commands","href":"/databases/nosql-databases/redis/commands","docId":"databases/nosql-databases/redis/commands","unlisted":false},{"type":"link","label":"Documentation","href":"/databases/nosql-databases/redis/documentation","docId":"databases/nosql-databases/redis/documentation","unlisted":false},{"type":"link","label":"Redis","href":"/databases/nosql-databases/redis/intro","docId":"databases/nosql-databases/redis/intro","unlisted":false},{"type":"link","label":"Others","href":"/databases/nosql-databases/redis/others","docId":"databases/nosql-databases/redis/others","unlisted":false},{"type":"link","label":"Redis Concepts","href":"/databases/nosql-databases/redis/redis-concepts","docId":"databases/nosql-databases/redis/redis-concepts","unlisted":false},{"type":"link","label":"Redis Data Types","href":"/databases/nosql-databases/redis/redis-data-types","docId":"databases/nosql-databases/redis/redis-data-types","unlisted":false},{"type":"link","label":"Redis Eviction Policies","href":"/databases/nosql-databases/redis/redis-eviction-policies","docId":"databases/nosql-databases/redis/redis-eviction-policies","unlisted":false},{"type":"link","label":"redis-py","href":"/databases/nosql-databases/redis/redis-py","docId":"databases/nosql-databases/redis/redis-py","unlisted":false},{"type":"link","label":"Redis Queues","href":"/databases/nosql-databases/redis/redis-queues","docId":"databases/nosql-databases/redis/redis-queues","unlisted":false},{"type":"link","label":"Redis Streams / PUBSUB","href":"/databases/nosql-databases/redis/redis-streams-pubsub","docId":"databases/nosql-databases/redis/redis-streams-pubsub","unlisted":false},{"type":"link","label":"Scaling","href":"/databases/nosql-databases/redis/scaling","docId":"databases/nosql-databases/redis/scaling","unlisted":false}],"href":"/databases/nosql-databases/redis/"},{"type":"category","label":"Snowflake","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture","href":"/databases/nosql-databases/snowflake/architecture","docId":"databases/nosql-databases/snowflake/architecture","unlisted":false},{"type":"link","label":"Commands","href":"/databases/nosql-databases/snowflake/commands","docId":"databases/nosql-databases/snowflake/commands","unlisted":false},{"type":"link","label":"Compute","href":"/databases/nosql-databases/snowflake/compute","docId":"databases/nosql-databases/snowflake/compute","unlisted":false},{"type":"link","label":"Documentation","href":"/databases/nosql-databases/snowflake/documentation","docId":"databases/nosql-databases/snowflake/documentation","unlisted":false},{"type":"link","label":"Governance","href":"/databases/nosql-databases/snowflake/governance","docId":"databases/nosql-databases/snowflake/governance","unlisted":false},{"type":"link","label":"Data Ingestion / Loading","href":"/databases/nosql-databases/snowflake/ingestion","docId":"databases/nosql-databases/snowflake/ingestion","unlisted":false},{"type":"link","label":"Intro","href":"/databases/nosql-databases/snowflake/intro","docId":"databases/nosql-databases/snowflake/intro","unlisted":false},{"type":"link","label":"Optimizations","href":"/databases/nosql-databases/snowflake/optimizations","docId":"databases/nosql-databases/snowflake/optimizations","unlisted":false},{"type":"link","label":"Recovery","href":"/databases/nosql-databases/snowflake/recovery","docId":"databases/nosql-databases/snowflake/recovery","unlisted":false},{"type":"link","label":"Stages","href":"/databases/nosql-databases/snowflake/stages","docId":"databases/nosql-databases/snowflake/stages","unlisted":false},{"type":"link","label":"Terms","href":"/databases/nosql-databases/snowflake/terms","docId":"databases/nosql-databases/snowflake/terms","unlisted":false}],"href":"/databases/nosql-databases/snowflake/"},{"type":"link","label":"tidb","href":"/databases/nosql-databases/tidb","docId":"databases/nosql-databases/tidb","unlisted":false},{"type":"category","label":"Time Series","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"InfluxDB","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Administration","href":"/databases/nosql-databases/time-series-db/influxdb/administration","docId":"databases/nosql-databases/time-series-db/influxdb/administration","unlisted":false},{"type":"link","label":"Commands / Influx Query Language (InfluxQL)","href":"/databases/nosql-databases/time-series-db/influxdb/commands-influx-query-language-influxql","docId":"databases/nosql-databases/time-series-db/influxdb/commands-influx-query-language-influxql","unlisted":false},{"type":"link","label":"Concepts","href":"/databases/nosql-databases/time-series-db/influxdb/concepts","docId":"databases/nosql-databases/time-series-db/influxdb/concepts","unlisted":false},{"type":"link","label":"Influx","href":"/databases/nosql-databases/time-series-db/influxdb/influx","docId":"databases/nosql-databases/time-series-db/influxdb/influx","unlisted":false},{"type":"link","label":"Kapacitor","href":"/databases/nosql-databases/time-series-db/influxdb/kapacitor","docId":"databases/nosql-databases/time-series-db/influxdb/kapacitor","unlisted":false},{"type":"link","label":"Others","href":"/databases/nosql-databases/time-series-db/influxdb/others","docId":"databases/nosql-databases/time-series-db/influxdb/others","unlisted":false},{"type":"link","label":"Tools","href":"/databases/nosql-databases/time-series-db/influxdb/tools","docId":"databases/nosql-databases/time-series-db/influxdb/tools","unlisted":false},{"type":"link","label":"Upgrades","href":"/databases/nosql-databases/time-series-db/influxdb/upgrades","docId":"databases/nosql-databases/time-series-db/influxdb/upgrades","unlisted":false},{"type":"link","label":"Write Protocols","href":"/databases/nosql-databases/time-series-db/influxdb/write-protocols","docId":"databases/nosql-databases/time-series-db/influxdb/write-protocols","unlisted":false}],"href":"/databases/nosql-databases/time-series-db/influxdb/"},{"type":"link","label":"Time Series Databases","href":"/databases/nosql-databases/time-series-db/time-series-databases","docId":"databases/nosql-databases/time-series-db/time-series-databases","unlisted":false},{"type":"link","label":"TimeScaleDB","href":"/databases/nosql-databases/time-series-db/timescaledb","docId":"databases/nosql-databases/time-series-db/timescaledb","unlisted":false}],"href":"/databases/nosql-databases/time-series-db/"},{"type":"link","label":"YugabyteDB","href":"/databases/nosql-databases/yugabytedb","docId":"databases/nosql-databases/yugabytedb","unlisted":false}],"href":"/databases/nosql-databases/"},{"type":"category","label":"Others","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Course - Advanced Database Systems","href":"/databases/others/course-advanced-database-systems","docId":"databases/others/course-advanced-database-systems","unlisted":false},{"type":"link","label":"Course - AWS Certified Database - Specialty","href":"/databases/others/course-aws-certified-database-specialty","docId":"databases/others/course-aws-certified-database-specialty","unlisted":false},{"type":"link","label":"Database Activity/Active Monitoring (DAM)","href":"/databases/others/database-activity-monitoring-dam","docId":"databases/others/database-activity-monitoring-dam","unlisted":false},{"type":"link","label":"Database Migration Tools","href":"/databases/others/database-migration-tools","docId":"databases/others/database-migration-tools","unlisted":false},{"type":"link","label":"Databases - Others","href":"/databases/others/databases-others","docId":"databases/others/databases-others","unlisted":false},{"type":"link","label":"Technologies / Tools","href":"/databases/others/technologies-tools","docId":"databases/others/technologies-tools","unlisted":false}],"href":"/databases/others/"},{"type":"category","label":"SQL Databases","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Amazon Aurora vs RDS","href":"/databases/sql-databases/amazon-aurora-vs-rds","docId":"databases/sql-databases/amazon-aurora-vs-rds","unlisted":false},{"type":"link","label":"Amazon RDS","href":"/databases/sql-databases/amazon-rds","docId":"databases/sql-databases/amazon-rds","unlisted":false},{"type":"category","label":"AWS Aurora","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Aurora Documentation","href":"/databases/sql-databases/aws-aurora/aurora-documentation","docId":"databases/sql-databases/aws-aurora/aurora-documentation","unlisted":false},{"type":"link","label":"Aurora Global Databases","href":"/databases/sql-databases/aws-aurora/aurora-global-databases","docId":"databases/sql-databases/aws-aurora/aurora-global-databases","unlisted":false},{"type":"link","label":"Amazon Aurora Serverless","href":"/databases/sql-databases/aws-aurora/aurora-serverless","docId":"databases/sql-databases/aws-aurora/aurora-serverless","unlisted":false},{"type":"link","label":"Backup","href":"/databases/sql-databases/aws-aurora/backup","docId":"databases/sql-databases/aws-aurora/backup","unlisted":false},{"type":"link","label":"Configurations / Optimizations / Best Practices","href":"/databases/sql-databases/aws-aurora/configurations-optimizations-best-practices","docId":"databases/sql-databases/aws-aurora/configurations-optimizations-best-practices","unlisted":false},{"type":"link","label":"Costs","href":"/databases/sql-databases/aws-aurora/costs","docId":"databases/sql-databases/aws-aurora/costs","unlisted":false},{"type":"link","label":"High Availability (HA) Others","href":"/databases/sql-databases/aws-aurora/high-availability-ha-others","docId":"databases/sql-databases/aws-aurora/high-availability-ha-others","unlisted":false},{"type":"link","label":"High Availability (HA)","href":"/databases/sql-databases/aws-aurora/high-availability-ha","docId":"databases/sql-databases/aws-aurora/high-availability-ha","unlisted":false},{"type":"link","label":"AWS Aurora","href":"/databases/sql-databases/aws-aurora/intro","docId":"databases/sql-databases/aws-aurora/intro","unlisted":false},{"type":"link","label":"Monitoring","href":"/databases/sql-databases/aws-aurora/monitoring","docId":"databases/sql-databases/aws-aurora/monitoring","unlisted":false},{"type":"link","label":"Others","href":"/databases/sql-databases/aws-aurora/others","docId":"databases/sql-databases/aws-aurora/others","unlisted":false},{"type":"link","label":"Storage","href":"/databases/sql-databases/aws-aurora/storage","docId":"databases/sql-databases/aws-aurora/storage","unlisted":false}],"href":"/databases/sql-databases/aws-aurora/"},{"type":"category","label":"Redshift","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture","href":"/databases/sql-databases/aws-redshift/architecture","docId":"databases/sql-databases/aws-redshift/architecture","unlisted":false},{"type":"link","label":"Deep dive / Best practices","href":"/databases/sql-databases/aws-redshift/deep-dive-best-practices","docId":"databases/sql-databases/aws-redshift/deep-dive-best-practices","unlisted":false},{"type":"link","label":"Documentation","href":"/databases/sql-databases/aws-redshift/documentation","docId":"databases/sql-databases/aws-redshift/documentation","unlisted":false},{"type":"link","label":"ETL in Redshift","href":"/databases/sql-databases/aws-redshift/etl-redshift","docId":"databases/sql-databases/aws-redshift/etl-redshift","unlisted":false},{"type":"link","label":"AWS Redshift","href":"/databases/sql-databases/aws-redshift/intro","docId":"databases/sql-databases/aws-redshift/intro","unlisted":false},{"type":"link","label":"Others","href":"/databases/sql-databases/aws-redshift/others","docId":"databases/sql-databases/aws-redshift/others","unlisted":false},{"type":"link","label":"Pricing / Sizing","href":"/databases/sql-databases/aws-redshift/pricing-sizing","docId":"databases/sql-databases/aws-redshift/pricing-sizing","unlisted":false},{"type":"link","label":"Redshift SQL Queries / Commands","href":"/databases/sql-databases/aws-redshift/redshift-sql-queries-commands","docId":"databases/sql-databases/aws-redshift/redshift-sql-queries-commands","unlisted":false},{"type":"link","label":"Workload management (WLM) and query monitoring rules (QMR)","href":"/databases/sql-databases/aws-redshift/wlm-qmr","docId":"databases/sql-databases/aws-redshift/wlm-qmr","unlisted":false}],"href":"/databases/sql-databases/aws-redshift/"},{"type":"category","label":"MemSQL","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Intro","href":"/databases/sql-databases/memsql/intro","docId":"databases/sql-databases/memsql/intro","unlisted":false}],"href":"/databases/sql-databases/memsql/"},{"type":"category","label":"MySQL","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Administration / Configuration","href":"/databases/sql-databases/mysql/administration-configuration","docId":"databases/sql-databases/mysql/administration-configuration","unlisted":false},{"type":"link","label":"Backup Comparisons","href":"/databases/sql-databases/mysql/backup-comparisons","docId":"databases/sql-databases/mysql/backup-comparisons","unlisted":false},{"type":"link","label":"Backup Policy","href":"/databases/sql-databases/mysql/backup-policy","docId":"databases/sql-databases/mysql/backup-policy","unlisted":false},{"type":"link","label":"Backup Types","href":"/databases/sql-databases/mysql/backup-types","docId":"databases/sql-databases/mysql/backup-types","unlisted":false},{"type":"link","label":"Connection Handling","href":"/databases/sql-databases/mysql/connection-handling","docId":"databases/sql-databases/mysql/connection-handling","unlisted":false},{"type":"link","label":"Documentation","href":"/databases/sql-databases/mysql/documentation","docId":"databases/sql-databases/mysql/documentation","unlisted":false},{"type":"link","label":"GTID Replication","href":"/databases/sql-databases/mysql/gtid-replication","docId":"databases/sql-databases/mysql/gtid-replication","unlisted":false},{"type":"link","label":"MySQL","href":"/databases/sql-databases/mysql/intro","docId":"databases/sql-databases/mysql/intro","unlisted":false},{"type":"link","label":"MyDumper","href":"/databases/sql-databases/mysql/mydumper","docId":"databases/sql-databases/mysql/mydumper","unlisted":false},{"type":"link","label":"MySQL Data Types","href":"/databases/sql-databases/mysql/mysql-data-types","docId":"databases/sql-databases/mysql/mysql-data-types","unlisted":false},{"type":"link","label":"MySQL Heatwave","href":"/databases/sql-databases/mysql/mysql-heatwave","docId":"databases/sql-databases/mysql/mysql-heatwave","unlisted":false},{"type":"link","label":"MySQL Triggers","href":"/databases/sql-databases/mysql/mysql-triggers","docId":"databases/sql-databases/mysql/mysql-triggers","unlisted":false},{"type":"link","label":"mysqlbinlog","href":"/databases/sql-databases/mysql/mysqlbinlog","docId":"databases/sql-databases/mysql/mysqlbinlog","unlisted":false},{"type":"link","label":"MySQLDump","href":"/databases/sql-databases/mysql/mysqldump","docId":"databases/sql-databases/mysql/mysqldump","unlisted":false},{"type":"link","label":"Optimizing Locking Operations","href":"/databases/sql-databases/mysql/optimizing-locking-operations","docId":"databases/sql-databases/mysql/optimizing-locking-operations","unlisted":false},{"type":"link","label":"Others","href":"/databases/sql-databases/mysql/others","docId":"databases/sql-databases/mysql/others","unlisted":false},{"type":"link","label":"Partitioning","href":"/databases/sql-databases/mysql/partitioning","docId":"databases/sql-databases/mysql/partitioning","unlisted":false},{"type":"link","label":"Percona Toolkit","href":"/databases/sql-databases/mysql/percona-toolkit","docId":"databases/sql-databases/mysql/percona-toolkit","unlisted":false},{"type":"link","label":"Percona XtraBackup","href":"/databases/sql-databases/mysql/percona-xtrabackup","docId":"databases/sql-databases/mysql/percona-xtrabackup","unlisted":false},{"type":"link","label":"Replication","href":"/databases/sql-databases/mysql/replication","docId":"databases/sql-databases/mysql/replication","unlisted":false},{"type":"link","label":"Scaling / Optimizations","href":"/databases/sql-databases/mysql/scaling-optimizations","docId":"databases/sql-databases/mysql/scaling-optimizations","unlisted":false},{"type":"link","label":"Server SQL Modes","href":"/databases/sql-databases/mysql/server-sql-modes","docId":"databases/sql-databases/mysql/server-sql-modes","unlisted":false},{"type":"link","label":"SQL / MySQL Tools","href":"/databases/sql-databases/mysql/sql-mysql-tools","docId":"databases/sql-databases/mysql/sql-mysql-tools","unlisted":false},{"type":"link","label":"Thread States","href":"/databases/sql-databases/mysql/thread-states","docId":"databases/sql-databases/mysql/thread-states","unlisted":false},{"type":"link","label":"Trasaction / Commit / Rollback","href":"/databases/sql-databases/mysql/transaction-commit-rollback","docId":"databases/sql-databases/mysql/transaction-commit-rollback","unlisted":false}],"href":"/databases/sql-databases/mysql/"},{"type":"link","label":"Normalization","href":"/databases/sql-databases/normalization","docId":"databases/sql-databases/normalization","unlisted":false},{"type":"link","label":"Partitioning / Sharding","href":"/databases/sql-databases/partitioning-sharding","docId":"databases/sql-databases/partitioning-sharding","unlisted":false},{"type":"category","label":"Postgres","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture","href":"/databases/sql-databases/postgres/architecture","docId":"databases/sql-databases/postgres/architecture","unlisted":false},{"type":"link","label":"Documentation","href":"/databases/sql-databases/postgres/documentation","docId":"databases/sql-databases/postgres/documentation","unlisted":false},{"type":"link","label":"Indexes in Postgres","href":"/databases/sql-databases/postgres/indexes","docId":"databases/sql-databases/postgres/indexes","unlisted":false},{"type":"link","label":"Others","href":"/databases/sql-databases/postgres/others","docId":"databases/sql-databases/postgres/others","unlisted":false},{"type":"link","label":"Parameters / Configurations / Optimizations","href":"/databases/sql-databases/postgres/parameters-configuration-optimization","docId":"databases/sql-databases/postgres/parameters-configuration-optimization","unlisted":false},{"type":"link","label":"Replication","href":"/databases/sql-databases/postgres/replication","docId":"databases/sql-databases/postgres/replication","unlisted":false},{"type":"link","label":"Table Partitioning","href":"/databases/sql-databases/postgres/table-partitioning","docId":"databases/sql-databases/postgres/table-partitioning","unlisted":false}],"href":"/databases/sql-databases/postgres/"},{"type":"link","label":"RDBMS","href":"/databases/sql-databases/rdbms","docId":"databases/sql-databases/rdbms","unlisted":false}],"href":"/databases/sql-databases/"}],"href":"/databases/"},{"type":"category","label":"Decentralized Applications","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Blockchain","href":"/decentralized-applications/blockchain","docId":"decentralized-applications/blockchain","unlisted":false},{"type":"category","label":"Coins / Tokens / Chains","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"BIP39","href":"/decentralized-applications/coins-tokens-chains/bip39","docId":"decentralized-applications/coins-tokens-chains/bip39","unlisted":false},{"type":"link","label":"Bitcoin","href":"/decentralized-applications/coins-tokens-chains/bitcoin","docId":"decentralized-applications/coins-tokens-chains/bitcoin","unlisted":false},{"type":"link","label":"BNB","href":"/decentralized-applications/coins-tokens-chains/bnb","docId":"decentralized-applications/coins-tokens-chains/bnb","unlisted":false},{"type":"link","label":"Cardano","href":"/decentralized-applications/coins-tokens-chains/cardano","docId":"decentralized-applications/coins-tokens-chains/cardano","unlisted":false},{"type":"link","label":"Celestia","href":"/decentralized-applications/coins-tokens-chains/celestia","docId":"decentralized-applications/coins-tokens-chains/celestia","unlisted":false},{"type":"link","label":"Tokens","href":"/decentralized-applications/coins-tokens-chains/coin-token-intro","docId":"decentralized-applications/coins-tokens-chains/coin-token-intro","unlisted":false},{"type":"link","label":"DAI","href":"/decentralized-applications/coins-tokens-chains/dai","docId":"decentralized-applications/coins-tokens-chains/dai","unlisted":false},{"type":"link","label":"dtokens","href":"/decentralized-applications/coins-tokens-chains/dtokens","docId":"decentralized-applications/coins-tokens-chains/dtokens","unlisted":false},{"type":"link","label":"Dual-Token Economy/Model","href":"/decentralized-applications/coins-tokens-chains/dual-token-economy","docId":"decentralized-applications/coins-tokens-chains/dual-token-economy","unlisted":false},{"type":"link","label":"Litecoin","href":"/decentralized-applications/coins-tokens-chains/litecoin","docId":"decentralized-applications/coins-tokens-chains/litecoin","unlisted":false},{"type":"link","label":"Near Protocol","href":"/decentralized-applications/coins-tokens-chains/near-protocol","docId":"decentralized-applications/coins-tokens-chains/near-protocol","unlisted":false},{"type":"link","label":"NFT (Non Fungible Tokens)","href":"/decentralized-applications/coins-tokens-chains/nft-non-fungible-tokens","docId":"decentralized-applications/coins-tokens-chains/nft-non-fungible-tokens","unlisted":false},{"type":"link","label":"Ordinals","href":"/decentralized-applications/coins-tokens-chains/ordinals","docId":"decentralized-applications/coins-tokens-chains/ordinals","unlisted":false},{"type":"link","label":"Stable Coins","href":"/decentralized-applications/coins-tokens-chains/stable-coins","docId":"decentralized-applications/coins-tokens-chains/stable-coins","unlisted":false},{"type":"link","label":"ThorChain","href":"/decentralized-applications/coins-tokens-chains/thorchain","docId":"decentralized-applications/coins-tokens-chains/thorchain","unlisted":false},{"type":"link","label":"Uniswap","href":"/decentralized-applications/coins-tokens-chains/uniswap","docId":"decentralized-applications/coins-tokens-chains/uniswap","unlisted":false},{"type":"link","label":"USDC","href":"/decentralized-applications/coins-tokens-chains/usdc","docId":"decentralized-applications/coins-tokens-chains/usdc","unlisted":false},{"type":"link","label":"USDT","href":"/decentralized-applications/coins-tokens-chains/usdt","docId":"decentralized-applications/coins-tokens-chains/usdt","unlisted":false},{"type":"link","label":"Vechain","href":"/decentralized-applications/coins-tokens-chains/vechain","docId":"decentralized-applications/coins-tokens-chains/vechain","unlisted":false},{"type":"link","label":"Wallets","href":"/decentralized-applications/coins-tokens-chains/wallets","docId":"decentralized-applications/coins-tokens-chains/wallets","unlisted":false}],"href":"/decentralized-applications/coins-tokens-chains/"},{"type":"link","label":"Consensus Protocols","href":"/decentralized-applications/consensus-protocols","docId":"decentralized-applications/consensus-protocols","unlisted":false},{"type":"link","label":"Crypto Exchanges","href":"/decentralized-applications/crypto-exchanges","docId":"decentralized-applications/crypto-exchanges","unlisted":false},{"type":"link","label":"Crypto Future","href":"/decentralized-applications/crypto-future","docId":"decentralized-applications/crypto-future","unlisted":false},{"type":"link","label":"Crypto Investing","href":"/decentralized-applications/crypto-investing","docId":"decentralized-applications/crypto-investing","unlisted":false},{"type":"link","label":"Crypto News","href":"/decentralized-applications/crypto-news","docId":"decentralized-applications/crypto-news","unlisted":false},{"type":"link","label":"DeFi Apps","href":"/decentralized-applications/defi-apps","docId":"decentralized-applications/defi-apps","unlisted":false},{"type":"link","label":"DeFi","href":"/decentralized-applications/defi","docId":"decentralized-applications/defi","unlisted":false},{"type":"category","label":"Development Tools","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Infura","href":"/decentralized-applications/development/infura","docId":"decentralized-applications/development/infura","unlisted":false},{"type":"link","label":"Sample Code","href":"/decentralized-applications/development/sample-code","docId":"decentralized-applications/development/sample-code","unlisted":false}],"href":"/decentralized-applications/development/"},{"type":"category","label":"Ethereum","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Intro to Ethereum","href":"/decentralized-applications/ethereum/01-intro-to-ethereum","docId":"decentralized-applications/ethereum/01-intro-to-ethereum","unlisted":false},{"type":"link","label":"Intro to Ether","href":"/decentralized-applications/ethereum/02-intro-to-ether","docId":"decentralized-applications/ethereum/02-intro-to-ether","unlisted":false},{"type":"link","label":"Intro to Dapps","href":"/decentralized-applications/ethereum/03-intro-to-dapps","docId":"decentralized-applications/ethereum/03-intro-to-dapps","unlisted":false},{"type":"link","label":"Ethereum Accounts","href":"/decentralized-applications/ethereum/05-accounts","docId":"decentralized-applications/ethereum/05-accounts","unlisted":false},{"type":"link","label":"Transactions","href":"/decentralized-applications/ethereum/06-transactions","docId":"decentralized-applications/ethereum/06-transactions","unlisted":false},{"type":"link","label":"Blocks","href":"/decentralized-applications/ethereum/07-blocks","docId":"decentralized-applications/ethereum/07-blocks","unlisted":false},{"type":"link","label":"EVM - Ethereum Virtual Machine","href":"/decentralized-applications/ethereum/08-evm","docId":"decentralized-applications/ethereum/08-evm","unlisted":false},{"type":"link","label":"Gas","href":"/decentralized-applications/ethereum/09-gas","docId":"decentralized-applications/ethereum/09-gas","unlisted":false},{"type":"link","label":"Nodes and Clients","href":"/decentralized-applications/ethereum/10-nodes-and-clients","docId":"decentralized-applications/ethereum/10-nodes-and-clients","unlisted":false},{"type":"link","label":"Bridges","href":"/decentralized-applications/ethereum/30-bridges","docId":"decentralized-applications/ethereum/30-bridges","unlisted":false},{"type":"link","label":"Proof of Stake","href":"/decentralized-applications/ethereum/40-proof-of-stake","docId":"decentralized-applications/ethereum/40-proof-of-stake","unlisted":false},{"type":"link","label":"Rewards and Penalties","href":"/decentralized-applications/ethereum/41-rewards-and-penalties","docId":"decentralized-applications/ethereum/41-rewards-and-penalties","unlisted":false},{"type":"link","label":"Block Proposals","href":"/decentralized-applications/ethereum/42-block-proposals","docId":"decentralized-applications/ethereum/42-block-proposals","unlisted":false},{"type":"link","label":"Arbitrum","href":"/decentralized-applications/ethereum/arbitrum","docId":"decentralized-applications/ethereum/arbitrum","unlisted":false},{"type":"link","label":"DAO","href":"/decentralized-applications/ethereum/dao","docId":"decentralized-applications/ethereum/dao","unlisted":false},{"type":"link","label":"ERC-4337","href":"/decentralized-applications/ethereum/erc-4337","docId":"decentralized-applications/ethereum/erc-4337","unlisted":false},{"type":"link","label":"Ethereum","href":"/decentralized-applications/ethereum/ethereum-intro","docId":"decentralized-applications/ethereum/ethereum-intro","unlisted":false},{"type":"link","label":"Ethereum Staking","href":"/decentralized-applications/ethereum/ethereum-staking","docId":"decentralized-applications/ethereum/ethereum-staking","unlisted":false},{"type":"link","label":"Etherjs","href":"/decentralized-applications/ethereum/etherjs","docId":"decentralized-applications/ethereum/etherjs","unlisted":false},{"type":"link","label":"Layer 2 Protocols","href":"/decentralized-applications/ethereum/layer-2-protocols","docId":"decentralized-applications/ethereum/layer-2-protocols","unlisted":false},{"type":"link","label":"Others","href":"/decentralized-applications/ethereum/others","docId":"decentralized-applications/ethereum/others","unlisted":false},{"type":"link","label":"Polygon","href":"/decentralized-applications/ethereum/polygon","docId":"decentralized-applications/ethereum/polygon","unlisted":false},{"type":"link","label":"Solidity","href":"/decentralized-applications/ethereum/solidity","docId":"decentralized-applications/ethereum/solidity","unlisted":false},{"type":"link","label":"Upgrades","href":"/decentralized-applications/ethereum/upgrades","docId":"decentralized-applications/ethereum/upgrades","unlisted":false}],"href":"/decentralized-applications/ethereum/"},{"type":"link","label":"Intro","href":"/decentralized-applications/intro","docId":"decentralized-applications/intro","unlisted":false},{"type":"link","label":"Key Concepts","href":"/decentralized-applications/key-concepts","docId":"decentralized-applications/key-concepts","unlisted":false},{"type":"link","label":"Liquidity Mining","href":"/decentralized-applications/liquidity-mining","docId":"decentralized-applications/liquidity-mining","unlisted":false},{"type":"link","label":"On-Chain Analytics","href":"/decentralized-applications/on-chain-analytics","docId":"decentralized-applications/on-chain-analytics","unlisted":false},{"type":"link","label":"Others","href":"/decentralized-applications/others","docId":"decentralized-applications/others","unlisted":false},{"type":"link","label":"References / Learning","href":"/decentralized-applications/references-learning","docId":"decentralized-applications/references-learning","unlisted":false},{"type":"link","label":"Tokenomics","href":"/decentralized-applications/tokenomics","docId":"decentralized-applications/tokenomics","unlisted":false},{"type":"link","label":"Tools","href":"/decentralized-applications/tools","docId":"decentralized-applications/tools","unlisted":false},{"type":"link","label":"Trilemma","href":"/decentralized-applications/trilemmas","docId":"decentralized-applications/trilemmas","unlisted":false}],"href":"/decentralized-applications/"},{"type":"category","label":"DevOps","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Ansible","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/devops/ansible/commands","docId":"devops/ansible/commands","unlisted":false}],"href":"/devops/ansible/"},{"type":"category","label":"DevOps","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Application Management","href":"/devops/devops-intro/application-management","docId":"devops/devops-intro/application-management","unlisted":false},{"type":"link","label":"Chaos Engineering","href":"/devops/devops-intro/chaos-engineering","docId":"devops/devops-intro/chaos-engineering","unlisted":false},{"type":"link","label":"Concepts","href":"/devops/devops-intro/concepts","docId":"devops/devops-intro/concepts","unlisted":false},{"type":"link","label":"Deployment Strategies","href":"/devops/devops-intro/deployment-strategies","docId":"devops/devops-intro/deployment-strategies","unlisted":false},{"type":"link","label":"Design","href":"/devops/devops-intro/design","docId":"devops/devops-intro/design","unlisted":false},{"type":"link","label":"Disaster Recovery","href":"/devops/devops-intro/disaster-recovery","docId":"devops/devops-intro/disaster-recovery","unlisted":false},{"type":"link","label":"Distributed Tracing","href":"/devops/devops-intro/distributed-tracing","docId":"devops/devops-intro/distributed-tracing","unlisted":false},{"type":"link","label":"DORA Metrics","href":"/devops/devops-intro/dora-metrics","docId":"devops/devops-intro/dora-metrics","unlisted":false},{"type":"link","label":"Feature Toggles / Flags","href":"/devops/devops-intro/feature-toggles-flags","docId":"devops/devops-intro/feature-toggles-flags","unlisted":false},{"type":"link","label":"FinOps","href":"/devops/devops-intro/finops","docId":"devops/devops-intro/finops","unlisted":false},{"type":"link","label":"GitOps","href":"/devops/devops-intro/gitops","docId":"devops/devops-intro/gitops","unlisted":false},{"type":"link","label":"High Availability","href":"/devops/devops-intro/high-availability","docId":"devops/devops-intro/high-availability","unlisted":false},{"type":"link","label":"Infra as Code IaC","href":"/devops/devops-intro/infra-as-code-iac","docId":"devops/devops-intro/infra-as-code-iac","unlisted":false},{"type":"link","label":"Intro","href":"/devops/devops-intro/intro","docId":"devops/devops-intro/intro","unlisted":false},{"type":"link","label":"Load Balancer Features","href":"/devops/devops-intro/load-balancer-features","docId":"devops/devops-intro/load-balancer-features","unlisted":false},{"type":"link","label":"Tools","href":"/devops/devops-intro/load-balancer-tools","docId":"devops/devops-intro/load-balancer-tools","unlisted":false},{"type":"link","label":"Load Balancer","href":"/devops/devops-intro/load-balancer","docId":"devops/devops-intro/load-balancer","unlisted":false},{"type":"link","label":"Load Balancing Algorithms","href":"/devops/devops-intro/load-balancing-algorithms","docId":"devops/devops-intro/load-balancing-algorithms","unlisted":false},{"type":"link","label":"Others","href":"/devops/devops-intro/others","docId":"devops/devops-intro/others","unlisted":false},{"type":"link","label":"Platform Engineering","href":"/devops/devops-intro/platform-engineering","docId":"devops/devops-intro/platform-engineering","unlisted":false},{"type":"link","label":"Proxy","href":"/devops/devops-intro/proxy","docId":"devops/devops-intro/proxy","unlisted":false},{"type":"link","label":"SRE (Site Reliability Engineering)","href":"/devops/devops-intro/sre-site-reliability-engineering","docId":"devops/devops-intro/sre-site-reliability-engineering","unlisted":false}],"href":"/devops/devops-intro/"},{"type":"category","label":"Docker","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Concepts","href":"/devops/docker/concepts","docId":"devops/docker/concepts","unlisted":false},{"type":"link","label":"Containers","href":"/devops/docker/containers","docId":"devops/docker/containers","unlisted":false},{"type":"link","label":"Docker Commands","href":"/devops/docker/docker-commands","docId":"devops/docker/docker-commands","unlisted":false},{"type":"link","label":"docker-compose example","href":"/devops/docker/docker-compose-example","docId":"devops/docker/docker-compose-example","unlisted":false},{"type":"link","label":"docker-compose","href":"/devops/docker/docker-compose","docId":"devops/docker/docker-compose","unlisted":false},{"type":"link","label":"Dockerfile example","href":"/devops/docker/dockerfile-example","docId":"devops/docker/dockerfile-example","unlisted":false},{"type":"link","label":"Dockerfiles","href":"/devops/docker/dockerfiles","docId":"devops/docker/dockerfiles","unlisted":false},{"type":"link","label":"Intro","href":"/devops/docker/intro","docId":"devops/docker/intro","unlisted":false},{"type":"link","label":"Networking","href":"/devops/docker/networking","docId":"devops/docker/networking","unlisted":false},{"type":"link","label":"Others","href":"/devops/docker/others","docId":"devops/docker/others","unlisted":false},{"type":"link","label":"Service Configuration Reference","href":"/devops/docker/service-configuration-reference","docId":"devops/docker/service-configuration-reference","unlisted":false},{"type":"link","label":"Stack / Swarm","href":"/devops/docker/stack-swarm","docId":"devops/docker/stack-swarm","unlisted":false}],"href":"/devops/docker/"},{"type":"category","label":"IDEs","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Jupyter / Jupyterlab / notebook","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Template","href":"/devops/ides/jupyter-jupyterlab-notebook/template","docId":"devops/ides/jupyter-jupyterlab-notebook/template","unlisted":false},{"type":"link","label":"Tools","href":"/devops/ides/jupyter-jupyterlab-notebook/tools","docId":"devops/ides/jupyter-jupyterlab-notebook/tools","unlisted":false}],"href":"/devops/ides/jupyter-jupyterlab-notebook/"},{"type":"link","label":"Mac","href":"/devops/ides/mac","docId":"devops/ides/mac","unlisted":false},{"type":"link","label":"Medium Blogging","href":"/devops/ides/medium-blogging","docId":"devops/ides/medium-blogging","unlisted":false},{"type":"link","label":"Obsidian + VS Code","href":"/devops/ides/obsidian-in-vscode","docId":"devops/ides/obsidian-in-vscode","unlisted":false},{"type":"link","label":"Obsidian","href":"/devops/ides/obsidian","docId":"devops/ides/obsidian","unlisted":false},{"type":"link","label":"OneNote","href":"/devops/ides/onenote","docId":"devops/ides/onenote","unlisted":false},{"type":"link","label":"Others","href":"/devops/ides/others","docId":"devops/ides/others","unlisted":false},{"type":"link","label":"PyCharm","href":"/devops/ides/pycharm","docId":"devops/ides/pycharm","unlisted":false},{"type":"link","label":"Spyder","href":"/devops/ides/spyder","docId":"devops/ides/spyder","unlisted":false},{"type":"link","label":"VSCode / VS Code","href":"/devops/ides/vscode-vs-code","docId":"devops/ides/vscode-vs-code","unlisted":false}],"href":"/devops/ides/"},{"type":"category","label":"Kubernetes","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"api-resources","href":"/devops/kubernetes/api-resources","docId":"devops/kubernetes/api-resources","unlisted":false},{"type":"link","label":"Architecture","href":"/devops/kubernetes/architecture","docId":"devops/kubernetes/architecture","unlisted":false},{"type":"category","label":"Cluster Administration","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Logging Architecture","href":"/devops/kubernetes/cluster-administration/logging-architecture","docId":"devops/kubernetes/cluster-administration/logging-architecture","unlisted":false},{"type":"link","label":"Others","href":"/devops/kubernetes/cluster-administration/others","docId":"devops/kubernetes/cluster-administration/others","unlisted":false}],"href":"/devops/kubernetes/cluster-administration/"},{"type":"category","label":"Concepts & Overview","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Configuration","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Secrets","href":"/devops/kubernetes/concepts-and-overview/configuration/secrets","docId":"devops/kubernetes/concepts-and-overview/configuration/secrets","unlisted":false}],"href":"/devops/kubernetes/concepts-and-overview/configuration/"},{"type":"link","label":"Policies","href":"/devops/kubernetes/concepts-and-overview/policies","docId":"devops/kubernetes/concepts-and-overview/policies","unlisted":false}],"href":"/devops/kubernetes/concepts-and-overview/"},{"type":"link","label":"Configuration","href":"/devops/kubernetes/configuration","docId":"devops/kubernetes/configuration","unlisted":false},{"type":"link","label":"Design Patterns","href":"/devops/kubernetes/design-patterns","docId":"devops/kubernetes/design-patterns","unlisted":false},{"type":"link","label":"Helm","href":"/devops/kubernetes/helm","docId":"devops/kubernetes/helm","unlisted":false},{"type":"link","label":"Intro","href":"/devops/kubernetes/intro","docId":"devops/kubernetes/intro","unlisted":false},{"type":"link","label":"KEDA","href":"/devops/kubernetes/keda","docId":"devops/kubernetes/keda","unlisted":false},{"type":"link","label":"kubectl Commands","href":"/devops/kubernetes/kubectl-commands","docId":"devops/kubernetes/kubectl-commands","unlisted":false},{"type":"link","label":"KubeEdge","href":"/devops/kubernetes/kubeedge","docId":"devops/kubernetes/kubeedge","unlisted":false},{"type":"link","label":"Kubernetes Manifests Examples","href":"/devops/kubernetes/kubernetes-manifests-examples","docId":"devops/kubernetes/kubernetes-manifests-examples","unlisted":false},{"type":"link","label":"Operators","href":"/devops/kubernetes/operators","docId":"devops/kubernetes/operators","unlisted":false},{"type":"link","label":"Optimizations","href":"/devops/kubernetes/optimizations","docId":"devops/kubernetes/optimizations","unlisted":false},{"type":"link","label":"Others","href":"/devops/kubernetes/others","docId":"devops/kubernetes/others","unlisted":false},{"type":"link","label":"Outline Documentation","href":"/devops/kubernetes/outline-documentation","docId":"devops/kubernetes/outline-documentation","unlisted":false},{"type":"category","label":"Reference","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Quality of Service (QoS)","href":"/devops/kubernetes/reference/quality-of-service-qos","docId":"devops/kubernetes/reference/quality-of-service-qos","unlisted":false},{"type":"link","label":"RBAC","href":"/devops/kubernetes/reference/rbac","docId":"devops/kubernetes/reference/rbac","unlisted":false}],"href":"/devops/kubernetes/reference/"},{"type":"category","label":"Services, LoadBalancing and Networking","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Ingress","href":"/devops/kubernetes/services-loadbalancing-and-networking/ingress","docId":"devops/kubernetes/services-loadbalancing-and-networking/ingress","unlisted":false},{"type":"link","label":"Others","href":"/devops/kubernetes/services-loadbalancing-and-networking/others","docId":"devops/kubernetes/services-loadbalancing-and-networking/others","unlisted":false},{"type":"link","label":"Services","href":"/devops/kubernetes/services-loadbalancing-and-networking/services","docId":"devops/kubernetes/services-loadbalancing-and-networking/services","unlisted":false}],"href":"/devops/kubernetes/services-loadbalancing-and-networking/"},{"type":"link","label":"Storage","href":"/devops/kubernetes/storage","docId":"devops/kubernetes/storage","unlisted":false},{"type":"link","label":"Tasks","href":"/devops/kubernetes/tasks","docId":"devops/kubernetes/tasks","unlisted":false},{"type":"link","label":"Kubernetes Scaling Tools","href":"/devops/kubernetes/tools-scaling","docId":"devops/kubernetes/tools-scaling","unlisted":false},{"type":"link","label":"Serverless Tools","href":"/devops/kubernetes/tools-serverless","docId":"devops/kubernetes/tools-serverless","unlisted":false},{"type":"link","label":"Tools","href":"/devops/kubernetes/tools","docId":"devops/kubernetes/tools","unlisted":false},{"type":"link","label":"Troubleshooting","href":"/devops/kubernetes/troubleshooting","docId":"devops/kubernetes/troubleshooting","unlisted":false},{"type":"category","label":"Workloads","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Controllers","href":"/devops/kubernetes/workloads/controllers","docId":"devops/kubernetes/workloads/controllers","unlisted":false},{"type":"link","label":"Others","href":"/devops/kubernetes/workloads/others","docId":"devops/kubernetes/workloads/others","unlisted":false},{"type":"link","label":"Pod Lifecycle","href":"/devops/kubernetes/workloads/pod-lifecycle","docId":"devops/kubernetes/workloads/pod-lifecycle","unlisted":false},{"type":"link","label":"Pods","href":"/devops/kubernetes/workloads/pods","docId":"devops/kubernetes/workloads/pods","unlisted":false}],"href":"/devops/kubernetes/workloads/"}],"href":"/devops/kubernetes/"},{"type":"category","label":"Monitoring","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Grafana Loki","href":"/devops/monitoring/grafana-loki","docId":"devops/monitoring/grafana-loki","unlisted":false},{"type":"link","label":"Grafana","href":"/devops/monitoring/grafana","docId":"devops/monitoring/grafana","unlisted":false},{"type":"link","label":"Graphite","href":"/devops/monitoring/graphite","docId":"devops/monitoring/graphite","unlisted":false},{"type":"category","label":"Istio","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture","href":"/devops/monitoring/istio/architecture","docId":"devops/monitoring/istio/architecture","unlisted":false},{"type":"link","label":"Commands","href":"/devops/monitoring/istio/commands","docId":"devops/monitoring/istio/commands","unlisted":false},{"type":"link","label":"Examples","href":"/devops/monitoring/istio/examples","docId":"devops/monitoring/istio/examples","unlisted":false},{"type":"link","label":"Istio","href":"/devops/monitoring/istio/intro","docId":"devops/monitoring/istio/intro","unlisted":false},{"type":"link","label":"Observability","href":"/devops/monitoring/istio/observability","docId":"devops/monitoring/istio/observability","unlisted":false},{"type":"link","label":"Operations","href":"/devops/monitoring/istio/operations","docId":"devops/monitoring/istio/operations","unlisted":false},{"type":"link","label":"Others","href":"/devops/monitoring/istio/others","docId":"devops/monitoring/istio/others","unlisted":false},{"type":"link","label":"Security","href":"/devops/monitoring/istio/security","docId":"devops/monitoring/istio/security","unlisted":false},{"type":"link","label":"Tasks","href":"/devops/monitoring/istio/tasks","docId":"devops/monitoring/istio/tasks","unlisted":false},{"type":"link","label":"Traffic Management","href":"/devops/monitoring/istio/traffic-management","docId":"devops/monitoring/istio/traffic-management","unlisted":false}],"href":"/devops/monitoring/istio/"},{"type":"link","label":"Linkerd","href":"/devops/monitoring/linkerd","docId":"devops/monitoring/linkerd","unlisted":false},{"type":"link","label":"Metrics","href":"/devops/monitoring/metrics","docId":"devops/monitoring/metrics","unlisted":false},{"type":"link","label":"Open Tracing","href":"/devops/monitoring/open-tracing","docId":"devops/monitoring/open-tracing","unlisted":false},{"type":"link","label":"Others","href":"/devops/monitoring/others","docId":"devops/monitoring/others","unlisted":false},{"type":"category","label":"Prometheus","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Alert Manager","href":"/devops/monitoring/prometheus/alert-manager","docId":"devops/monitoring/prometheus/alert-manager","unlisted":false},{"type":"link","label":"Prometheus","href":"/devops/monitoring/prometheus/intro","docId":"devops/monitoring/prometheus/intro","unlisted":false},{"type":"link","label":"Prometheus Architecture","href":"/devops/monitoring/prometheus/prometheus-architecture","docId":"devops/monitoring/prometheus/prometheus-architecture","unlisted":false},{"type":"link","label":"Querying","href":"/devops/monitoring/prometheus/querying","docId":"devops/monitoring/prometheus/querying","unlisted":false},{"type":"link","label":"Rules","href":"/devops/monitoring/prometheus/rules","docId":"devops/monitoring/prometheus/rules","unlisted":false}],"href":"/devops/monitoring/prometheus/"},{"type":"link","label":"Service Mesh","href":"/devops/monitoring/service-mesh","docId":"devops/monitoring/service-mesh","unlisted":false},{"type":"category","label":"Telegraf","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands & Configs","href":"/devops/monitoring/telegraf/commands-and-configs","docId":"devops/monitoring/telegraf/commands-and-configs","unlisted":false}],"href":"/devops/monitoring/telegraf/"}],"href":"/devops/monitoring/"},{"type":"category","label":"Other DevOps","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Backstage","href":"/devops/others/backstage","docId":"devops/others/backstage","unlisted":false},{"type":"link","label":"CoreSync, Pacemaker","href":"/devops/others/coresync-pacemaker","docId":"devops/others/coresync-pacemaker","unlisted":false},{"type":"link","label":"DevTron","href":"/devops/others/devtron","docId":"devops/others/devtron","unlisted":false},{"type":"link","label":"Jenkins","href":"/devops/others/jenkins","docId":"devops/others/jenkins","unlisted":false},{"type":"link","label":"KeyCloak","href":"/devops/others/keycloak","docId":"devops/others/keycloak","unlisted":false},{"type":"link","label":"Kong","href":"/devops/others/kong","docId":"devops/others/kong","unlisted":false},{"type":"link","label":"Other - CICD","href":"/devops/others/other-cicd","docId":"devops/others/other-cicd","unlisted":false},{"type":"link","label":"Other Tools","href":"/devops/others/other-tools","docId":"devops/others/other-tools","unlisted":false}],"href":"/devops/others/"},{"type":"category","label":"Servers","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Apache Server","href":"/devops/servers/apache-server","docId":"devops/servers/apache-server","unlisted":false},{"type":"link","label":"Gunicorn","href":"/devops/servers/gunicorn","docId":"devops/servers/gunicorn","unlisted":false},{"type":"category","label":"NGINX","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Configs","href":"/devops/servers/nginx/configs","docId":"devops/servers/nginx/configs","unlisted":false}],"href":"/devops/servers/nginx/"}],"href":"/devops/servers/"},{"type":"category","label":"Terminal Bash","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"(1) Linux General / Unix / Linux Commands","href":"/devops/terminal-bash/1-linux-general-unix-linux-commands","docId":"devops/terminal-bash/1-linux-general-unix-linux-commands","unlisted":false},{"type":"link","label":"(2) System Calls","href":"/devops/terminal-bash/2-system-calls","docId":"devops/terminal-bash/2-system-calls","unlisted":false},{"type":"link","label":"(3) Library Functions","href":"/devops/terminal-bash/3-library-functions","docId":"devops/terminal-bash/3-library-functions","unlisted":false},{"type":"link","label":"(8) Linux System Administration","href":"/devops/terminal-bash/8-linux-system-administration","docId":"devops/terminal-bash/8-linux-system-administration","unlisted":false},{"type":"link","label":"Bash Metacharacters","href":"/devops/terminal-bash/bash-metacharacters","docId":"devops/terminal-bash/bash-metacharacters","unlisted":false},{"type":"link","label":"Bash Shortcuts","href":"/devops/terminal-bash/bash-shortcuts","docId":"devops/terminal-bash/bash-shortcuts","unlisted":false},{"type":"link","label":"Manual Pages","href":"/devops/terminal-bash/manual-pages","docId":"devops/terminal-bash/manual-pages","unlisted":false},{"type":"link","label":"Networking tools","href":"/devops/terminal-bash/networking-tools","docId":"devops/terminal-bash/networking-tools","unlisted":false},{"type":"link","label":"Others","href":"/devops/terminal-bash/others","docId":"devops/terminal-bash/others","unlisted":false},{"type":"link","label":"Shell/bash Script","href":"/devops/terminal-bash/shell-bash-script","docId":"devops/terminal-bash/shell-bash-script","unlisted":false},{"type":"link","label":"Shell - Intro","href":"/devops/terminal-bash/shell-intro","docId":"devops/terminal-bash/shell-intro","unlisted":false},{"type":"link","label":"sysctl","href":"/devops/terminal-bash/sysctl","docId":"devops/terminal-bash/sysctl","unlisted":false},{"type":"link","label":"Tmux Iterm","href":"/devops/terminal-bash/tmux-iterm","docId":"devops/terminal-bash/tmux-iterm","unlisted":false},{"type":"category","label":"tools","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"AWK","href":"/devops/terminal-bash/tools/awk","docId":"devops/terminal-bash/tools/awk","unlisted":false},{"type":"link","label":"Crontab","href":"/devops/terminal-bash/tools/crontab","docId":"devops/terminal-bash/tools/crontab","unlisted":false},{"type":"link","label":"Curl","href":"/devops/terminal-bash/tools/curl","docId":"devops/terminal-bash/tools/curl","unlisted":false},{"type":"link","label":"Editors","href":"/devops/terminal-bash/tools/editors","docId":"devops/terminal-bash/tools/editors","unlisted":false},{"type":"link","label":"Mosh","href":"/devops/terminal-bash/tools/mosh","docId":"devops/terminal-bash/tools/mosh","unlisted":false},{"type":"link","label":"rsync / rclone","href":"/devops/terminal-bash/tools/rsync-rclone","docId":"devops/terminal-bash/tools/rsync-rclone","unlisted":false}]}],"href":"/devops/terminal-bash/"},{"type":"category","label":"Terraform","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/devops/terraform/commands","docId":"devops/terraform/commands","unlisted":false},{"type":"link","label":"Documentation","href":"/devops/terraform/documentation","docId":"devops/terraform/documentation","unlisted":false},{"type":"link","label":"Examples","href":"/devops/terraform/examples","docId":"devops/terraform/examples","unlisted":false},{"type":"link","label":"Variables","href":"/devops/terraform/variables","docId":"devops/terraform/variables","unlisted":false}],"href":"/devops/terraform/"}],"href":"/devops/"},{"type":"category","label":"Economics","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Accounting for Finance","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"0 Accounting for Finance","href":"/economics/accounting-for-finance/0-accounting-for-finance","docId":"economics/accounting-for-finance/0-accounting-for-finance","unlisted":false},{"type":"link","label":"1 Accounting First Steps","href":"/economics/accounting-for-finance/1-accounting-first-steps","docId":"economics/accounting-for-finance/1-accounting-first-steps","unlisted":false},{"type":"link","label":"2 Income Statements & Profitability Measures","href":"/economics/accounting-for-finance/2-income-statements-and-profitability-measures","docId":"economics/accounting-for-finance/2-income-statements-and-profitability-measures","unlisted":false},{"type":"link","label":"2A Income Statement Comparisons","href":"/economics/accounting-for-finance/2a-income-statement-comparisons","docId":"economics/accounting-for-finance/2a-income-statement-comparisons","unlisted":false},{"type":"link","label":"3 Balance Sheets","href":"/economics/accounting-for-finance/3-balance-sheets","docId":"economics/accounting-for-finance/3-balance-sheets","unlisted":false},{"type":"link","label":"3A: Balance Sheet Comparisons","href":"/economics/accounting-for-finance/3a-balance-sheet-comparisons","docId":"economics/accounting-for-finance/3a-balance-sheet-comparisons","unlisted":false},{"type":"link","label":"4: Cash Flow Statements - Cash In and Cash Out","href":"/economics/accounting-for-finance/4-cash-flow-statements-cash-in-and-cash-out","docId":"economics/accounting-for-finance/4-cash-flow-statements-cash-in-and-cash-out","unlisted":false},{"type":"link","label":"4A: Cash Flow Statement Comparisons","href":"/economics/accounting-for-finance/4a-cash-flow-statement-comparisons","docId":"economics/accounting-for-finance/4a-cash-flow-statement-comparisons","unlisted":false},{"type":"link","label":"5: Cleaning Up Accounting","href":"/economics/accounting-for-finance/5-cleaning-up-accounting","docId":"economics/accounting-for-finance/5-cleaning-up-accounting","unlisted":false},{"type":"link","label":"5A: Accounting Inconsistency Examples","href":"/economics/accounting-for-finance/5a-accounting-inconsistency-examples","docId":"economics/accounting-for-finance/5a-accounting-inconsistency-examples","unlisted":false},{"type":"link","label":"6: Accouting Financial Ratios - Profitability Measures","href":"/economics/accounting-for-finance/6-accouting-financial-ratios-profitability-measures","docId":"economics/accounting-for-finance/6-accouting-financial-ratios-profitability-measures","unlisted":false},{"type":"link","label":"6A: Ratio Analysis","href":"/economics/accounting-for-finance/6a-ratio-analysis","docId":"economics/accounting-for-finance/6a-ratio-analysis","unlisted":false}],"href":"/economics/accounting-for-finance/"},{"type":"link","label":"Buy Now Pay Later (BNPL)","href":"/economics/buy-now-pay-later-bnpl","docId":"economics/buy-now-pay-later-bnpl","unlisted":false},{"type":"category","label":"Corporate Finance","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Capital budgeting","href":"/economics/corporate-finance/capital-budgeting","docId":"economics/corporate-finance/capital-budgeting","unlisted":false},{"type":"link","label":"Corporate Actions","href":"/economics/corporate-finance/corporate-actions","docId":"economics/corporate-finance/corporate-actions","unlisted":false}],"href":"/economics/corporate-finance/"},{"type":"link","label":"Course - Investing Zerodha Varsity","href":"/economics/course-investing-zerodha-varsity","docId":"economics/course-investing-zerodha-varsity","unlisted":false},{"type":"category","label":"Finance / Investing","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Asset Classes","href":"/economics/finance-investing/asset-classes","docId":"economics/finance-investing/asset-classes","unlisted":false},{"type":"link","label":"Checklist / Tips","href":"/economics/finance-investing/checklist-tips","docId":"economics/finance-investing/checklist-tips","unlisted":false},{"type":"link","label":"Company Analysis","href":"/economics/finance-investing/company-analysis","docId":"economics/finance-investing/company-analysis","unlisted":false},{"type":"link","label":"Company\'s Management","href":"/economics/finance-investing/company-management","docId":"economics/finance-investing/company-management","unlisted":false},{"type":"link","label":"Financial Independence, Retire Early (FIRE)","href":"/economics/finance-investing/financial-independence-fire","docId":"economics/finance-investing/financial-independence-fire","unlisted":false},{"type":"link","label":"HUF / Private Trust","href":"/economics/finance-investing/huf-private-trust","docId":"economics/finance-investing/huf-private-trust","unlisted":false},{"type":"link","label":"Indian Company Types","href":"/economics/finance-investing/indian-company-types","docId":"economics/finance-investing/indian-company-types","unlisted":false},{"type":"link","label":"Industry Sectors","href":"/economics/finance-investing/industry-sectors","docId":"economics/finance-investing/industry-sectors","unlisted":false},{"type":"link","label":"Personal Finance","href":"/economics/finance-investing/personal-finance","docId":"economics/finance-investing/personal-finance","unlisted":false},{"type":"link","label":"Portfolio Management Services (PMS)","href":"/economics/finance-investing/portfolio-management-services-pms","docId":"economics/finance-investing/portfolio-management-services-pms","unlisted":false},{"type":"link","label":"Portfolios","href":"/economics/finance-investing/portfolios","docId":"economics/finance-investing/portfolios","unlisted":false},{"type":"link","label":"Quotes","href":"/economics/finance-investing/quotes","docId":"economics/finance-investing/quotes","unlisted":false},{"type":"link","label":"Returns / Tax / Taxes / ITR","href":"/economics/finance-investing/returns-tax-taxes-itr","docId":"economics/finance-investing/returns-tax-taxes-itr","unlisted":false},{"type":"link","label":"Stocks / Equity","href":"/economics/finance-investing/stocks-equity","docId":"economics/finance-investing/stocks-equity","unlisted":false}],"href":"/economics/finance-investing/"},{"type":"link","label":"Finance Terms","href":"/economics/finance-terms","docId":"economics/finance-terms","unlisted":false},{"type":"link","label":"Facts","href":"/economics/financial-facts","docId":"economics/financial-facts","unlisted":false},{"type":"link","label":"Fintech / NBFC / Banking Terms","href":"/economics/fintech-nbfc-banking-terms","docId":"economics/fintech-nbfc-banking-terms","unlisted":false},{"type":"link","label":"Government Terms","href":"/economics/government-terms","docId":"economics/government-terms","unlisted":false},{"type":"link","label":"Gross Domestic Product (GDP)","href":"/economics/gross-domestic-product-gdp","docId":"economics/gross-domestic-product-gdp","unlisted":false},{"type":"link","label":"Inflation Indexes","href":"/economics/inflation-indexes","docId":"economics/inflation-indexes","unlisted":false},{"type":"link","label":"Insurance","href":"/economics/insurance","docId":"economics/insurance","unlisted":false},{"type":"link","label":"Intro","href":"/economics/intro","docId":"economics/intro","unlisted":false},{"type":"link","label":"Investment Banking","href":"/economics/investment-banking","docId":"economics/investment-banking","unlisted":false},{"type":"link","label":"Investment Terms","href":"/economics/investment-terms","docId":"economics/investment-terms","unlisted":false},{"type":"link","label":"Learning","href":"/economics/learning","docId":"economics/learning","unlisted":false},{"type":"category","label":"Market Terms","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Fundamental Analysis","href":"/economics/market-terms/fundamental-analysis","docId":"economics/market-terms/fundamental-analysis","unlisted":false},{"type":"link","label":"Futures / Options / Trading","href":"/economics/market-terms/futures-options-trading","docId":"economics/market-terms/futures-options-trading","unlisted":false},{"type":"link","label":"IPO","href":"/economics/market-terms/ipo","docId":"economics/market-terms/ipo","unlisted":false},{"type":"link","label":"Others","href":"/economics/market-terms/others","docId":"economics/market-terms/others","unlisted":false},{"type":"link","label":"Swing Trading","href":"/economics/market-terms/swing-trading","docId":"economics/market-terms/swing-trading","unlisted":false},{"type":"link","label":"Technical Analysis","href":"/economics/market-terms/technical-analysis","docId":"economics/market-terms/technical-analysis","unlisted":false},{"type":"link","label":"Technical Indicators","href":"/economics/market-terms/technical-indicators","docId":"economics/market-terms/technical-indicators","unlisted":false},{"type":"link","label":"Valuation Metrics","href":"/economics/market-terms/valuation-metrics","docId":"economics/market-terms/valuation-metrics","unlisted":false},{"type":"link","label":"Wyckoff Method","href":"/economics/market-terms/wyckoff-method","docId":"economics/market-terms/wyckoff-method","unlisted":false}],"href":"/economics/market-terms/"},{"type":"category","label":"mental-models","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Economics Mental Models","href":"/economics/mental-models/economics-mental-models","docId":"economics/mental-models/economics-mental-models","unlisted":false},{"type":"link","label":"Inequality","href":"/economics/mental-models/inequality","docId":"economics/mental-models/inequality","unlisted":false},{"type":"link","label":"Macroeconomics","href":"/economics/mental-models/macroeconomics","docId":"economics/mental-models/macroeconomics","unlisted":false},{"type":"link","label":"Marginal Utility / Analysis","href":"/economics/mental-models/marginal-utility-analysis","docId":"economics/mental-models/marginal-utility-analysis","unlisted":false},{"type":"link","label":"Microeconomics","href":"/economics/mental-models/microeconomics","docId":"economics/mental-models/microeconomics","unlisted":false},{"type":"link","label":"Rankings","href":"/economics/mental-models/rankings","docId":"economics/mental-models/rankings","unlisted":false},{"type":"link","label":"Recession shapes (Recovery types)","href":"/economics/mental-models/recession-shapes-recovery","docId":"economics/mental-models/recession-shapes-recovery","unlisted":false}]},{"type":"link","label":"Monetary Policy","href":"/economics/monetary-policies","docId":"economics/monetary-policies","unlisted":false},{"type":"category","label":"Mutual Funds","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Debentures / Bonds","href":"/economics/mutual-funds/debentures-bonds","docId":"economics/mutual-funds/debentures-bonds","unlisted":false},{"type":"link","label":"Debt Mutual Funds Analysis","href":"/economics/mutual-funds/debt-mutual-funds-analysis","docId":"economics/mutual-funds/debt-mutual-funds-analysis","unlisted":false},{"type":"link","label":"Debt Mutual Funds Risks","href":"/economics/mutual-funds/debt-mutual-funds-risks","docId":"economics/mutual-funds/debt-mutual-funds-risks","unlisted":false},{"type":"link","label":"Debt Mutual Funds","href":"/economics/mutual-funds/debt-mutual-funds","docId":"economics/mutual-funds/debt-mutual-funds","unlisted":false},{"type":"link","label":"Equity Mutual Funds","href":"/economics/mutual-funds/equity-mutual-funds","docId":"economics/mutual-funds/equity-mutual-funds","unlisted":false},{"type":"link","label":"Fixed income","href":"/economics/mutual-funds/fixed-income","docId":"economics/mutual-funds/fixed-income","unlisted":false},{"type":"link","label":"Index Investing / ETF","href":"/economics/mutual-funds/index-investing-etf","docId":"economics/mutual-funds/index-investing-etf","unlisted":false},{"type":"link","label":"Mutual Funds Indicators","href":"/economics/mutual-funds/mutual-funds-indicators","docId":"economics/mutual-funds/mutual-funds-indicators","unlisted":false},{"type":"link","label":"Nifty Indexes / Indices","href":"/economics/mutual-funds/nifty-indexes-indices","docId":"economics/mutual-funds/nifty-indexes-indices","unlisted":false},{"type":"link","label":"Others","href":"/economics/mutual-funds/others","docId":"economics/mutual-funds/others","unlisted":false}],"href":"/economics/mutual-funds/"},{"type":"link","label":"Schools of Economic Thought","href":"/economics/schools-of-economic-thought","docId":"economics/schools-of-economic-thought","unlisted":false}],"href":"/economics/"},{"type":"category","label":"Frontend","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Frontend","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Design System","href":"/frontend/frontend-intro/design-system","docId":"frontend/frontend-intro/design-system","unlisted":false},{"type":"link","label":"Frontend Architecture","href":"/frontend/frontend-intro/frontend-architecture","docId":"frontend/frontend-intro/frontend-architecture","unlisted":false},{"type":"link","label":"Gestalt Principles","href":"/frontend/frontend-intro/gestalt-principles","docId":"frontend/frontend-intro/gestalt-principles","unlisted":false},{"type":"link","label":"Google Crawlers / Crawling","href":"/frontend/frontend-intro/google-crawlers-crawling","docId":"frontend/frontend-intro/google-crawlers-crawling","unlisted":false},{"type":"link","label":"Intro","href":"/frontend/frontend-intro/intro","docId":"frontend/frontend-intro/intro","unlisted":false},{"type":"link","label":"JAMstack / CMS","href":"/frontend/frontend-intro/jamstack-cms","docId":"frontend/frontend-intro/jamstack-cms","unlisted":false},{"type":"link","label":"Microfrontend Architecture","href":"/frontend/frontend-intro/microfrontend-architecture","docId":"frontend/frontend-intro/microfrontend-architecture","unlisted":false},{"type":"link","label":"Others","href":"/frontend/frontend-intro/others","docId":"frontend/frontend-intro/others","unlisted":false},{"type":"link","label":"Performance","href":"/frontend/frontend-intro/performance","docId":"frontend/frontend-intro/performance","unlisted":false},{"type":"link","label":"PWA: Progressive Web Apps","href":"/frontend/frontend-intro/pwa","docId":"frontend/frontend-intro/pwa","unlisted":false},{"type":"link","label":"SEO / ASO","href":"/frontend/frontend-intro/seo-aso","docId":"frontend/frontend-intro/seo-aso","unlisted":false},{"type":"link","label":"UI / UX / IxD / Design / Frontend","href":"/frontend/frontend-intro/ui-ux-ixd-design-frontend","docId":"frontend/frontend-intro/ui-ux-ixd-design-frontend","unlisted":false},{"type":"link","label":"Web Vitals","href":"/frontend/frontend-intro/web-vitals","docId":"frontend/frontend-intro/web-vitals","unlisted":false},{"type":"link","label":"Wordpress","href":"/frontend/frontend-intro/wordpress","docId":"frontend/frontend-intro/wordpress","unlisted":false}],"href":"/frontend/frontend-intro/"},{"type":"category","label":"HTML-CSS","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Component Libraries","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Components","href":"/frontend/html-css/component-libraries/components","docId":"frontend/html-css/component-libraries/components","unlisted":false},{"type":"link","label":"Others","href":"/frontend/html-css/component-libraries/others","docId":"frontend/html-css/component-libraries/others","unlisted":false}],"href":"/frontend/html-css/component-libraries/"},{"type":"category","label":"CSS Intro","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Centering","href":"/frontend/html-css/css-intro/centering","docId":"frontend/html-css/css-intro/centering","unlisted":false},{"type":"link","label":"CSS Positions","href":"/frontend/html-css/css-intro/css-positions","docId":"frontend/html-css/css-intro/css-positions","unlisted":false},{"type":"link","label":"CSS Transitions","href":"/frontend/html-css/css-intro/css-transitions","docId":"frontend/html-css/css-intro/css-transitions","unlisted":false},{"type":"link","label":"Mastering CSS","href":"/frontend/html-css/css-intro/mastering-css","docId":"frontend/html-css/css-intro/mastering-css","unlisted":false},{"type":"link","label":"Others","href":"/frontend/html-css/css-intro/others","docId":"frontend/html-css/css-intro/others","unlisted":false}],"href":"/frontend/html-css/css-intro/"},{"type":"category","label":"HTML Intro","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"HTML Entities / Attributes","href":"/frontend/html-css/html-intro/html-entities-attributes","docId":"frontend/html-css/html-intro/html-entities-attributes","unlisted":false},{"type":"link","label":"Tags","href":"/frontend/html-css/html-intro/tags","docId":"frontend/html-css/html-intro/tags","unlisted":false}],"href":"/frontend/html-css/html-intro/"}],"href":"/frontend/html-css/"},{"type":"category","label":"Javascript","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Basic","href":"/frontend/js-javascript/basic","docId":"frontend/js-javascript/basic","unlisted":false},{"type":"link","label":"Intro","href":"/frontend/js-javascript/intro","docId":"frontend/js-javascript/intro","unlisted":false},{"type":"link","label":"Libraries","href":"/frontend/js-javascript/libraries","docId":"frontend/js-javascript/libraries","unlisted":false},{"type":"link","label":"Others","href":"/frontend/js-javascript/others","docId":"frontend/js-javascript/others","unlisted":false},{"type":"link","label":"Promises","href":"/frontend/js-javascript/promises","docId":"frontend/js-javascript/promises","unlisted":false},{"type":"link","label":"Questions","href":"/frontend/js-javascript/questions","docId":"frontend/js-javascript/questions","unlisted":false},{"type":"link","label":"TypeScript","href":"/frontend/js-javascript/typescript","docId":"frontend/js-javascript/typescript","unlisted":false},{"type":"link","label":"Web API","href":"/frontend/js-javascript/web-api","docId":"frontend/js-javascript/web-api","unlisted":false}],"href":"/frontend/js-javascript/"},{"type":"category","label":"Others","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"AngularJS","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"1. Intro","href":"/frontend/others/angularjs/01-intro","docId":"frontend/others/angularjs/01-intro","unlisted":false},{"type":"link","label":"3. Modules","href":"/frontend/others/angularjs/03-modules","docId":"frontend/others/angularjs/03-modules","unlisted":false},{"type":"link","label":"6. Components","href":"/frontend/others/angularjs/06-components","docId":"frontend/others/angularjs/06-components","unlisted":false},{"type":"link","label":"8. Metadata","href":"/frontend/others/angularjs/08-metadata","docId":"frontend/others/angularjs/08-metadata","unlisted":false},{"type":"link","label":"9. Data Binding","href":"/frontend/others/angularjs/09-data-binding","docId":"frontend/others/angularjs/09-data-binding","unlisted":false},{"type":"link","label":"10. Directives","href":"/frontend/others/angularjs/10-directives","docId":"frontend/others/angularjs/10-directives","unlisted":false},{"type":"link","label":"11. Services","href":"/frontend/others/angularjs/11-services","docId":"frontend/others/angularjs/11-services","unlisted":false},{"type":"link","label":"12. Dependency Injection","href":"/frontend/others/angularjs/12-dependency-injection","docId":"frontend/others/angularjs/12-dependency-injection","unlisted":false},{"type":"link","label":"AngularJS","href":"/frontend/others/angularjs/intro","docId":"frontend/others/angularjs/intro","unlisted":false},{"type":"link","label":"Tour of Heroes","href":"/frontend/others/angularjs/tour-of-heroes","docId":"frontend/others/angularjs/tour-of-heroes","unlisted":false}],"href":"/frontend/others/angularjs/"},{"type":"link","label":"Docusaurus","href":"/frontend/others/docusaurus","docId":"frontend/others/docusaurus","unlisted":false},{"type":"link","label":"Frontend Frameworks","href":"/frontend/others/frontend-frameworks","docId":"frontend/others/frontend-frameworks","unlisted":false},{"type":"link","label":"Gatsby","href":"/frontend/others/gatsby","docId":"frontend/others/gatsby","unlisted":false},{"type":"link","label":"JQuery","href":"/frontend/others/jquery","docId":"frontend/others/jquery","unlisted":false},{"type":"category","label":"NestJs","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Documentation","href":"/frontend/others/nestjs/documentation","docId":"frontend/others/nestjs/documentation","unlisted":false}],"href":"/frontend/others/nestjs/"},{"type":"category","label":"NextJS","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Data Fetching","href":"/frontend/others/nextjs/data-fetching","docId":"frontend/others/nextjs/data-fetching","unlisted":false},{"type":"link","label":"Others","href":"/frontend/others/nextjs/others","docId":"frontend/others/nextjs/others","unlisted":false}],"href":"/frontend/others/nextjs/"},{"type":"category","label":"Nodejs","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Libraries","href":"/frontend/others/nodejs/libraries","docId":"frontend/others/nodejs/libraries","unlisted":false},{"type":"link","label":"Nodejs Frameworks","href":"/frontend/others/nodejs/nodejs-frameworks","docId":"frontend/others/nodejs/nodejs-frameworks","unlisted":false},{"type":"link","label":"npm commands","href":"/frontend/others/nodejs/npm-commands","docId":"frontend/others/nodejs/npm-commands","unlisted":false}],"href":"/frontend/others/nodejs/"},{"type":"link","label":"Static Site Generators","href":"/frontend/others/static-site-generators","docId":"frontend/others/static-site-generators","unlisted":false}],"href":"/frontend/others/"},{"type":"category","label":"React","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Code / Commands / Snippets","href":"/frontend/react/code-commands-snippets","docId":"frontend/react/code-commands-snippets","unlisted":false},{"type":"link","label":"Components","href":"/frontend/react/components","docId":"frontend/react/components","unlisted":false},{"type":"link","label":"Course","href":"/frontend/react/course","docId":"frontend/react/course","unlisted":false},{"type":"link","label":"Docs","href":"/frontend/react/docs","docId":"frontend/react/docs","unlisted":false},{"type":"link","label":"Events","href":"/frontend/react/events","docId":"frontend/react/events","unlisted":false},{"type":"link","label":"Hooks","href":"/frontend/react/hooks","docId":"frontend/react/hooks","unlisted":false},{"type":"link","label":"Intro","href":"/frontend/react/intro","docId":"frontend/react/intro","unlisted":false},{"type":"link","label":"JSX","href":"/frontend/react/jsx","docId":"frontend/react/jsx","unlisted":false},{"type":"link","label":"Libraries","href":"/frontend/react/libraries","docId":"frontend/react/libraries","unlisted":false},{"type":"link","label":"Mordern React with Redux","href":"/frontend/react/mordern-react-with-redux","docId":"frontend/react/mordern-react-with-redux","unlisted":false},{"type":"link","label":"React admin / Templates","href":"/frontend/react/react-admin-templates","docId":"frontend/react/react-admin-templates","unlisted":false},{"type":"link","label":"React DOM","href":"/frontend/react/react-dom","docId":"frontend/react/react-dom","unlisted":false},{"type":"link","label":"React Native","href":"/frontend/react/react-native","docId":"frontend/react/react-native","unlisted":false},{"type":"link","label":"React Router","href":"/frontend/react/react-router","docId":"frontend/react/react-router","unlisted":false},{"type":"link","label":"Redux","href":"/frontend/react/redux","docId":"frontend/react/redux","unlisted":false},{"type":"link","label":"State","href":"/frontend/react/state","docId":"frontend/react/state","unlisted":false},{"type":"link","label":"Tools","href":"/frontend/react/tools","docId":"frontend/react/tools","unlisted":false}],"href":"/frontend/react/"}],"href":"/frontend/"},{"type":"category","label":"Knowledge","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Applied Sciences","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Chemical Engineering","href":"/knowledge/applied-sciences/chemical-engineering","docId":"knowledge/applied-sciences/chemical-engineering","unlisted":false},{"type":"link","label":"Civil Engineering","href":"/knowledge/applied-sciences/civil-engineering","docId":"knowledge/applied-sciences/civil-engineering","unlisted":false},{"type":"link","label":"Control Engineering","href":"/knowledge/applied-sciences/control-engineering","docId":"knowledge/applied-sciences/control-engineering","unlisted":false},{"type":"link","label":"Crash Course Engineering","href":"/knowledge/applied-sciences/crash-course-engineering","docId":"knowledge/applied-sciences/crash-course-engineering","unlisted":false},{"type":"link","label":"Electrical Engineering","href":"/knowledge/applied-sciences/electrical-engineering","docId":"knowledge/applied-sciences/electrical-engineering","unlisted":false},{"type":"link","label":"Embedded Systems / Electronics","href":"/knowledge/applied-sciences/embedded-systems-electronics","docId":"knowledge/applied-sciences/embedded-systems-electronics","unlisted":false},{"type":"link","label":"HVAC Systems","href":"/knowledge/applied-sciences/hvac-systems","docId":"knowledge/applied-sciences/hvac-systems","unlisted":false},{"type":"link","label":"Mechanical Engineering","href":"/knowledge/applied-sciences/mechanical-engineering","docId":"knowledge/applied-sciences/mechanical-engineering","unlisted":false},{"type":"link","label":"Others / Power / Energy","href":"/knowledge/applied-sciences/others-power-energy","docId":"knowledge/applied-sciences/others-power-energy","unlisted":false}],"href":"/knowledge/applied-sciences/"},{"type":"category","label":"Biology","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Alternative Medicine","href":"/knowledge/biology/alternative-medicine","docId":"knowledge/biology/alternative-medicine","unlisted":false},{"type":"link","label":"Digestive System","href":"/knowledge/biology/digestive-system","docId":"knowledge/biology/digestive-system","unlisted":false},{"type":"link","label":"Diseases / Tests","href":"/knowledge/biology/diseases-tests","docId":"knowledge/biology/diseases-tests","unlisted":false},{"type":"category","label":"Exercise / Stretching","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"GYM Nutrition","href":"/knowledge/biology/exercise-stretching/gym-nutrition","docId":"knowledge/biology/exercise-stretching/gym-nutrition","unlisted":false},{"type":"link","label":"Gym Routine","href":"/knowledge/biology/exercise-stretching/gym-routine","docId":"knowledge/biology/exercise-stretching/gym-routine","unlisted":false},{"type":"link","label":"Gym","href":"/knowledge/biology/exercise-stretching/gym","docId":"knowledge/biology/exercise-stretching/gym","unlisted":false},{"type":"link","label":"Home Exercise Routine","href":"/knowledge/biology/exercise-stretching/home-exercise-routine","docId":"knowledge/biology/exercise-stretching/home-exercise-routine","unlisted":false},{"type":"link","label":"Home + Gym","href":"/knowledge/biology/exercise-stretching/home-gym","docId":"knowledge/biology/exercise-stretching/home-gym","unlisted":false},{"type":"link","label":"Exercise / Stretching","href":"/knowledge/biology/exercise-stretching/intro","docId":"knowledge/biology/exercise-stretching/intro","unlisted":false}],"href":"/knowledge/biology/exercise-stretching/"},{"type":"link","label":"Genetics","href":"/knowledge/biology/genetics","docId":"knowledge/biology/genetics","unlisted":false},{"type":"link","label":"Human Skeleton","href":"/knowledge/biology/human-skeleton","docId":"knowledge/biology/human-skeleton","unlisted":false},{"type":"link","label":"Biology","href":"/knowledge/biology/intro","docId":"knowledge/biology/intro","unlisted":false},{"type":"link","label":"MBBS / Medicine / Medical / Health","href":"/knowledge/biology/mbbs-medicine-medical-health","docId":"knowledge/biology/mbbs-medicine-medical-health","unlisted":false},{"type":"link","label":"Muscles","href":"/knowledge/biology/muscles","docId":"knowledge/biology/muscles","unlisted":false},{"type":"link","label":"Nerves System","href":"/knowledge/biology/nerves-system","docId":"knowledge/biology/nerves-system","unlisted":false},{"type":"category","label":"Nutrition","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Chart","href":"/knowledge/biology/nutrition/chart","docId":"knowledge/biology/nutrition/chart","unlisted":false},{"type":"link","label":"Daily Requirements","href":"/knowledge/biology/nutrition/daily-requirements","docId":"knowledge/biology/nutrition/daily-requirements","unlisted":false},{"type":"link","label":"Diet","href":"/knowledge/biology/nutrition/diet","docId":"knowledge/biology/nutrition/diet","unlisted":false},{"type":"link","label":"Ecology","href":"/knowledge/biology/nutrition/ecology","docId":"knowledge/biology/nutrition/ecology","unlisted":false},{"type":"link","label":"Essentiality","href":"/knowledge/biology/nutrition/essentiality","docId":"knowledge/biology/nutrition/essentiality","unlisted":false},{"type":"link","label":"Fatigue","href":"/knowledge/biology/nutrition/fatigue","docId":"knowledge/biology/nutrition/fatigue","unlisted":false},{"type":"link","label":"Food","href":"/knowledge/biology/nutrition/food","docId":"knowledge/biology/nutrition/food","unlisted":false},{"type":"link","label":"Honey","href":"/knowledge/biology/nutrition/honey","docId":"knowledge/biology/nutrition/honey","unlisted":false},{"type":"link","label":"Nutrition","href":"/knowledge/biology/nutrition/intro","docId":"knowledge/biology/nutrition/intro","unlisted":false},{"type":"link","label":"Plants / Gardening","href":"/knowledge/biology/nutrition/plants-gardening","docId":"knowledge/biology/nutrition/plants-gardening","unlisted":false},{"type":"link","label":"Pulses / Daal / Lentils","href":"/knowledge/biology/nutrition/pulses-daal-lentils","docId":"knowledge/biology/nutrition/pulses-daal-lentils","unlisted":false},{"type":"link","label":"Recipe","href":"/knowledge/biology/nutrition/recipe","docId":"knowledge/biology/nutrition/recipe","unlisted":false}],"href":"/knowledge/biology/nutrition/"},{"type":"link","label":"Omics","href":"/knowledge/biology/omics","docId":"knowledge/biology/omics","unlisted":false},{"type":"link","label":"Organ Systems","href":"/knowledge/biology/organ-systems","docId":"knowledge/biology/organ-systems","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/biology/others","docId":"knowledge/biology/others","unlisted":false},{"type":"link","label":"Pregnancy / Baby","href":"/knowledge/biology/pregnancy-baby","docId":"knowledge/biology/pregnancy-baby","unlisted":false}],"href":"/knowledge/biology/"},{"type":"category","label":"Games","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Chess","href":"/knowledge/games/chess","docId":"knowledge/games/chess","unlisted":false},{"type":"link","label":"Couple Activities","href":"/knowledge/games/couple-activities","docId":"knowledge/games/couple-activities","unlisted":false},{"type":"link","label":"Family Games / Gifts","href":"/knowledge/games/family-games-gifts","docId":"knowledge/games/family-games-gifts","unlisted":false},{"type":"link","label":"Marathon / Running","href":"/knowledge/games/marathon-running","docId":"knowledge/games/marathon-running","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/games/others","docId":"knowledge/games/others","unlisted":false},{"type":"link","label":"Rubix Rubics Cube","href":"/knowledge/games/rubix-rubics-cube","docId":"knowledge/games/rubix-rubics-cube","unlisted":false},{"type":"link","label":"Skiing / Sking","href":"/knowledge/games/skiing-sking","docId":"knowledge/games/skiing-sking","unlisted":false},{"type":"link","label":"Sudoku Techniques","href":"/knowledge/games/sudoku-techniques","docId":"knowledge/games/sudoku-techniques","unlisted":false},{"type":"link","label":"Swimming","href":"/knowledge/games/swimming","docId":"knowledge/games/swimming","unlisted":false},{"type":"link","label":"Touch Typing","href":"/knowledge/games/touch-typing","docId":"knowledge/games/touch-typing","unlisted":false}],"href":"/knowledge/games/"},{"type":"category","label":"General","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Important Dates / Timelines","href":"/knowledge/general/important-dates-timelines","docId":"knowledge/general/important-dates-timelines","unlisted":false},{"type":"link","label":"Intro","href":"/knowledge/general/intro","docId":"knowledge/general/intro","unlisted":false},{"type":"link","label":"Knowledge of Humanity","href":"/knowledge/general/knowledge-of-humanity","docId":"knowledge/general/knowledge-of-humanity","unlisted":false},{"type":"link","label":"Mental Models","href":"/knowledge/general/mental-models","docId":"knowledge/general/mental-models","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/general/others","docId":"knowledge/general/others","unlisted":false},{"type":"link","label":"Outline of Knowledge","href":"/knowledge/general/outline-of-knowledge","docId":"knowledge/general/outline-of-knowledge","unlisted":false},{"type":"link","label":"Science","href":"/knowledge/general/science","docId":"knowledge/general/science","unlisted":false}],"href":"/knowledge/general/"},{"type":"category","label":"Geography","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Continents","href":"/knowledge/geography/continents","docId":"knowledge/geography/continents","unlisted":false},{"type":"link","label":"Countries","href":"/knowledge/geography/countries","docId":"knowledge/geography/countries","unlisted":false},{"type":"link","label":"Home / House Building","href":"/knowledge/geography/home-house-building","docId":"knowledge/geography/home-house-building","unlisted":false},{"type":"link","label":"India","href":"/knowledge/geography/india","docId":"knowledge/geography/india","unlisted":false},{"type":"link","label":"Indian States and UTs","href":"/knowledge/geography/indian-states-and-uts","docId":"knowledge/geography/indian-states-and-uts","unlisted":false},{"type":"link","label":"Living","href":"/knowledge/geography/living","docId":"knowledge/geography/living","unlisted":false},{"type":"link","label":"New Home / Place Buying / House","href":"/knowledge/geography/new-home-place-house","docId":"knowledge/geography/new-home-place-house","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/geography/others","docId":"knowledge/geography/others","unlisted":false},{"type":"link","label":"Rivers","href":"/knowledge/geography/rivers","docId":"knowledge/geography/rivers","unlisted":false},{"type":"link","label":"Wildlife","href":"/knowledge/geography/wildlife","docId":"knowledge/geography/wildlife","unlisted":false}],"href":"/knowledge/geography/"},{"type":"category","label":"History","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Crash Course History of Science","href":"/knowledge/history/crash-course-history-of-science","docId":"knowledge/history/crash-course-history-of-science","unlisted":false},{"type":"link","label":"Crash Course World History","href":"/knowledge/history/crash-course-world-history","docId":"knowledge/history/crash-course-world-history","unlisted":false},{"type":"link","label":"Histomap","href":"/knowledge/history/histomap","docId":"knowledge/history/histomap","unlisted":false},{"type":"link","label":"Human History / Anthropology","href":"/knowledge/history/human-history-anthropology","docId":"knowledge/history/human-history-anthropology","unlisted":false},{"type":"link","label":"Indian History Timeline","href":"/knowledge/history/indian-history-timeline","docId":"knowledge/history/indian-history-timeline","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/history/others","docId":"knowledge/history/others","unlisted":false},{"type":"link","label":"Religion","href":"/knowledge/history/religion","docId":"knowledge/history/religion","unlisted":false}],"href":"/knowledge/history/"},{"type":"category","label":"Language","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Figures of Speech","href":"/knowledge/language/figures-of-speech","docId":"knowledge/language/figures-of-speech","unlisted":false},{"type":"link","label":"General","href":"/knowledge/language/general","docId":"knowledge/language/general","unlisted":false},{"type":"link","label":"Grammer / Vocabulary","href":"/knowledge/language/grammer-vocabulary","docId":"knowledge/language/grammer-vocabulary","unlisted":false},{"type":"link","label":"Languages Others","href":"/knowledge/language/languages-others","docId":"knowledge/language/languages-others","unlisted":false},{"type":"link","label":"Linguistics","href":"/knowledge/language/linguistics","docId":"knowledge/language/linguistics","unlisted":false},{"type":"link","label":"Mistakes","href":"/knowledge/language/mistakes","docId":"knowledge/language/mistakes","unlisted":false},{"type":"link","label":"Parts of Speech","href":"/knowledge/language/parts-of-speech","docId":"knowledge/language/parts-of-speech","unlisted":false},{"type":"link","label":"Spanish","href":"/knowledge/language/spanish","docId":"knowledge/language/spanish","unlisted":false}],"href":"/knowledge/language/"},{"type":"category","label":"Law","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"constitution-of-india","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Constitution of India","href":"/knowledge/law/constitution-of-india/constitution","docId":"knowledge/law/constitution-of-india/constitution","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/law/constitution-of-india/others","docId":"knowledge/law/constitution-of-india/others","unlisted":false},{"type":"link","label":"Schedules","href":"/knowledge/law/constitution-of-india/schedules","docId":"knowledge/law/constitution-of-india/schedules","unlisted":false}]},{"type":"link","label":"Judgements 2023","href":"/knowledge/law/judgements-2023","docId":"knowledge/law/judgements-2023","unlisted":false},{"type":"link","label":"Laws","href":"/knowledge/law/laws","docId":"knowledge/law/laws","unlisted":false},{"type":"link","label":"LSAT","href":"/knowledge/law/lsat","docId":"knowledge/law/lsat","unlisted":false},{"type":"link","label":"MCAT","href":"/knowledge/law/mcat","docId":"knowledge/law/mcat","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/law/others","docId":"knowledge/law/others","unlisted":false}],"href":"/knowledge/law/"},{"type":"link","label":"Links","href":"/knowledge/links","docId":"knowledge/links","unlisted":false},{"type":"category","label":"Others","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Chemistry","href":"/knowledge/others/chemistry-outline","docId":"knowledge/others/chemistry-outline","unlisted":false},{"type":"link","label":"Climate Change","href":"/knowledge/others/climate-change","docId":"knowledge/others/climate-change","unlisted":false},{"type":"link","label":"Cloth Fibers / Textiles","href":"/knowledge/others/clothes-textiles","docId":"knowledge/others/clothes-textiles","unlisted":false},{"type":"link","label":"Education / PhD","href":"/knowledge/others/education-phd","docId":"knowledge/others/education-phd","unlisted":false},{"type":"link","label":"International Relations IR","href":"/knowledge/others/international-relations-ir","docId":"knowledge/others/international-relations-ir","unlisted":false},{"type":"link","label":"Mythology","href":"/knowledge/others/mythology","docId":"knowledge/others/mythology","unlisted":false},{"type":"link","label":"News / Problems","href":"/knowledge/others/news-problems","docId":"knowledge/others/news-problems","unlisted":false},{"type":"link","label":"Philosophy","href":"/knowledge/others/philosophy","docId":"knowledge/others/philosophy","unlisted":false},{"type":"category","label":"Politics","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"India Polity","href":"/knowledge/others/politics/indian-polity","docId":"knowledge/others/politics/indian-polity","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/others/politics/others","docId":"knowledge/others/politics/others","unlisted":false},{"type":"link","label":"Types of Governments","href":"/knowledge/others/politics/types-of-governments","docId":"knowledge/others/politics/types-of-governments","unlisted":false}],"href":"/knowledge/others/politics/"},{"type":"link","label":"Others","href":"/knowledge/others/","docId":"knowledge/others/readme","unlisted":false}],"href":"/knowledge/others/"},{"type":"category","label":"Physics","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Astronomy","href":"/knowledge/physics/astronomy","docId":"knowledge/physics/astronomy","unlisted":false},{"type":"link","label":"Crash Course Physics","href":"/knowledge/physics/crash-course-physics","docId":"knowledge/physics/crash-course-physics","unlisted":false},{"type":"link","label":"Intro","href":"/knowledge/physics/intro","docId":"knowledge/physics/intro","unlisted":false},{"type":"link","label":"Khan Academy Physics","href":"/knowledge/physics/khan-academy-physics","docId":"knowledge/physics/khan-academy-physics","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/physics/others","docId":"knowledge/physics/others","unlisted":false}],"href":"/knowledge/physics/"},{"type":"category","label":"Quotes Proverbs","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Business / Management","href":"/knowledge/quotes-proverbs/business-management","docId":"knowledge/quotes-proverbs/business-management","unlisted":false},{"type":"link","label":"Coding","href":"/knowledge/quotes-proverbs/coding","docId":"knowledge/quotes-proverbs/coding","unlisted":false},{"type":"link","label":"Funny","href":"/knowledge/quotes-proverbs/funny","docId":"knowledge/quotes-proverbs/funny","unlisted":false},{"type":"link","label":"Habits","href":"/knowledge/quotes-proverbs/habits","docId":"knowledge/quotes-proverbs/habits","unlisted":false},{"type":"link","label":"Hindi","href":"/knowledge/quotes-proverbs/hindi","docId":"knowledge/quotes-proverbs/hindi","unlisted":false},{"type":"link","label":"Life","href":"/knowledge/quotes-proverbs/life","docId":"knowledge/quotes-proverbs/life","unlisted":false},{"type":"link","label":"Motivation","href":"/knowledge/quotes-proverbs/motivation","docId":"knowledge/quotes-proverbs/motivation","unlisted":false},{"type":"link","label":"My Quotes","href":"/knowledge/quotes-proverbs/my-quotes","docId":"knowledge/quotes-proverbs/my-quotes","unlisted":false},{"type":"link","label":"Poems","href":"/knowledge/quotes-proverbs/poems","docId":"knowledge/quotes-proverbs/poems","unlisted":false},{"type":"link","label":"Science","href":"/knowledge/quotes-proverbs/science","docId":"knowledge/quotes-proverbs/science","unlisted":false},{"type":"link","label":"Stories","href":"/knowledge/quotes-proverbs/stories","docId":"knowledge/quotes-proverbs/stories","unlisted":false},{"type":"link","label":"Tatoos Quotes","href":"/knowledge/quotes-proverbs/tatoos-quotes","docId":"knowledge/quotes-proverbs/tatoos-quotes","unlisted":false},{"type":"link","label":"Tips","href":"/knowledge/quotes-proverbs/tips","docId":"knowledge/quotes-proverbs/tips","unlisted":false}],"href":"/knowledge/quotes-proverbs/"},{"type":"link","label":"Youtube / Podcasts / Magazine / Apps","href":"/knowledge/youtube-podcasts-magazine-apps","docId":"knowledge/youtube-podcasts-magazine-apps","unlisted":false}],"href":"/knowledge/"},{"type":"category","label":"Languages","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"C++","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Constructor","href":"/languages/c++/constructor","docId":"languages/c++/constructor","unlisted":false},{"type":"link","label":"Frameworks","href":"/languages/c++/frameworks","docId":"languages/c++/frameworks","unlisted":false},{"type":"link","label":"Friend Function","href":"/languages/c++/friend-function","docId":"languages/c++/friend-function","unlisted":false},{"type":"link","label":"Header files","href":"/languages/c++/header-files","docId":"languages/c++/header-files","unlisted":false},{"type":"link","label":"Intro","href":"/languages/c++/intro","docId":"languages/c++/intro","unlisted":false},{"type":"link","label":"IO","href":"/languages/c++/io","docId":"languages/c++/io","unlisted":false},{"type":"link","label":"Others","href":"/languages/c++/others","docId":"languages/c++/others","unlisted":false},{"type":"link","label":"printf","href":"/languages/c++/printf","docId":"languages/c++/printf","unlisted":false},{"type":"link","label":"STL Containers","href":"/languages/c++/stl-containers","docId":"languages/c++/stl-containers","unlisted":false},{"type":"link","label":"STL Iterators Algorithms","href":"/languages/c++/stl-iterators-algorithms","docId":"languages/c++/stl-iterators-algorithms","unlisted":false},{"type":"link","label":"Storage classes","href":"/languages/c++/storage-classes","docId":"languages/c++/storage-classes","unlisted":false},{"type":"link","label":"TC++PL4","href":"/languages/c++/tc-pl4","docId":"languages/c++/tc-pl4","unlisted":false},{"type":"link","label":"Templates","href":"/languages/c++/templates","docId":"languages/c++/templates","unlisted":false}],"href":"/languages/c++/"},{"type":"category","label":"Frameworks","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Android","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Jetpack","href":"/languages/frameworks/android/jetpack","docId":"languages/frameworks/android/jetpack","unlisted":false},{"type":"link","label":"Kotlin","href":"/languages/frameworks/android/kotlin","docId":"languages/frameworks/android/kotlin","unlisted":false},{"type":"link","label":"Questions","href":"/languages/frameworks/android/questions","docId":"languages/frameworks/android/questions","unlisted":false},{"type":"link","label":"Service","href":"/languages/frameworks/android/service","docId":"languages/frameworks/android/service","unlisted":false},{"type":"link","label":"Testing","href":"/languages/frameworks/android/testing","docId":"languages/frameworks/android/testing","unlisted":false},{"type":"link","label":"Tools","href":"/languages/frameworks/android/tools","docId":"languages/frameworks/android/tools","unlisted":false}],"href":"/languages/frameworks/android/"},{"type":"link","label":"Comparison","href":"/languages/frameworks/comparison","docId":"languages/frameworks/comparison","unlisted":false},{"type":"link","label":"Dash","href":"/languages/frameworks/dash","docId":"languages/frameworks/dash","unlisted":false},{"type":"link","label":"Flutter","href":"/languages/frameworks/flutter","docId":"languages/frameworks/flutter","unlisted":false},{"type":"link","label":"Intro","href":"/languages/frameworks/intro","docId":"languages/frameworks/intro","unlisted":false},{"type":"link","label":"iOS","href":"/languages/frameworks/ios","docId":"languages/frameworks/ios","unlisted":false},{"type":"link","label":"Masonite","href":"/languages/frameworks/masonite","docId":"languages/frameworks/masonite","unlisted":false},{"type":"link","label":"Others","href":"/languages/frameworks/others","docId":"languages/frameworks/others","unlisted":false},{"type":"link","label":"Server Driven Mobile UIs","href":"/languages/frameworks/server-driven-mobile-uis","docId":"languages/frameworks/server-driven-mobile-uis","unlisted":false},{"type":"link","label":"Stacks","href":"/languages/frameworks/stacks","docId":"languages/frameworks/stacks","unlisted":false}],"href":"/languages/frameworks/"},{"type":"category","label":"golang","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Concepts","href":"/languages/golang/concepts","docId":"languages/golang/concepts","unlisted":false},{"type":"link","label":"Data Types","href":"/languages/golang/data-types","docId":"languages/golang/data-types","unlisted":false},{"type":"link","label":"Examples","href":"/languages/golang/examples","docId":"languages/golang/examples","unlisted":false},{"type":"link","label":"Hello World","href":"/languages/golang/hello-world","docId":"languages/golang/hello-world","unlisted":false},{"type":"link","label":"Interview Questions","href":"/languages/golang/interview-questions","docId":"languages/golang/interview-questions","unlisted":false},{"type":"link","label":"Intro","href":"/languages/golang/intro","docId":"languages/golang/intro","unlisted":false},{"type":"link","label":"Syntax","href":"/languages/golang/syntax","docId":"languages/golang/syntax","unlisted":false},{"type":"link","label":"Testing","href":"/languages/golang/testing","docId":"languages/golang/testing","unlisted":false},{"type":"link","label":"Tools","href":"/languages/golang/tools","docId":"languages/golang/tools","unlisted":false}],"href":"/languages/golang/"},{"type":"category","label":"Java","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Collections","href":"/languages/java/collections","docId":"languages/java/collections","unlisted":false},{"type":"link","label":"Comparable Interface","href":"/languages/java/comparable-interface","docId":"languages/java/comparable-interface","unlisted":false},{"type":"link","label":"Concurrency","href":"/languages/java/concurrency","docId":"languages/java/concurrency","unlisted":false},{"type":"link","label":"Defining Constants","href":"/languages/java/defining-constants","docId":"languages/java/defining-constants","unlisted":false},{"type":"link","label":"Frameworks","href":"/languages/java/frameworks","docId":"languages/java/frameworks","unlisted":false},{"type":"link","label":"Hash Collection","href":"/languages/java/hash-collection","docId":"languages/java/hash-collection","unlisted":false},{"type":"link","label":"Intro","href":"/languages/java/intro","docId":"languages/java/intro","unlisted":false},{"type":"link","label":"JMX","href":"/languages/java/jmx","docId":"languages/java/jmx","unlisted":false},{"type":"link","label":"JVM Architecture","href":"/languages/java/jvm-architecture","docId":"languages/java/jvm-architecture","unlisted":false},{"type":"link","label":"Knowledge","href":"/languages/java/knowledge","docId":"languages/java/knowledge","unlisted":false},{"type":"link","label":"Lambda Expressions","href":"/languages/java/lambda-expressions","docId":"languages/java/lambda-expressions","unlisted":false},{"type":"link","label":"Libraries","href":"/languages/java/libraries","docId":"languages/java/libraries","unlisted":false},{"type":"link","label":"Others","href":"/languages/java/others","docId":"languages/java/others","unlisted":false},{"type":"link","label":"Questions","href":"/languages/java/questions","docId":"languages/java/questions","unlisted":false},{"type":"link","label":"Reflection","href":"/languages/java/reflection","docId":"languages/java/reflection","unlisted":false},{"type":"link","label":"Spring","href":"/languages/java/spring","docId":"languages/java/spring","unlisted":false},{"type":"link","label":"Template FastIO","href":"/languages/java/template-fastio","docId":"languages/java/template-fastio","unlisted":false},{"type":"link","label":"Threading in JavaFX","href":"/languages/java/threading-in-javafx","docId":"languages/java/threading-in-javafx","unlisted":false}],"href":"/languages/java/"},{"type":"category","label":"Other Languages","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Erlang","href":"/languages/others/erlang","docId":"languages/others/erlang","unlisted":false},{"type":"link","label":"General","href":"/languages/others/general","docId":"languages/others/general","unlisted":false},{"type":"link","label":"JavaScript Templating","href":"/languages/others/javascript-templating","docId":"languages/others/javascript-templating","unlisted":false},{"type":"link","label":"JSON","href":"/languages/others/json","docId":"languages/others/json","unlisted":false},{"type":"link","label":"Markdown","href":"/languages/others/markdown","docId":"languages/others/markdown","unlisted":false},{"type":"link","label":"Other Languages","href":"/languages/others/other-languages","docId":"languages/others/other-languages","unlisted":false},{"type":"link","label":"R","href":"/languages/others/r-language","docId":"languages/others/r-language","unlisted":false},{"type":"link","label":"Regular Expressions / Regex","href":"/languages/others/regular-expressions-regex","docId":"languages/others/regular-expressions-regex","unlisted":false},{"type":"link","label":"Ruby","href":"/languages/others/ruby","docId":"languages/others/ruby","unlisted":false},{"type":"link","label":"Rust","href":"/languages/others/rust","docId":"languages/others/rust","unlisted":false},{"type":"link","label":"Scala","href":"/languages/others/scala","docId":"languages/others/scala","unlisted":false},{"type":"link","label":"Swift","href":"/languages/others/swift","docId":"languages/others/swift","unlisted":false},{"type":"link","label":"TLA+","href":"/languages/others/tla-plus","docId":"languages/others/tla-plus","unlisted":false},{"type":"link","label":"TOML","href":"/languages/others/toml","docId":"languages/others/toml","unlisted":false},{"type":"link","label":"Web Assembly","href":"/languages/others/web-assembly","docId":"languages/others/web-assembly","unlisted":false},{"type":"link","label":"Yaml","href":"/languages/others/yaml","docId":"languages/others/yaml","unlisted":false}],"href":"/languages/others/"},{"type":"category","label":"PHP","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"CodeIgnitor","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Application Architecture","href":"/languages/php/codeigniter/application-architecture","docId":"languages/php/codeigniter/application-architecture","unlisted":false},{"type":"link","label":"Basic Concepts","href":"/languages/php/codeigniter/basic-concepts","docId":"languages/php/codeigniter/basic-concepts","unlisted":false},{"type":"link","label":"Commands","href":"/languages/php/codeigniter/commands","docId":"languages/php/codeigniter/commands","unlisted":false},{"type":"link","label":"Configurations","href":"/languages/php/codeigniter/configurations","docId":"languages/php/codeigniter/configurations","unlisted":false},{"type":"link","label":"Helpers / Functions","href":"/languages/php/codeigniter/helpers-functions","docId":"languages/php/codeigniter/helpers-functions","unlisted":false},{"type":"link","label":"HTTP","href":"/languages/php/codeigniter/http","docId":"languages/php/codeigniter/http","unlisted":false},{"type":"link","label":"CodeIgniter","href":"/languages/php/codeigniter/intro","docId":"languages/php/codeigniter/intro","unlisted":false},{"type":"link","label":"MVC","href":"/languages/php/codeigniter/mvc","docId":"languages/php/codeigniter/mvc","unlisted":false},{"type":"link","label":"Others","href":"/languages/php/codeigniter/others","docId":"languages/php/codeigniter/others","unlisted":false}],"href":"/languages/php/codeigniter/"},{"type":"link","label":"Documentation","href":"/languages/php/documentation","docId":"languages/php/documentation","unlisted":false},{"type":"link","label":"Example","href":"/languages/php/example","docId":"languages/php/example","unlisted":false},{"type":"link","label":"Frameworks","href":"/languages/php/frameworks","docId":"languages/php/frameworks","unlisted":false},{"type":"link","label":"Intro","href":"/languages/php/intro","docId":"languages/php/intro","unlisted":false},{"type":"link","label":"Operators","href":"/languages/php/operators","docId":"languages/php/operators","unlisted":false},{"type":"link","label":"Others","href":"/languages/php/others","docId":"languages/php/others","unlisted":false},{"type":"link","label":"Syntax","href":"/languages/php/syntax","docId":"languages/php/syntax","unlisted":false},{"type":"link","label":"Web Concepts","href":"/languages/php/web-concepts","docId":"languages/php/web-concepts","unlisted":false}],"href":"/languages/php/"},{"type":"category","label":"SQL","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Concepts","href":"/languages/sql/concepts","docId":"languages/sql/concepts","unlisted":false},{"type":"link","label":"CTE / Subquery","href":"/languages/sql/cte-subquery","docId":"languages/sql/cte-subquery","unlisted":false},{"type":"link","label":"Databricks SQL Functions","href":"/languages/sql/databricks-sql-functions","docId":"languages/sql/databricks-sql-functions","unlisted":false},{"type":"link","label":"Databricks SQL","href":"/languages/sql/databricks-sql","docId":"languages/sql/databricks-sql","unlisted":false},{"type":"link","label":"DCL - Data Control Language","href":"/languages/sql/dcl-data-control-language","docId":"languages/sql/dcl-data-control-language","unlisted":false},{"type":"category","label":"DDL - Data Definition Language","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Create Table","href":"/languages/sql/ddl-data-definition-language/create-table","docId":"languages/sql/ddl-data-definition-language/create-table","unlisted":false},{"type":"link","label":"Truncate vs Delete","href":"/languages/sql/ddl-data-definition-language/truncate-delete","docId":"languages/sql/ddl-data-definition-language/truncate-delete","unlisted":false}],"href":"/languages/sql/ddl-data-definition-language/"},{"type":"link","label":"DML - Data Manipulation Language","href":"/languages/sql/dml-data-manipulation-language","docId":"languages/sql/dml-data-manipulation-language","unlisted":false},{"type":"category","label":"DQL - Data Query Language","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Aggregation Queries","href":"/languages/sql/dql-data-query-language/aggregation-queries","docId":"languages/sql/dql-data-query-language/aggregation-queries","unlisted":false},{"type":"link","label":"Analytical Queries","href":"/languages/sql/dql-data-query-language/analytical-queries","docId":"languages/sql/dql-data-query-language/analytical-queries","unlisted":false},{"type":"link","label":"Window Functions","href":"/languages/sql/dql-data-query-language/window-functions","docId":"languages/sql/dql-data-query-language/window-functions","unlisted":false}],"href":"/languages/sql/dql-data-query-language/"},{"type":"link","label":"Functions","href":"/languages/sql/functions","docId":"languages/sql/functions","unlisted":false},{"type":"link","label":"Intro","href":"/languages/sql/intro","docId":"languages/sql/intro","unlisted":false},{"type":"link","label":"Join Algorithms","href":"/languages/sql/join-algorithms","docId":"languages/sql/join-algorithms","unlisted":false},{"type":"link","label":"Keys","href":"/languages/sql/keys","docId":"languages/sql/keys","unlisted":false},{"type":"link","label":"Operators / Wildcards","href":"/languages/sql/operators-wildcards","docId":"languages/sql/operators-wildcards","unlisted":false},{"type":"link","label":"Others","href":"/languages/sql/others","docId":"languages/sql/others","unlisted":false},{"type":"link","label":"PartiQL","href":"/languages/sql/partiql","docId":"languages/sql/partiql","unlisted":false},{"type":"link","label":"Postgres Commands","href":"/languages/sql/postgres-commands","docId":"languages/sql/postgres-commands","unlisted":false},{"type":"link","label":"SQL Commands","href":"/languages/sql/sql-commands","docId":"languages/sql/sql-commands","unlisted":false},{"type":"link","label":"SQL Data Types","href":"/languages/sql/sql-data-types","docId":"languages/sql/sql-data-types","unlisted":false},{"type":"link","label":"SQL Examples / Queries","href":"/languages/sql/sql-examples-queries","docId":"languages/sql/sql-examples-queries","unlisted":false},{"type":"link","label":"SQL Joins","href":"/languages/sql/sql-joins","docId":"languages/sql/sql-joins","unlisted":false},{"type":"link","label":"SQL Views","href":"/languages/sql/sql-views","docId":"languages/sql/sql-views","unlisted":false},{"type":"link","label":"Stored Procedure","href":"/languages/sql/stored-procedure","docId":"languages/sql/stored-procedure","unlisted":false},{"type":"link","label":"Types","href":"/languages/sql/types","docId":"languages/sql/types","unlisted":false}],"href":"/languages/sql/"}],"href":"/languages/"},{"type":"category","label":"Management","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Books / Blinkist Management","href":"/management/books-blinkist-management","docId":"management/books-blinkist-management","unlisted":false},{"type":"category","label":"Business","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Business Case Studies","href":"/management/business/business-case-studies","docId":"management/business/business-case-studies","unlisted":false},{"type":"link","label":"Business Terms","href":"/management/business/business-terms","docId":"management/business/business-terms","unlisted":false},{"type":"link","label":"Indian Market","href":"/management/business/indian-market","docId":"management/business/indian-market","unlisted":false},{"type":"link","label":"Service Based Model","href":"/management/business/service-based-model","docId":"management/business/service-based-model","unlisted":false}],"href":"/management/business/"},{"type":"link","label":"Community Building","href":"/management/community-building","docId":"management/community-building","unlisted":false},{"type":"link","label":"Customer Engagement / CX","href":"/management/customer-engagement-cx","docId":"management/customer-engagement-cx","unlisted":false},{"type":"category","label":"Decision Making","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Ethics","href":"/management/decision-making/ethics","docId":"management/decision-making/ethics","unlisted":false}],"href":"/management/decision-making/"},{"type":"link","label":"Growth Hacking Metrics","href":"/management/growth-hacking-metrics","docId":"management/growth-hacking-metrics","unlisted":false},{"type":"link","label":"Growth Hacking","href":"/management/growth-hacking","docId":"management/growth-hacking","unlisted":false},{"type":"category","label":"Job Hunting","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Career","href":"/management/jobs/career","docId":"management/jobs/career","unlisted":false},{"type":"link","label":"Companies","href":"/management/jobs/companies","docId":"management/jobs/companies","unlisted":false},{"type":"link","label":"Finance / Equity / Stocks / ESOPS Questions","href":"/management/jobs/finance-equity-stocks-esops-questions","docId":"management/jobs/finance-equity-stocks-esops-questions","unlisted":false},{"type":"link","label":"Good Profiles","href":"/management/jobs/good-profiles","docId":"management/jobs/good-profiles","unlisted":false},{"type":"link","label":"Hiring Plan + HR / Recruiting","href":"/management/jobs/hiring-plan-hr-recruiting","docId":"management/jobs/hiring-plan-hr-recruiting","unlisted":false},{"type":"link","label":"Questions to company","href":"/management/jobs/questions-to-company","docId":"management/jobs/questions-to-company","unlisted":false},{"type":"link","label":"Resume Keywords Pointers","href":"/management/jobs/resume-keywords-pointers","docId":"management/jobs/resume-keywords-pointers","unlisted":false}],"href":"/management/jobs/"},{"type":"link","label":"Marketing","href":"/management/marketing","docId":"management/marketing","unlisted":false},{"type":"link","label":"Mental Models","href":"/management/mental-models","docId":"management/mental-models","unlisted":false},{"type":"link","label":"Others","href":"/management/others","docId":"management/others","unlisted":false},{"type":"category","label":"People Management","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Culture","href":"/management/people-management/culture","docId":"management/people-management/culture","unlisted":false},{"type":"link","label":"Leadership Interview Questions","href":"/management/people-management/leadership-interview-questions","docId":"management/people-management/leadership-interview-questions","unlisted":false},{"type":"link","label":"Mentoring / Leading","href":"/management/people-management/mentoring-teaching-coaching-leading-leader-leadership","docId":"management/people-management/mentoring-teaching-coaching-leading-leader-leadership","unlisted":false},{"type":"link","label":"Onboarding","href":"/management/people-management/onboarding","docId":"management/people-management/onboarding","unlisted":false},{"type":"link","label":"People / Team Management","href":"/management/people-management/people-team-management","docId":"management/people-management/people-team-management","unlisted":false},{"type":"link","label":"Remote Working / Teams","href":"/management/people-management/remote-working-teams","docId":"management/people-management/remote-working-teams","unlisted":false},{"type":"link","label":"Types of Leadership","href":"/management/people-management/types-of-leadership","docId":"management/people-management/types-of-leadership","unlisted":false}],"href":"/management/people-management/"},{"type":"category","label":"Product Management","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Behavioral Design / Economics","href":"/management/product-management/behavioral-design-economics","docId":"management/product-management/behavioral-design-economics","unlisted":false},{"type":"link","label":"Coursera - PM","href":"/management/product-management/coursera-pm","docId":"management/product-management/coursera-pm","unlisted":false},{"type":"link","label":"Intro","href":"/management/product-management/intro","docId":"management/product-management/intro","unlisted":false},{"type":"link","label":"Kano Model","href":"/management/product-management/kano-model","docId":"management/product-management/kano-model","unlisted":false},{"type":"link","label":"Product Book Summaries","href":"/management/product-management/product-book-summaries","docId":"management/product-management/product-book-summaries","unlisted":false},{"type":"link","label":"Product Design / Questions","href":"/management/product-management/product-design-questions","docId":"management/product-management/product-design-questions","unlisted":false},{"type":"link","label":"Product Design Stages","href":"/management/product-management/product-design-stages","docId":"management/product-management/product-design-stages","unlisted":false},{"type":"link","label":"Product Manager PM Role","href":"/management/product-management/product-manager-role","docId":"management/product-management/product-manager-role","unlisted":false},{"type":"link","label":"Product Market Fit (PMF)","href":"/management/product-management/product-market-fit-pmf","docId":"management/product-management/product-market-fit-pmf","unlisted":false},{"type":"link","label":"Product - Terms - SAAS","href":"/management/product-management/product-terms-saas","docId":"management/product-management/product-terms-saas","unlisted":false},{"type":"link","label":"Retail / Offline / Sales","href":"/management/product-management/retail-offline-sales","docId":"management/product-management/retail-offline-sales","unlisted":false}],"href":"/management/product-management/"},{"type":"category","label":"Project Management","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Agile","href":"/management/project-management/agile","docId":"management/project-management/agile","unlisted":false},{"type":"link","label":"Atlas","href":"/management/project-management/atlas","docId":"management/project-management/atlas","unlisted":false},{"type":"link","label":"Goals Setting","href":"/management/project-management/goals-setting","docId":"management/project-management/goals-setting","unlisted":false},{"type":"link","label":"Intro","href":"/management/project-management/intro","docId":"management/project-management/intro","unlisted":false},{"type":"link","label":"JIRA","href":"/management/project-management/jira","docId":"management/project-management/jira","unlisted":false},{"type":"link","label":"Others","href":"/management/project-management/others","docId":"management/project-management/others","unlisted":false},{"type":"link","label":"PERT & CPM","href":"/management/project-management/pert-and-cpm","docId":"management/project-management/pert-and-cpm","unlisted":false},{"type":"link","label":"PM101","href":"/management/project-management/pm101","docId":"management/project-management/pm101","unlisted":false},{"type":"link","label":"Program Management","href":"/management/project-management/program-management","docId":"management/project-management/program-management","unlisted":false},{"type":"link","label":"Project Contraints","href":"/management/project-management/project-contraints","docId":"management/project-management/project-contraints","unlisted":false},{"type":"link","label":"Scrum / Meetings","href":"/management/project-management/scrum-meetings","docId":"management/project-management/scrum-meetings","unlisted":false},{"type":"link","label":"SDLC Methodologies","href":"/management/project-management/sdlc-methodologies","docId":"management/project-management/sdlc-methodologies","unlisted":false},{"type":"link","label":"1. Summary","href":"/management/project-management/template","docId":"management/project-management/template","unlisted":false}],"href":"/management/project-management/"},{"type":"link","label":"Project / Product / Business - Tools - SAAS","href":"/management/project-product-business-tools-saas","docId":"management/project-product-business-tools-saas","unlisted":false},{"type":"category","label":"roles","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Data","href":"/management/roles/data","docId":"management/roles/data","unlisted":false},{"type":"link","label":"Engineering Manager / Tech Lead","href":"/management/roles/engineering-manager","docId":"management/roles/engineering-manager","unlisted":false},{"type":"link","label":"Others","href":"/management/roles/others","docId":"management/roles/others","unlisted":false},{"type":"link","label":"Principle Software Engineer","href":"/management/roles/principle-software-engineer","docId":"management/roles/principle-software-engineer","unlisted":false}]},{"type":"link","label":"Sales","href":"/management/sales","docId":"management/sales","unlisted":false},{"type":"link","label":"Six Sigma","href":"/management/six-sigma","docId":"management/six-sigma","unlisted":false}],"href":"/management/"},{"type":"category","label":"Mathematics","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Algebra","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Cheatsheet","href":"/mathematics/algebra/cheatsheet","docId":"mathematics/algebra/cheatsheet","unlisted":false},{"type":"link","label":"2.2 Complex Numbers","href":"/mathematics/algebra/complex-numbers","docId":"mathematics/algebra/complex-numbers","unlisted":false},{"type":"link","label":"2.7. Exponential & logarithms","href":"/mathematics/algebra/exponential-and-logarithms","docId":"mathematics/algebra/exponential-and-logarithms","unlisted":false},{"type":"link","label":"2.1 Functions","href":"/mathematics/algebra/functions","docId":"mathematics/algebra/functions","unlisted":false},{"type":"link","label":"Intro","href":"/mathematics/algebra/intro","docId":"mathematics/algebra/intro","unlisted":false},{"type":"link","label":"Others","href":"/mathematics/algebra/others","docId":"mathematics/algebra/others","unlisted":false},{"type":"link","label":"Root","href":"/mathematics/algebra/root","docId":"mathematics/algebra/root","unlisted":false},{"type":"link","label":"2.9. Series","href":"/mathematics/algebra/series","docId":"mathematics/algebra/series","unlisted":false},{"type":"link","label":"Sets","href":"/mathematics/algebra/sets","docId":"mathematics/algebra/sets","unlisted":false}],"href":"/mathematics/algebra/"},{"type":"category","label":"Aptitude","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Chinese Remainder Theorem","href":"/mathematics/aptitude/chinese-remainder-theorem","docId":"mathematics/aptitude/chinese-remainder-theorem","unlisted":false},{"type":"link","label":"Cube Cutting","href":"/mathematics/aptitude/cube-cutting","docId":"mathematics/aptitude/cube-cutting","unlisted":false},{"type":"link","label":"Distance Speed and Time","href":"/mathematics/aptitude/distance-speed-and-time","docId":"mathematics/aptitude/distance-speed-and-time","unlisted":false}],"href":"/mathematics/aptitude/"},{"type":"category","label":"Calculus","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Essence of Calculus - 3Blue1Brown","href":"/mathematics/calculus/essence-of-calculus-3blue1brown","docId":"mathematics/calculus/essence-of-calculus-3blue1brown","unlisted":false},{"type":"link","label":"Functions","href":"/mathematics/calculus/functions","docId":"mathematics/calculus/functions","unlisted":false},{"type":"link","label":"Gradient","href":"/mathematics/calculus/gradient","docId":"mathematics/calculus/gradient","unlisted":false},{"type":"link","label":"Intro","href":"/mathematics/calculus/intro","docId":"mathematics/calculus/intro","unlisted":false},{"type":"link","label":"Others","href":"/mathematics/calculus/others","docId":"mathematics/calculus/others","unlisted":false},{"type":"link","label":"Intro","href":"/mathematics/calculus/precalculus-intro","docId":"mathematics/calculus/precalculus-intro","unlisted":false},{"type":"link","label":"Product Rule for Derivatives","href":"/mathematics/calculus/product-rule-for-derivatives","docId":"mathematics/calculus/product-rule-for-derivatives","unlisted":false},{"type":"link","label":"Quotient Rule","href":"/mathematics/calculus/quotient-rule","docId":"mathematics/calculus/quotient-rule","unlisted":false},{"type":"link","label":"Tangent Line and the Derivative","href":"/mathematics/calculus/tangent-line-and-the-derivative","docId":"mathematics/calculus/tangent-line-and-the-derivative","unlisted":false}],"href":"/mathematics/calculus/"},{"type":"category","label":"Combinatorics","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Birthday Paradox","href":"/mathematics/combinatorics/birthday-paradox","docId":"mathematics/combinatorics/birthday-paradox","unlisted":false},{"type":"link","label":"Conditional Probability","href":"/mathematics/combinatorics/conditional-probability","docId":"mathematics/combinatorics/conditional-probability","unlisted":false},{"type":"link","label":"Inclusion-Exclusion Principle","href":"/mathematics/combinatorics/inclusion-exclusion-principle","docId":"mathematics/combinatorics/inclusion-exclusion-principle","unlisted":false},{"type":"link","label":"Intro","href":"/mathematics/combinatorics/intro","docId":"mathematics/combinatorics/intro","unlisted":false},{"type":"link","label":"Permutation and Combination","href":"/mathematics/combinatorics/permutation-and-combination","docId":"mathematics/combinatorics/permutation-and-combination","unlisted":false},{"type":"link","label":"Pigeonhole Principle","href":"/mathematics/combinatorics/pigeonhole-principle","docId":"mathematics/combinatorics/pigeonhole-principle","unlisted":false}],"href":"/mathematics/combinatorics/"},{"type":"category","label":"General","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Ackermann Function","href":"/mathematics/general/ackermann-function","docId":"mathematics/general/ackermann-function","unlisted":false},{"type":"link","label":"Advanced Topics","href":"/mathematics/general/advanced-topics","docId":"mathematics/general/advanced-topics","unlisted":false},{"type":"link","label":"Conjecture","href":"/mathematics/general/conjecture","docId":"mathematics/general/conjecture","unlisted":false},{"type":"link","label":"Discrete Mathematics","href":"/mathematics/general/discrete-mathematics","docId":"mathematics/general/discrete-mathematics","unlisted":false},{"type":"link","label":"Fermat\'s Last Theorem","href":"/mathematics/general/fermat-last-theorem","docId":"mathematics/general/fermat-last-theorem","unlisted":false},{"type":"link","label":"Fermat\'s Little Theorem","href":"/mathematics/general/fermat-little-theorem","docId":"mathematics/general/fermat-little-theorem","unlisted":false},{"type":"link","label":"GCD / LCM","href":"/mathematics/general/gcd-lcm","docId":"mathematics/general/gcd-lcm","unlisted":false},{"type":"link","label":"Godel\'s Incompleteness Theorem","href":"/mathematics/general/godel-incompleteness-theorem","docId":"mathematics/general/godel-incompleteness-theorem","unlisted":false},{"type":"link","label":"Golden Ratio - phi","href":"/mathematics/general/golden-ratio-phi","docId":"mathematics/general/golden-ratio-phi","unlisted":false},{"type":"link","label":"Greek Letters / Latin","href":"/mathematics/general/greek-letters-latin","docId":"mathematics/general/greek-letters-latin","unlisted":false},{"type":"link","label":"Handshaking Lemma","href":"/mathematics/general/handshaking-lemma","docId":"mathematics/general/handshaking-lemma","unlisted":false},{"type":"link","label":"Logic","href":"/mathematics/general/logic","docId":"mathematics/general/logic","unlisted":false},{"type":"link","label":"Numbers","href":"/mathematics/general/numbers","docId":"mathematics/general/numbers","unlisted":false},{"type":"link","label":"Others","href":"/mathematics/general/others","docId":"mathematics/general/others","unlisted":false},{"type":"link","label":"Pie","href":"/mathematics/general/pie","docId":"mathematics/general/pie","unlisted":false},{"type":"link","label":"Properties","href":"/mathematics/general/properties","docId":"mathematics/general/properties","unlisted":false}],"href":"/mathematics/general/"},{"type":"category","label":"Geometry","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Analytic Geometry","href":"/mathematics/geometry/analytic-geometry","docId":"mathematics/geometry/analytic-geometry","unlisted":false},{"type":"link","label":"Circles","href":"/mathematics/geometry/circles","docId":"mathematics/geometry/circles","unlisted":false},{"type":"link","label":"Congruence","href":"/mathematics/geometry/congruence","docId":"mathematics/geometry/congruence","unlisted":false},{"type":"link","label":"Geometry Foundations","href":"/mathematics/geometry/geometry-foundations","docId":"mathematics/geometry/geometry-foundations","unlisted":false},{"type":"link","label":"Others","href":"/mathematics/geometry/others","docId":"mathematics/geometry/others","unlisted":false},{"type":"link","label":"Right Triangles and Geometry","href":"/mathematics/geometry/right-triangles-and-geometry","docId":"mathematics/geometry/right-triangles-and-geometry","unlisted":false},{"type":"link","label":"Similarity","href":"/mathematics/geometry/similarity","docId":"mathematics/geometry/similarity","unlisted":false},{"type":"link","label":"Solid Geometry","href":"/mathematics/geometry/solid-geometry","docId":"mathematics/geometry/solid-geometry","unlisted":false},{"type":"link","label":"Transformations","href":"/mathematics/geometry/transformations","docId":"mathematics/geometry/transformations","unlisted":false}],"href":"/mathematics/geometry/"},{"type":"category","label":"Linear Algebra","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"3Blue1Brown","href":"/mathematics/linear-algebra/3blue1brown","docId":"mathematics/linear-algebra/3blue1brown","unlisted":false},{"type":"link","label":"Alternate Coordinate systems (bases)","href":"/mathematics/linear-algebra/alternate-coordinate-systems-bases","docId":"mathematics/linear-algebra/alternate-coordinate-systems-bases","unlisted":false},{"type":"link","label":"Cheatsheet","href":"/mathematics/linear-algebra/cheatsheet","docId":"mathematics/linear-algebra/cheatsheet","unlisted":false},{"type":"link","label":"Matrix Transformations","href":"/mathematics/linear-algebra/matrix-transformations","docId":"mathematics/linear-algebra/matrix-transformations","unlisted":false},{"type":"link","label":"Others","href":"/mathematics/linear-algebra/others","docId":"mathematics/linear-algebra/others","unlisted":false},{"type":"link","label":"Vectors and Spaces","href":"/mathematics/linear-algebra/vectors-and-spaces","docId":"mathematics/linear-algebra/vectors-and-spaces","unlisted":false}],"href":"/mathematics/linear-algebra/"},{"type":"category","label":"Probability","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"365 DS - Probability","href":"/mathematics/probability/365-ds-probability","docId":"mathematics/probability/365-ds-probability","unlisted":false},{"type":"link","label":"Binomial Random Variables","href":"/mathematics/probability/binomial-random-variables","docId":"mathematics/probability/binomial-random-variables","unlisted":false},{"type":"link","label":"Central Limit Theorem","href":"/mathematics/probability/central-limit-theorem","docId":"mathematics/probability/central-limit-theorem","unlisted":false},{"type":"link","label":"Cheatsheet","href":"/mathematics/probability/cheatsheet","docId":"mathematics/probability/cheatsheet","unlisted":false},{"type":"category","label":"Intro to Probability","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"1. Probability Models and Axioms","href":"/mathematics/probability/intro-to-probability/1.-probability-models-and-axioms","docId":"mathematics/probability/intro-to-probability/1.-probability-models-and-axioms","unlisted":false},{"type":"link","label":"1.1 Set, Sequences, Limits and Series, (un)countable sets","href":"/mathematics/probability/intro-to-probability/1.1-set-sequences-limits-and-series-un-countable-sets","docId":"mathematics/probability/intro-to-probability/1.1-set-sequences-limits-and-series-un-countable-sets","unlisted":false},{"type":"link","label":"10. Conditioning on a random variable; Independence; Bayes\' rule","href":"/mathematics/probability/intro-to-probability/10-conditioning-on-a-random-variable-independence-bayes-rule","docId":"mathematics/probability/intro-to-probability/10-conditioning-on-a-random-variable-independence-bayes-rule","unlisted":false},{"type":"link","label":"11. Derived Distributions","href":"/mathematics/probability/intro-to-probability/11.-derived-distributions","docId":"mathematics/probability/intro-to-probability/11.-derived-distributions","unlisted":false},{"type":"link","label":"12. Sums of independent r.v.\'s; Covariance and Correlation","href":"/mathematics/probability/intro-to-probability/12.-sums-of-independent-rv-covariance-and-correlation","docId":"mathematics/probability/intro-to-probability/12.-sums-of-independent-rv-covariance-and-correlation","unlisted":false},{"type":"link","label":"13. Conditional expectation and variance revisited","href":"/mathematics/probability/intro-to-probability/13.-conditional-expectation-and-variance-revisited","docId":"mathematics/probability/intro-to-probability/13.-conditional-expectation-and-variance-revisited","unlisted":false},{"type":"link","label":"14. Intro to Bayesian Inference","href":"/mathematics/probability/intro-to-probability/14.-intro-to-bayesian-inference","docId":"mathematics/probability/intro-to-probability/14.-intro-to-bayesian-inference","unlisted":false},{"type":"link","label":"2. Conditioning and Independence","href":"/mathematics/probability/intro-to-probability/2.-conditioning-and-independence","docId":"mathematics/probability/intro-to-probability/2.-conditioning-and-independence","unlisted":false},{"type":"link","label":"3. Independence","href":"/mathematics/probability/intro-to-probability/3.-independence","docId":"mathematics/probability/intro-to-probability/3.-independence","unlisted":false},{"type":"link","label":"4. Counting","href":"/mathematics/probability/intro-to-probability/4.-counting","docId":"mathematics/probability/intro-to-probability/4.-counting","unlisted":false},{"type":"link","label":"5. Probability Mass Functions and Expectations","href":"/mathematics/probability/intro-to-probability/5.-probability-mass-functions-and-expectations","docId":"mathematics/probability/intro-to-probability/5.-probability-mass-functions-and-expectations","unlisted":false},{"type":"link","label":"6. Variance; Conditioning of an event; Multiple r.v.\'s","href":"/mathematics/probability/intro-to-probability/6-variance-conditioning-of-an-event-multiple-rv","docId":"mathematics/probability/intro-to-probability/6-variance-conditioning-of-an-event-multiple-rv","unlisted":false},{"type":"link","label":"7. Conditioning on a rv; Independence of r.v.\'s","href":"/mathematics/probability/intro-to-probability/7-conditioning-on-a-rv-independence-of-rv","docId":"mathematics/probability/intro-to-probability/7-conditioning-on-a-rv-independence-of-rv","unlisted":false},{"type":"link","label":"8. Probability density functions","href":"/mathematics/probability/intro-to-probability/8.-probability-density-functions","docId":"mathematics/probability/intro-to-probability/8.-probability-density-functions","unlisted":false},{"type":"link","label":"9. Conditioning on an event; Multiple continuous r.v.\'s","href":"/mathematics/probability/intro-to-probability/9.-conditioning-on-an-event-multiple-continuous-rv","docId":"mathematics/probability/intro-to-probability/9.-conditioning-on-an-event-multiple-continuous-rv","unlisted":false},{"type":"link","label":"Additional Theoretical Material","href":"/mathematics/probability/intro-to-probability/additional-theoretical-material","docId":"mathematics/probability/intro-to-probability/additional-theoretical-material","unlisted":false},{"type":"link","label":"Intro - Syllabus","href":"/mathematics/probability/intro-to-probability/intro-syllabus","docId":"mathematics/probability/intro-to-probability/intro-syllabus","unlisted":false},{"type":"link","label":"Unit 1 - Solved Problems","href":"/mathematics/probability/intro-to-probability/unit-1-solved-problems","docId":"mathematics/probability/intro-to-probability/unit-1-solved-problems","unlisted":false},{"type":"link","label":"Unit 2 - Solved Problems","href":"/mathematics/probability/intro-to-probability/unit-2-solved-problems","docId":"mathematics/probability/intro-to-probability/unit-2-solved-problems","unlisted":false},{"type":"link","label":"Unit 3 - Solved Problems","href":"/mathematics/probability/intro-to-probability/unit-3-solved-problems","docId":"mathematics/probability/intro-to-probability/unit-3-solved-problems","unlisted":false}],"href":"/mathematics/probability/intro-to-probability/"},{"type":"link","label":"Intro","href":"/mathematics/probability/intro","docId":"mathematics/probability/intro","unlisted":false},{"type":"link","label":"Monte Carlo Simulation","href":"/mathematics/probability/monte-carlo-simulation","docId":"mathematics/probability/monte-carlo-simulation","unlisted":false},{"type":"link","label":"Normal Distributions","href":"/mathematics/probability/normal-distributions","docId":"mathematics/probability/normal-distributions","unlisted":false},{"type":"link","label":"Others","href":"/mathematics/probability/others","docId":"mathematics/probability/others","unlisted":false},{"type":"link","label":"Probability Distribution","href":"/mathematics/probability/probability-distribution","docId":"mathematics/probability/probability-distribution","unlisted":false},{"type":"link","label":"Random Variables","href":"/mathematics/probability/random-variables","docId":"mathematics/probability/random-variables","unlisted":false}],"href":"/mathematics/probability/"},{"type":"category","label":"Statistics","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Bivariate Analysis","href":"/mathematics/statistics/bivariate-analysis","docId":"mathematics/statistics/bivariate-analysis","unlisted":false},{"type":"link","label":"Confidence Intervals","href":"/mathematics/statistics/confidence-intervals","docId":"mathematics/statistics/confidence-intervals","unlisted":false},{"type":"link","label":"Correlation and Covariance","href":"/mathematics/statistics/correlation-and-covariance","docId":"mathematics/statistics/correlation-and-covariance","unlisted":false},{"type":"link","label":"Crash Course Statistics","href":"/mathematics/statistics/crash-course-statistics","docId":"mathematics/statistics/crash-course-statistics","unlisted":false},{"type":"link","label":"Crosstab","href":"/mathematics/statistics/crosstab","docId":"mathematics/statistics/crosstab","unlisted":false},{"type":"link","label":"Descriptive Statistics","href":"/mathematics/statistics/descriptive-statistics","docId":"mathematics/statistics/descriptive-statistics","unlisted":false},{"type":"link","label":"Discriminant Analysis","href":"/mathematics/statistics/discriminant-analysis","docId":"mathematics/statistics/discriminant-analysis","unlisted":false},{"type":"link","label":"Estimation Statistics","href":"/mathematics/statistics/estimation-statistics","docId":"mathematics/statistics/estimation-statistics","unlisted":false},{"type":"link","label":"Glossary","href":"/mathematics/statistics/glossary","docId":"mathematics/statistics/glossary","unlisted":false},{"type":"link","label":"Hypothesis Testing","href":"/mathematics/statistics/hypothesis-testing","docId":"mathematics/statistics/hypothesis-testing","unlisted":false},{"type":"link","label":"Inferential Statistics","href":"/mathematics/statistics/inferential-statistics","docId":"mathematics/statistics/inferential-statistics","unlisted":false},{"type":"link","label":"Intro","href":"/mathematics/statistics/intro","docId":"mathematics/statistics/intro","unlisted":false},{"type":"link","label":"Nonparametric Statistics","href":"/mathematics/statistics/nonparametric-statistics","docId":"mathematics/statistics/nonparametric-statistics","unlisted":false},{"type":"link","label":"Other Statistics","href":"/mathematics/statistics/other-statistics","docId":"mathematics/statistics/other-statistics","unlisted":false},{"type":"link","label":"Percentiles","href":"/mathematics/statistics/percentiles","docId":"mathematics/statistics/percentiles","unlisted":false},{"type":"link","label":"Ranking","href":"/mathematics/statistics/ranking","docId":"mathematics/statistics/ranking","unlisted":false},{"type":"link","label":"Sampling","href":"/mathematics/statistics/sampling","docId":"mathematics/statistics/sampling","unlisted":false}],"href":"/mathematics/statistics/"}],"href":"/mathematics/"},{"type":"category","label":"Networking","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"MQTT","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Client, Broker & Connection Establishment","href":"/networking/mqtt/client-broker-and-connection-establishment","docId":"networking/mqtt/client-broker-and-connection-establishment","unlisted":false},{"type":"link","label":"Intro","href":"/networking/mqtt/intro","docId":"networking/mqtt/intro","unlisted":false},{"type":"link","label":"Keep Alive & Client Take-Over","href":"/networking/mqtt/keep-alive-and-client-take-over","docId":"networking/mqtt/keep-alive-and-client-take-over","unlisted":false},{"type":"link","label":"Last Will and Testament","href":"/networking/mqtt/last-will-and-testament","docId":"networking/mqtt/last-will-and-testament","unlisted":false},{"type":"link","label":"Libraries","href":"/networking/mqtt/libraries","docId":"networking/mqtt/libraries","unlisted":false},{"type":"link","label":"Messages","href":"/networking/mqtt/messages","docId":"networking/mqtt/messages","unlisted":false},{"type":"link","label":"MQTT 5.0","href":"/networking/mqtt/mqtt-5.0","docId":"networking/mqtt/mqtt-5.0","unlisted":false},{"type":"link","label":"MQTT over WebSockets","href":"/networking/mqtt/mqtt-over-websockets","docId":"networking/mqtt/mqtt-over-websockets","unlisted":false},{"type":"link","label":"MQTT - SN","href":"/networking/mqtt/mqtt-sn","docId":"networking/mqtt/mqtt-sn","unlisted":false},{"type":"link","label":"MQTT vs HTTP","href":"/networking/mqtt/mqtt-vs-http","docId":"networking/mqtt/mqtt-vs-http","unlisted":false},{"type":"link","label":"Paho Client","href":"/networking/mqtt/paho-client","docId":"networking/mqtt/paho-client","unlisted":false},{"type":"link","label":"Persistent Session & Queuing Messages","href":"/networking/mqtt/persistent-session-and-queuing-messages","docId":"networking/mqtt/persistent-session-and-queuing-messages","unlisted":false},{"type":"link","label":"Publish, Subscribe & Unsubscribe","href":"/networking/mqtt/publish-subscribe-and-unsubscribe","docId":"networking/mqtt/publish-subscribe-and-unsubscribe","unlisted":false},{"type":"link","label":"Publish Subscribe Pattern","href":"/networking/mqtt/publish-subscribe-pattern","docId":"networking/mqtt/publish-subscribe-pattern","unlisted":false},{"type":"link","label":"QoS Levels","href":"/networking/mqtt/qos-levels","docId":"networking/mqtt/qos-levels","unlisted":false},{"type":"link","label":"Retained Messages","href":"/networking/mqtt/retained-messages","docId":"networking/mqtt/retained-messages","unlisted":false},{"type":"link","label":"Scaling","href":"/networking/mqtt/scaling","docId":"networking/mqtt/scaling","unlisted":false},{"type":"link","label":"Security","href":"/networking/mqtt/security","docId":"networking/mqtt/security","unlisted":false},{"type":"link","label":"Topics & Best Practices","href":"/networking/mqtt/topics-and-best-practices","docId":"networking/mqtt/topics-and-best-practices","unlisted":false}],"href":"/networking/mqtt/"},{"type":"category","label":"Networking Concepts","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Addressing Methods / cast protocols","href":"/networking/networking-concepts/addressing-methods-cast-protocols","docId":"networking/networking-concepts/addressing-methods-cast-protocols","unlisted":false},{"type":"link","label":"Book - Computer Networks","href":"/networking/networking-concepts/book-computer-networks","docId":"networking/networking-concepts/book-computer-networks","unlisted":false},{"type":"link","label":"CIDR","href":"/networking/networking-concepts/cidr","docId":"networking/networking-concepts/cidr","unlisted":false},{"type":"link","label":"Data Center Networking","href":"/networking/networking-concepts/data-center-networking","docId":"networking/networking-concepts/data-center-networking","unlisted":false},{"type":"link","label":"Forward Error Correction","href":"/networking/networking-concepts/forward-error-correction","docId":"networking/networking-concepts/forward-error-correction","unlisted":false},{"type":"link","label":"Intro","href":"/networking/networking-concepts/intro","docId":"networking/networking-concepts/intro","unlisted":false},{"type":"link","label":"IP","href":"/networking/networking-concepts/ip","docId":"networking/networking-concepts/ip","unlisted":false},{"type":"link","label":"Network Sockets/Ports","href":"/networking/networking-concepts/network-sockets-ports","docId":"networking/networking-concepts/network-sockets-ports","unlisted":false},{"type":"link","label":"Networking Fabric","href":"/networking/networking-concepts/networking-fabric","docId":"networking/networking-concepts/networking-fabric","unlisted":false},{"type":"link","label":"OSI Layers","href":"/networking/networking-concepts/osi-layers","docId":"networking/networking-concepts/osi-layers","unlisted":false},{"type":"link","label":"Others","href":"/networking/networking-concepts/others","docId":"networking/networking-concepts/others","unlisted":false},{"type":"link","label":"Peer to Peer Networks","href":"/networking/networking-concepts/peer-to-peer","docId":"networking/networking-concepts/peer-to-peer","unlisted":false},{"type":"link","label":"Questions","href":"/networking/networking-concepts/questions","docId":"networking/networking-concepts/questions","unlisted":false},{"type":"link","label":"Routing","href":"/networking/networking-concepts/routing","docId":"networking/networking-concepts/routing","unlisted":false},{"type":"link","label":"Sockets","href":"/networking/networking-concepts/sockets","docId":"networking/networking-concepts/sockets","unlisted":false},{"type":"link","label":"TCP/IP","href":"/networking/networking-concepts/tcp-ip","docId":"networking/networking-concepts/tcp-ip","unlisted":false}],"href":"/networking/networking-concepts/"},{"type":"category","label":"Others","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"5G Wireless Networking","href":"/networking/others/5g-wireless-networking","docId":"networking/others/5g-wireless-networking","unlisted":false},{"type":"link","label":"Apache Avro","href":"/networking/others/apache-avro","docId":"networking/others/apache-avro","unlisted":false},{"type":"link","label":"Apache Parquet","href":"/networking/others/apache-parquet","docId":"networking/others/apache-parquet","unlisted":false},{"type":"link","label":"Data formats","href":"/networking/others/data-formats","docId":"networking/others/data-formats","unlisted":false},{"type":"link","label":"Delta Lake Tutorial","href":"/networking/others/delta-lake-tutorial","docId":"networking/others/delta-lake-tutorial","unlisted":false},{"type":"link","label":"Delta Lake","href":"/networking/others/delta-lake","docId":"networking/others/delta-lake","unlisted":false},{"type":"link","label":"Falcor","href":"/networking/others/falcor","docId":"networking/others/falcor","unlisted":false},{"type":"link","label":"File Format Comparisons","href":"/networking/others/file-formats-comparisons","docId":"networking/others/file-formats-comparisons","unlisted":false},{"type":"link","label":"File Formats","href":"/networking/others/file-formats","docId":"networking/others/file-formats","unlisted":false},{"type":"category","label":"gRPC","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/networking/others/grpc/commands","docId":"networking/others/grpc/commands","unlisted":false},{"type":"link","label":"Comparison","href":"/networking/others/grpc/comparison","docId":"networking/others/grpc/comparison","unlisted":false},{"type":"link","label":"Concepts","href":"/networking/others/grpc/concepts","docId":"networking/others/grpc/concepts","unlisted":false},{"type":"link","label":"Guides","href":"/networking/others/grpc/guides","docId":"networking/others/grpc/guides","unlisted":false},{"type":"link","label":"gRPC","href":"/networking/others/grpc/intro","docId":"networking/others/grpc/intro","unlisted":false},{"type":"link","label":"Others","href":"/networking/others/grpc/others","docId":"networking/others/grpc/others","unlisted":false}],"href":"/networking/others/grpc/"},{"type":"link","label":"Others","href":"/networking/others/other","docId":"networking/others/other","unlisted":false},{"type":"link","label":"Protocol Buffers Protobuf","href":"/networking/others/protocol-buffers-protobuf","docId":"networking/others/protocol-buffers-protobuf","unlisted":false},{"type":"link","label":"RPC","href":"/networking/others/rpc","docId":"networking/others/rpc","unlisted":false},{"type":"link","label":"Serialization/Deserialization","href":"/networking/others/serialization-deserialization","docId":"networking/others/serialization-deserialization","unlisted":false},{"type":"link","label":"VPN Tools","href":"/networking/others/vpn-tools","docId":"networking/others/vpn-tools","unlisted":false},{"type":"link","label":"VPN","href":"/networking/others/vpn","docId":"networking/others/vpn","unlisted":false}],"href":"/networking/others/"},{"type":"category","label":"Protocols","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"AMQP","href":"/networking/protocols/amqp","docId":"networking/protocols/amqp","unlisted":false},{"type":"link","label":"DNS Domain Name System","href":"/networking/protocols/dns-domain-name-system","docId":"networking/protocols/dns-domain-name-system","unlisted":false},{"type":"link","label":"GraphQL","href":"/networking/protocols/graphql","docId":"networking/protocols/graphql","unlisted":false},{"type":"link","label":"HTTP/3 QUIC","href":"/networking/protocols/http-3-quic","docId":"networking/protocols/http-3-quic","unlisted":false},{"type":"link","label":"HTTP / HTTPS","href":"/networking/protocols/http-https","docId":"networking/protocols/http-https","unlisted":false},{"type":"link","label":"Http Status Code","href":"/networking/protocols/http-status-code","docId":"networking/protocols/http-status-code","unlisted":false},{"type":"link","label":"Protocols","href":"/networking/protocols/intro","docId":"networking/protocols/intro","unlisted":false},{"type":"link","label":"Messaging","href":"/networking/protocols/messaging","docId":"networking/protocols/messaging","unlisted":false},{"type":"link","label":"OpenAPI","href":"/networking/protocols/openapi","docId":"networking/protocols/openapi","unlisted":false},{"type":"link","label":"OpenThread","href":"/networking/protocols/openthread","docId":"networking/protocols/openthread","unlisted":false},{"type":"link","label":"Others","href":"/networking/protocols/others","docId":"networking/protocols/others","unlisted":false},{"type":"link","label":"Protocols Intro","href":"/networking/protocols/protocols-intro","docId":"networking/protocols/protocols-intro","unlisted":false},{"type":"link","label":"REST Representational State Transfer / RESTFul","href":"/networking/protocols/rest-representational-state-transfer-restful","docId":"networking/protocols/rest-representational-state-transfer-restful","unlisted":false},{"type":"link","label":"Rsocket","href":"/networking/protocols/rsocket","docId":"networking/protocols/rsocket","unlisted":false},{"type":"category","label":"TCP (Connection Oriented Protocol)","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Flow Control","href":"/networking/protocols/tcp-connection-oriented-protocol/flow-control","docId":"networking/protocols/tcp-connection-oriented-protocol/flow-control","unlisted":false}],"href":"/networking/protocols/tcp-connection-oriented-protocol/"},{"type":"link","label":"UDP","href":"/networking/protocols/udp","docId":"networking/protocols/udp","unlisted":false},{"type":"link","label":"Video / Live Streaming","href":"/networking/protocols/video-live-streaming","docId":"networking/protocols/video-live-streaming","unlisted":false},{"type":"link","label":"Weave","href":"/networking/protocols/weave","docId":"networking/protocols/weave","unlisted":false},{"type":"link","label":"WebSockets","href":"/networking/protocols/websockets","docId":"networking/protocols/websockets","unlisted":false},{"type":"link","label":"ZeroMQ: Distributed Messaging","href":"/networking/protocols/zeromq-distributed-messaging","docId":"networking/protocols/zeromq-distributed-messaging","unlisted":false}],"href":"/networking/protocols/"}],"href":"/networking/"},{"type":"category","label":"Psychology","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Biases / Fallacies","href":"/psychology/biases-fallacies","docId":"psychology/biases-fallacies","unlisted":false},{"type":"link","label":"Brain","href":"/psychology/brain","docId":"psychology/brain","unlisted":false},{"type":"link","label":"Burnout","href":"/psychology/burnout","docId":"psychology/burnout","unlisted":false},{"type":"link","label":"Consumerism","href":"/psychology/consumerism","docId":"psychology/consumerism","unlisted":false},{"type":"link","label":"Course - Mindshift","href":"/psychology/course-mindshift","docId":"psychology/course-mindshift","unlisted":false},{"type":"link","label":"Criticism / Criticizing / Criticize / Critic","href":"/psychology/criticism","docId":"psychology/criticism","unlisted":false},{"type":"link","label":"Defence Mechanisms","href":"/psychology/defence-mechanisms","docId":"psychology/defence-mechanisms","unlisted":false},{"type":"link","label":"Emotions","href":"/psychology/emotions","docId":"psychology/emotions","unlisted":false},{"type":"link","label":"Habits","href":"/psychology/habits","docId":"psychology/habits","unlisted":false},{"type":"link","label":"Human Psychology & Thinking","href":"/psychology/human-psychology-and-thinking","docId":"psychology/human-psychology-and-thinking","unlisted":false},{"type":"link","label":"Ikigai","href":"/psychology/ikigai","docId":"psychology/ikigai","unlisted":false},{"type":"link","label":"Intelligence","href":"/psychology/intelligence","docId":"psychology/intelligence","unlisted":false},{"type":"link","label":"Psychology","href":"/psychology/intro","docId":"psychology/intro","unlisted":false},{"type":"category","label":"Learning","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Chunking - The Essentials","href":"/psychology/learning/chunking-the-essentials","docId":"psychology/learning/chunking-the-essentials","unlisted":false},{"type":"link","label":"Concentration / Mindfulness / Attention / Focus / Hard Work","href":"/psychology/learning/concentration-mindfulness-attention-focus-hard-work","docId":"psychology/learning/concentration-mindfulness-attention-focus-hard-work","unlisted":false},{"type":"link","label":"Course - Learning How to Learn","href":"/psychology/learning/course-learning-how-to-learn","docId":"psychology/learning/course-learning-how-to-learn","unlisted":false},{"type":"link","label":"Exams","href":"/psychology/learning/exams","docId":"psychology/learning/exams","unlisted":false},{"type":"link","label":"Learning - Intro","href":"/psychology/learning/learning-intro","docId":"psychology/learning/learning-intro","unlisted":false},{"type":"link","label":"Memory","href":"/psychology/learning/memory","docId":"psychology/learning/memory","unlisted":false},{"type":"link","label":"Mistakes / Apology","href":"/psychology/learning/mistakes-apology","docId":"psychology/learning/mistakes-apology","unlisted":false},{"type":"link","label":"Note Taking / Second Brain / PKM / Zettelkasten / Digital Garden","href":"/psychology/learning/note-taking-second-brain-pkm-zettelkasten","docId":"psychology/learning/note-taking-second-brain-pkm-zettelkasten","unlisted":false},{"type":"link","label":"Speed Reading","href":"/psychology/learning/speed-reading","docId":"psychology/learning/speed-reading","unlisted":false},{"type":"link","label":"Tips","href":"/psychology/learning/tips","docId":"psychology/learning/tips","unlisted":false}],"href":"/psychology/learning/"},{"type":"link","label":"Life / Relationship / People","href":"/psychology/life-relationship-people","docId":"psychology/life-relationship-people","unlisted":false},{"type":"link","label":"Mental Models","href":"/psychology/mental-models","docId":"psychology/mental-models","unlisted":false},{"type":"link","label":"Others","href":"/psychology/others","docId":"psychology/others","unlisted":false},{"type":"link","label":"Paradox","href":"/psychology/paradox","docId":"psychology/paradox","unlisted":false},{"type":"link","label":"Parenting / children","href":"/psychology/parenting","docId":"psychology/parenting","unlisted":false},{"type":"link","label":"People","href":"/psychology/people","docId":"psychology/people","unlisted":false},{"type":"link","label":"Personality","href":"/psychology/personality","docId":"psychology/personality","unlisted":false},{"type":"link","label":"Power","href":"/psychology/power","docId":"psychology/power","unlisted":false},{"type":"link","label":"Procrastination","href":"/psychology/procrastination","docId":"psychology/procrastination","unlisted":false},{"type":"link","label":"Productivity / Productive / Time Management / TODO","href":"/psychology/productivity-productive-time-management-todo","docId":"psychology/productivity-productive-time-management-todo","unlisted":false},{"type":"link","label":"Research","href":"/psychology/research","docId":"psychology/research","unlisted":false},{"type":"link","label":"Self Awareness","href":"/psychology/self-awareness","docId":"psychology/self-awareness","unlisted":false},{"type":"link","label":"Self Control / Will Power","href":"/psychology/self-control-will-power","docId":"psychology/self-control-will-power","unlisted":false},{"type":"link","label":"Sleep","href":"/psychology/sleep","docId":"psychology/sleep","unlisted":false},{"type":"category","label":"Soft Skills","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Asking Right Questions","href":"/psychology/soft-skills/asking-right-questions","docId":"psychology/soft-skills/asking-right-questions","unlisted":false},{"type":"link","label":"Disagreement / Feedback","href":"/psychology/soft-skills/disagreement-feedback","docId":"psychology/soft-skills/disagreement-feedback","unlisted":false},{"type":"link","label":"Listening","href":"/psychology/soft-skills/listening","docId":"psychology/soft-skills/listening","unlisted":false},{"type":"link","label":"Negotiation Tips","href":"/psychology/soft-skills/negotiation","docId":"psychology/soft-skills/negotiation","unlisted":false},{"type":"link","label":"Prioritization / Leverage","href":"/psychology/soft-skills/prioritization-leverage","docId":"psychology/soft-skills/prioritization-leverage","unlisted":false},{"type":"link","label":"Reasoning","href":"/psychology/soft-skills/reasoning","docId":"psychology/soft-skills/reasoning","unlisted":false},{"type":"link","label":"Speaking - Phrases / Quotes","href":"/psychology/soft-skills/speaking-phrases-quotes","docId":"psychology/soft-skills/speaking-phrases-quotes","unlisted":false},{"type":"link","label":"Speaking / Story / Talking / Presentation / Phrases / Body Language","href":"/psychology/soft-skills/speaking-story-talking-conversation-presentation-phrases","docId":"psychology/soft-skills/speaking-story-talking-conversation-presentation-phrases","unlisted":false},{"type":"link","label":"Writing / Newsletter","href":"/psychology/soft-skills/writing","docId":"psychology/soft-skills/writing","unlisted":false}],"href":"/psychology/soft-skills/"},{"type":"link","label":"Stoicism","href":"/psychology/stoicism","docId":"psychology/stoicism","unlisted":false},{"type":"link","label":"Strategic Thinking","href":"/psychology/strategic-thinking","docId":"psychology/strategic-thinking","unlisted":false},{"type":"link","label":"Thinking Mental Models","href":"/psychology/thinking-mental-models","docId":"psychology/thinking-mental-models","unlisted":false},{"type":"link","label":"Travelling","href":"/psychology/travelling","docId":"psychology/travelling","unlisted":false},{"type":"link","label":"Trust","href":"/psychology/trust","docId":"psychology/trust","unlisted":false}],"href":"/psychology/"},{"type":"category","label":"Python","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Advanced","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture","href":"/python/advanced/architecture","docId":"python/advanced/architecture","unlisted":false},{"type":"link","label":"Concurrency","href":"/python/advanced/concurrency","docId":"python/advanced/concurrency","unlisted":false},{"type":"link","label":"CPython","href":"/python/advanced/cpython","docId":"python/advanced/cpython","unlisted":false},{"type":"link","label":"Faster Python","href":"/python/advanced/faster-python","docId":"python/advanced/faster-python","unlisted":false},{"type":"link","label":"Idiomatic Python","href":"/python/advanced/idiomatic-python","docId":"python/advanced/idiomatic-python","unlisted":false},{"type":"link","label":"Memory Management","href":"/python/advanced/memory-management","docId":"python/advanced/memory-management","unlisted":false},{"type":"link","label":"Mixin","href":"/python/advanced/mixin","docId":"python/advanced/mixin","unlisted":false},{"type":"link","label":"Others","href":"/python/advanced/others","docId":"python/advanced/others","unlisted":false},{"type":"link","label":"Python Tricks","href":"/python/advanced/python-tricks","docId":"python/advanced/python-tricks","unlisted":false},{"type":"link","label":"Python Versions","href":"/python/advanced/python-versions","docId":"python/advanced/python-versions","unlisted":false},{"type":"link","label":"Super","href":"/python/advanced/super","docId":"python/advanced/super","unlisted":false},{"type":"link","label":"Web Scraping","href":"/python/advanced/web-scraping","docId":"python/advanced/web-scraping","unlisted":false}],"href":"/python/advanced/"},{"type":"category","label":"Django","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Admin site","href":"/python/django/admin-site","docId":"python/django/admin-site","unlisted":false},{"type":"link","label":"Advanced","href":"/python/django/advanced","docId":"python/django/advanced","unlisted":false},{"type":"link","label":"Architecture","href":"/python/django/architecture","docId":"python/django/architecture","unlisted":false},{"type":"link","label":"Authentication / Authorization","href":"/python/django/authentication-authorization","docId":"python/django/authentication-authorization","unlisted":false},{"type":"link","label":"Cheatsheet","href":"/python/django/cheatsheet","docId":"python/django/cheatsheet","unlisted":false},{"type":"link","label":"Commands","href":"/python/django/commands","docId":"python/django/commands","unlisted":false},{"type":"link","label":"Content Types","href":"/python/django/content-types","docId":"python/django/content-types","unlisted":false},{"type":"link","label":"Django Rest Framework DRF","href":"/python/django/django-rest-framework-drf","docId":"python/django/django-rest-framework-drf","unlisted":false},{"type":"link","label":"Django Template Language","href":"/python/django/django-template-language","docId":"python/django/django-template-language","unlisted":false},{"type":"link","label":"Docs - Topic Guides","href":"/python/django/docs-topic-guides","docId":"python/django/docs-topic-guides","unlisted":false},{"type":"link","label":"Libaries","href":"/python/django/libraries","docId":"python/django/libraries","unlisted":false},{"type":"link","label":"Logging","href":"/python/django/logging","docId":"python/django/logging","unlisted":false},{"type":"link","label":"Models","href":"/python/django/models","docId":"python/django/models","unlisted":false},{"type":"link","label":"Optimizations","href":"/python/django/optimizations","docId":"python/django/optimizations","unlisted":false},{"type":"link","label":"Other Topics","href":"/python/django/other-topics","docId":"python/django/other-topics","unlisted":false},{"type":"link","label":"Others","href":"/python/django/others","docId":"python/django/others","unlisted":false},{"type":"link","label":"Overview","href":"/python/django/overview","docId":"python/django/overview","unlisted":false},{"type":"link","label":"QuerySet & Query Expressions","href":"/python/django/queryset-and-query-expressions","docId":"python/django/queryset-and-query-expressions","unlisted":false},{"type":"link","label":"Unicode","href":"/python/django/unicode","docId":"python/django/unicode","unlisted":false}],"href":"/python/django/"},{"type":"category","label":"Documentation","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"1. Intro","href":"/python/documentation/01-intro","docId":"python/documentation/01-intro","unlisted":false},{"type":"link","label":"2. Built-in Functions","href":"/python/documentation/02-built-in-functions","docId":"python/documentation/02-built-in-functions","unlisted":false},{"type":"link","label":"3. Built-in Constants","href":"/python/documentation/03-built-in-constants","docId":"python/documentation/03-built-in-constants","unlisted":false},{"type":"link","label":"4. Built-in Types","href":"/python/documentation/04-built-in-types","docId":"python/documentation/04-built-in-types","unlisted":false},{"type":"link","label":"6. Text Processing Services","href":"/python/documentation/06-text-processing-services","docId":"python/documentation/06-text-processing-services","unlisted":false},{"type":"link","label":"7. Binary Data Services","href":"/python/documentation/07-binary-data-services","docId":"python/documentation/07-binary-data-services","unlisted":false},{"type":"link","label":"8. Data Types","href":"/python/documentation/08-data-types","docId":"python/documentation/08-data-types","unlisted":false},{"type":"link","label":"9. Numeric and Mathematical Modules","href":"/python/documentation/09-numeric-and-mathematical-modules","docId":"python/documentation/09-numeric-and-mathematical-modules","unlisted":false},{"type":"link","label":"10. Functional Programming Modules","href":"/python/documentation/10-functional-programming-modules","docId":"python/documentation/10-functional-programming-modules","unlisted":false},{"type":"link","label":"11. File and Directory Access","href":"/python/documentation/11-file-and-directory-access","docId":"python/documentation/11-file-and-directory-access","unlisted":false},{"type":"link","label":"12. Data Persistence","href":"/python/documentation/12-data-persistence","docId":"python/documentation/12-data-persistence","unlisted":false},{"type":"link","label":"14. File Formats","href":"/python/documentation/14-file-formats","docId":"python/documentation/14-file-formats","unlisted":false},{"type":"link","label":"15. Cryptographic Services","href":"/python/documentation/15-cryptographic-services","docId":"python/documentation/15-cryptographic-services","unlisted":false},{"type":"link","label":"16. Generic Operating System Services / Logging","href":"/python/documentation/16-generic-operating-system-services-logging","docId":"python/documentation/16-generic-operating-system-services-logging","unlisted":false},{"type":"link","label":"17. Concurrent Execution","href":"/python/documentation/17-concurrent-execution","docId":"python/documentation/17-concurrent-execution","unlisted":false},{"type":"link","label":"18. Interprocess Communication and Networking","href":"/python/documentation/18-interprocess-communication-and-networking","docId":"python/documentation/18-interprocess-communication-and-networking","unlisted":false},{"type":"link","label":"19. Internet Data Handling","href":"/python/documentation/19-internet-data-handling","docId":"python/documentation/19-internet-data-handling","unlisted":false},{"type":"link","label":"21. Structured Markup Processing Tools","href":"/python/documentation/21-structured-markup-processing-tools","docId":"python/documentation/21-structured-markup-processing-tools","unlisted":false},{"type":"link","label":"22. Internet Protocols and Support","href":"/python/documentation/22-internet-protocols-and-support","docId":"python/documentation/22-internet-protocols-and-support","unlisted":false},{"type":"category","label":"27. Development Tools","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Static Code Analysis","href":"/python/documentation/27-development-tools/static-code-analysis","docId":"python/documentation/27-development-tools/static-code-analysis","unlisted":false},{"type":"link","label":"Testing","href":"/python/documentation/27-development-tools/testing","docId":"python/documentation/27-development-tools/testing","unlisted":false}],"href":"/python/documentation/27-development-tools/"},{"type":"link","label":"28. Debugging and Profiling","href":"/python/documentation/28-debugging-and-profiling","docId":"python/documentation/28-debugging-and-profiling","unlisted":false},{"type":"link","label":"30. Python Runtime Services","href":"/python/documentation/30-python-runtime-services","docId":"python/documentation/30-python-runtime-services","unlisted":false},{"type":"link","label":"33. Python Language Services","href":"/python/documentation/33-python-language-services","docId":"python/documentation/33-python-language-services","unlisted":false},{"type":"link","label":"PEP","href":"/python/documentation/pep","docId":"python/documentation/pep","unlisted":false},{"type":"link","label":"Python HowTos","href":"/python/documentation/python-howtos","docId":"python/documentation/python-howtos","unlisted":false},{"type":"link","label":"Python Language Reference","href":"/python/documentation/python-language-reference","docId":"python/documentation/python-language-reference","unlisted":false},{"type":"link","label":"The Python Standard Library","href":"/python/documentation/the-python-standard-library","docId":"python/documentation/the-python-standard-library","unlisted":false}],"href":"/python/documentation/"},{"type":"category","label":"Others","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"boto & boto3","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Slides","href":"/python/others/boto-and-boto3/slides","docId":"python/others/boto-and-boto3/slides","unlisted":false}],"href":"/python/others/boto-and-boto3/"},{"type":"category","label":"FastAPI","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Internal working","href":"/python/others/fastapi/internal-working","docId":"python/others/fastapi/internal-working","unlisted":false}],"href":"/python/others/fastapi/"},{"type":"category","label":"Flask","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Documentation","href":"/python/others/flask/documentation","docId":"python/others/flask/documentation","unlisted":false},{"type":"link","label":"Flask-sqlalchemy","href":"/python/others/flask/flask-sqlalchemy","docId":"python/others/flask/flask-sqlalchemy","unlisted":false},{"type":"link","label":"Others","href":"/python/others/flask/others","docId":"python/others/flask/others","unlisted":false}],"href":"/python/others/flask/"},{"type":"link","label":"Frameworks","href":"/python/others/frameworks","docId":"python/others/frameworks","unlisted":false},{"type":"link","label":"Libraries","href":"/python/others/libraries","docId":"python/others/libraries","unlisted":false},{"type":"link","label":"PyMySQL","href":"/python/others/pymysql","docId":"python/others/pymysql","unlisted":false},{"type":"link","label":"Requests","href":"/python/others/requests","docId":"python/others/requests","unlisted":false},{"type":"category","label":"SQLAlchemy","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Models","href":"/python/others/sqlalchemy/models","docId":"python/others/sqlalchemy/models","unlisted":false},{"type":"link","label":"ORM","href":"/python/others/sqlalchemy/orm","docId":"python/others/sqlalchemy/orm","unlisted":false}],"href":"/python/others/sqlalchemy/"},{"type":"link","label":"Twisted","href":"/python/others/twisted","docId":"python/others/twisted","unlisted":false}],"href":"/python/others/"},{"type":"category","label":"Python","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Basic","href":"/python/python-intro/basic","docId":"python/python-intro/basic","unlisted":false},{"type":"link","label":"Classes","href":"/python/python-intro/classes","docId":"python/python-intro/classes","unlisted":false},{"type":"category","label":"Data Structure","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Dict Evolution","href":"/python/python-intro/data-structure/dict-evolution","docId":"python/python-intro/data-structure/dict-evolution","unlisted":false},{"type":"link","label":"Dictionary Architecture","href":"/python/python-intro/data-structure/dictionary-architecture","docId":"python/python-intro/data-structure/dictionary-architecture","unlisted":false},{"type":"link","label":"Dictionary","href":"/python/python-intro/data-structure/dictionary","docId":"python/python-intro/data-structure/dictionary","unlisted":false},{"type":"link","label":"List","href":"/python/python-intro/data-structure/list","docId":"python/python-intro/data-structure/list","unlisted":false},{"type":"link","label":"Set","href":"/python/python-intro/data-structure/set","docId":"python/python-intro/data-structure/set","unlisted":false},{"type":"link","label":"Tuples","href":"/python/python-intro/data-structure/tuples","docId":"python/python-intro/data-structure/tuples","unlisted":false}],"href":"/python/python-intro/data-structure/"},{"type":"link","label":"DateTime","href":"/python/python-intro/datetime","docId":"python/python-intro/datetime","unlisted":false},{"type":"link","label":"Exceptions","href":"/python/python-intro/exceptions","docId":"python/python-intro/exceptions","unlisted":false},{"type":"link","label":"File IO","href":"/python/python-intro/file-io","docId":"python/python-intro/file-io","unlisted":false},{"type":"link","label":"Functions","href":"/python/python-intro/functions","docId":"python/python-intro/functions","unlisted":false},{"type":"link","label":"Generators","href":"/python/python-intro/generators","docId":"python/python-intro/generators","unlisted":false},{"type":"link","label":"Input Output Template","href":"/python/python-intro/input-output-template","docId":"python/python-intro/input-output-template","unlisted":false},{"type":"link","label":"Iterators","href":"/python/python-intro/iterators","docId":"python/python-intro/iterators","unlisted":false},{"type":"link","label":"Keywords","href":"/python/python-intro/keywords","docId":"python/python-intro/keywords","unlisted":false},{"type":"link","label":"Loops","href":"/python/python-intro/loops","docId":"python/python-intro/loops","unlisted":false},{"type":"link","label":"Map, reduce, filter","href":"/python/python-intro/map-reduce-filter","docId":"python/python-intro/map-reduce-filter","unlisted":false},{"type":"link","label":"Mathematics","href":"/python/python-intro/mathematics","docId":"python/python-intro/mathematics","unlisted":false},{"type":"link","label":"Modules","href":"/python/python-intro/modules","docId":"python/python-intro/modules","unlisted":false},{"type":"link","label":"OOPS","href":"/python/python-intro/oops","docId":"python/python-intro/oops","unlisted":false},{"type":"link","label":"Operators","href":"/python/python-intro/operators","docId":"python/python-intro/operators","unlisted":false},{"type":"link","label":"Questions","href":"/python/python-intro/questions","docId":"python/python-intro/questions","unlisted":false},{"type":"link","label":"Regular Expressions","href":"/python/python-intro/regular-expressions","docId":"python/python-intro/regular-expressions","unlisted":false},{"type":"link","label":"Requirements file","href":"/python/python-intro/requirements-file","docId":"python/python-intro/requirements-file","unlisted":false},{"type":"link","label":"Resources","href":"/python/python-intro/resources","docId":"python/python-intro/resources","unlisted":false},{"type":"link","label":"Sorting","href":"/python/python-intro/sorting","docId":"python/python-intro/sorting","unlisted":false},{"type":"link","label":"Strings","href":"/python/python-intro/strings","docId":"python/python-intro/strings","unlisted":false},{"type":"link","label":"Time complexities","href":"/python/python-intro/time-complexities","docId":"python/python-intro/time-complexities","unlisted":false},{"type":"link","label":"virtualenv & pip","href":"/python/python-intro/virtualenv-and-pip","docId":"python/python-intro/virtualenv-and-pip","unlisted":false}],"href":"/python/python-intro/"}],"href":"/python/"},{"type":"link","label":"Deep Notes","href":"/","docId":"readme","unlisted":false},{"type":"category","label":"Technologies","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Apache","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Airflow","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Airflow Architecture","href":"/technologies/apache/airflow/airflow-architecture","docId":"technologies/apache/airflow/airflow-architecture","unlisted":false},{"type":"link","label":"Astronomer","href":"/technologies/apache/airflow/astronomer","docId":"technologies/apache/airflow/astronomer","unlisted":false},{"type":"link","label":"Commands / Configs","href":"/technologies/apache/airflow/commands-configs","docId":"technologies/apache/airflow/commands-configs","unlisted":false},{"type":"link","label":"Concepts","href":"/technologies/apache/airflow/concepts","docId":"technologies/apache/airflow/concepts","unlisted":false},{"type":"link","label":"Dags Example","href":"/technologies/apache/airflow/dags-example","docId":"technologies/apache/airflow/dags-example","unlisted":false},{"type":"link","label":"Airflow","href":"/technologies/apache/airflow/intro","docId":"technologies/apache/airflow/intro","unlisted":false},{"type":"link","label":"Others","href":"/technologies/apache/airflow/others","docId":"technologies/apache/airflow/others","unlisted":false},{"type":"link","label":"Parallelism","href":"/technologies/apache/airflow/parallelism","docId":"technologies/apache/airflow/parallelism","unlisted":false}],"href":"/technologies/apache/airflow/"},{"type":"link","label":"Apache Flink","href":"/technologies/apache/apache-flink","docId":"technologies/apache/apache-flink","unlisted":false},{"type":"category","label":"Apache Hadoop","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Apache Hadoop","href":"/technologies/apache/apache-hadoop/about","docId":"technologies/apache/apache-hadoop/about","unlisted":false},{"type":"link","label":"Big Data Hadoop Stack","href":"/technologies/apache/apache-hadoop/big-data-hadoop-stack","docId":"technologies/apache/apache-hadoop/big-data-hadoop-stack","unlisted":false},{"type":"link","label":"Hadoop MapReduce 1.0","href":"/technologies/apache/apache-hadoop/hadoop-mapreduce-1.0","docId":"technologies/apache/apache-hadoop/hadoop-mapreduce-1.0","unlisted":false},{"type":"link","label":"Hadoop MapReduce 2.0","href":"/technologies/apache/apache-hadoop/hadoop-mapreduce-2.0","docId":"technologies/apache/apache-hadoop/hadoop-mapreduce-2.0","unlisted":false},{"type":"link","label":"HDFS","href":"/technologies/apache/apache-hadoop/hdfs","docId":"technologies/apache/apache-hadoop/hdfs","unlisted":false},{"type":"link","label":"Intro","href":"/technologies/apache/apache-hadoop/intro","docId":"technologies/apache/apache-hadoop/intro","unlisted":false},{"type":"link","label":"MapReduce Examples","href":"/technologies/apache/apache-hadoop/mapreduce-examples","docId":"technologies/apache/apache-hadoop/mapreduce-examples","unlisted":false},{"type":"link","label":"Others","href":"/technologies/apache/apache-hadoop/others","docId":"technologies/apache/apache-hadoop/others","unlisted":false}],"href":"/technologies/apache/apache-hadoop/"},{"type":"link","label":"Apache HBase","href":"/technologies/apache/apache-hbase","docId":"technologies/apache/apache-hbase","unlisted":false},{"type":"link","label":"Apache Hive","href":"/technologies/apache/apache-hive","docId":"technologies/apache/apache-hive","unlisted":false},{"type":"link","label":"Hudi","href":"/technologies/apache/apache-hudi","docId":"technologies/apache/apache-hudi","unlisted":false},{"type":"link","label":"Apache Projects","href":"/technologies/apache/apache-projects","docId":"technologies/apache/apache-projects","unlisted":false},{"type":"link","label":"Apache Pulsar","href":"/technologies/apache/apache-pulsar","docId":"technologies/apache/apache-pulsar","unlisted":false},{"type":"link","label":"Apache Samza","href":"/technologies/apache/apache-samza","docId":"technologies/apache/apache-samza","unlisted":false},{"type":"category","label":"Apache Spark","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Intro","href":"/technologies/apache/apache-spark/00-intro","docId":"technologies/apache/apache-spark/00-intro","unlisted":false},{"type":"link","label":"Terms","href":"/technologies/apache/apache-spark/01-terms","docId":"technologies/apache/apache-spark/01-terms","unlisted":false},{"type":"link","label":"Spark Modules","href":"/technologies/apache/apache-spark/02-spark-modules","docId":"technologies/apache/apache-spark/02-spark-modules","unlisted":false},{"type":"link","label":"Processing Model","href":"/technologies/apache/apache-spark/03-processing-model","docId":"technologies/apache/apache-spark/03-processing-model","unlisted":false},{"type":"link","label":"Key points","href":"/technologies/apache/apache-spark/04-key-points","docId":"technologies/apache/apache-spark/04-key-points","unlisted":false},{"type":"link","label":"Spark Built-in Libraries","href":"/technologies/apache/apache-spark/05-spark-built-in-libraries","docId":"technologies/apache/apache-spark/05-spark-built-in-libraries","unlisted":false},{"type":"link","label":"Sliding Window Analytics","href":"/technologies/apache/apache-spark/06-sliding-window-analytics","docId":"technologies/apache/apache-spark/06-sliding-window-analytics","unlisted":false},{"type":"link","label":"Joins","href":"/technologies/apache/apache-spark/07-joins","docId":"technologies/apache/apache-spark/07-joins","unlisted":false},{"type":"link","label":"Examples","href":"/technologies/apache/apache-spark/08-examples","docId":"technologies/apache/apache-spark/08-examples","unlisted":false},{"type":"link","label":"DataFrame","href":"/technologies/apache/apache-spark/09-dataframe","docId":"technologies/apache/apache-spark/09-dataframe","unlisted":false},{"type":"link","label":"SQL Functions / Datasources","href":"/technologies/apache/apache-spark/10-sql-functions-datasources","docId":"technologies/apache/apache-spark/10-sql-functions-datasources","unlisted":false},{"type":"link","label":"Built-In Functions","href":"/technologies/apache/apache-spark/11-built-in-functions","docId":"technologies/apache/apache-spark/11-built-in-functions","unlisted":false},{"type":"link","label":"Others","href":"/technologies/apache/apache-spark/99-others","docId":"technologies/apache/apache-spark/99-others","unlisted":false}],"href":"/technologies/apache/apache-spark/"},{"type":"link","label":"Apache Storm","href":"/technologies/apache/apache-storm","docId":"technologies/apache/apache-storm","unlisted":false},{"type":"link","label":"Apache Zookeeper","href":"/technologies/apache/apache-zookeeper","docId":"technologies/apache/apache-zookeeper","unlisted":false},{"type":"category","label":"Celery","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Celery Backend","href":"/technologies/apache/celery/celery-backend","docId":"technologies/apache/celery/celery-backend","unlisted":false},{"type":"link","label":"Commands / Tools","href":"/technologies/apache/celery/commands-tools","docId":"technologies/apache/celery/commands-tools","unlisted":false},{"type":"link","label":"Workers","href":"/technologies/apache/celery/workers","docId":"technologies/apache/celery/workers","unlisted":false}],"href":"/technologies/apache/celery/"},{"type":"link","label":"CNCF","href":"/technologies/apache/cncf","docId":"technologies/apache/cncf","unlisted":false},{"type":"link","label":"Data Pipeline Architecture","href":"/technologies/apache/data-pipeline-architecture","docId":"technologies/apache/data-pipeline-architecture","unlisted":false},{"type":"link","label":"Others","href":"/technologies/apache/others","docId":"technologies/apache/others","unlisted":false}],"href":"/technologies/apache/"},{"type":"category","label":"Brokers","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"EMQTT","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/technologies/brokers/emqtt/commands","docId":"technologies/brokers/emqtt/commands","unlisted":false},{"type":"link","label":"Conf","href":"/technologies/brokers/emqtt/conf","docId":"technologies/brokers/emqtt/conf","unlisted":false},{"type":"link","label":"Deployment and Installation","href":"/technologies/brokers/emqtt/deployment-and-installation","docId":"technologies/brokers/emqtt/deployment-and-installation","unlisted":false},{"type":"link","label":"Plugins","href":"/technologies/brokers/emqtt/plugins","docId":"technologies/brokers/emqtt/plugins","unlisted":false}],"href":"/technologies/brokers/emqtt/"},{"type":"link","label":"Others","href":"/technologies/brokers/others","docId":"technologies/brokers/others","unlisted":false},{"type":"link","label":"RabbitMQ","href":"/technologies/brokers/rabbitmq","docId":"technologies/brokers/rabbitmq","unlisted":false},{"type":"link","label":"sMAP","href":"/technologies/brokers/smap","docId":"technologies/brokers/smap","unlisted":false},{"type":"category","label":"VerneMQ","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/technologies/brokers/vernemq/commands","docId":"technologies/brokers/vernemq/commands","unlisted":false}],"href":"/technologies/brokers/vernemq/"},{"type":"link","label":"Volttron","href":"/technologies/brokers/volttron","docId":"technologies/brokers/volttron","unlisted":false}],"href":"/technologies/brokers/"},{"type":"category","label":"Databricks","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Databricks","href":"/technologies/databricks/01-databricks","docId":"technologies/databricks/01-databricks","unlisted":false},{"type":"link","label":"Databricks in 5 minutes","href":"/technologies/databricks/02-databricks-getting-started","docId":"technologies/databricks/02-databricks-getting-started","unlisted":false},{"type":"link","label":"Optimizations","href":"/technologies/databricks/03-optimizations","docId":"technologies/databricks/03-optimizations","unlisted":false},{"type":"link","label":"Workflow","href":"/technologies/databricks/04-workflow","docId":"technologies/databricks/04-workflow","unlisted":false},{"type":"link","label":"Medallion Architecture","href":"/technologies/databricks/10-medallion-architecture","docId":"technologies/databricks/10-medallion-architecture","unlisted":false},{"type":"link","label":"Delta Live Tables","href":"/technologies/databricks/20-delta-live-tables","docId":"technologies/databricks/20-delta-live-tables","unlisted":false},{"type":"link","label":"Unity Catalog","href":"/technologies/databricks/30-unity-catalog","docId":"technologies/databricks/30-unity-catalog","unlisted":false},{"type":"link","label":"Databricks-commands","href":"/technologies/databricks/40-databricks-commands","docId":"technologies/databricks/40-databricks-commands","unlisted":false},{"type":"link","label":"Others","href":"/technologies/databricks/99-others","docId":"technologies/databricks/99-others","unlisted":false}],"href":"/technologies/databricks/"},{"type":"category","label":"Elasticsearch","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Analysis and Analyzers","href":"/technologies/elasticsearch/analysis-and-analyzers","docId":"technologies/elasticsearch/analysis-and-analyzers","unlisted":false},{"type":"link","label":"Architecture","href":"/technologies/elasticsearch/architecture","docId":"technologies/elasticsearch/architecture","unlisted":false},{"type":"link","label":"Commands","href":"/technologies/elasticsearch/commands","docId":"technologies/elasticsearch/commands","unlisted":false},{"type":"link","label":"ElastAlert","href":"/technologies/elasticsearch/elastalert","docId":"technologies/elasticsearch/elastalert","unlisted":false},{"type":"link","label":"Elasticsearch: The Definitive Guide","href":"/technologies/elasticsearch/elasticsearch-the-definitive-guide","docId":"technologies/elasticsearch/elasticsearch-the-definitive-guide","unlisted":false},{"type":"link","label":"ELK/EFK Stack /Elastic Stack / ElasticSearch","href":"/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch","docId":"technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch","unlisted":false},{"type":"link","label":"Full Text Searches","href":"/technologies/elasticsearch/full-text-searches","docId":"technologies/elasticsearch/full-text-searches","unlisted":false},{"type":"link","label":"Getting Started","href":"/technologies/elasticsearch/getting-started","docId":"technologies/elasticsearch/getting-started","unlisted":false},{"type":"link","label":"Information Retrieval","href":"/technologies/elasticsearch/information-retrieval","docId":"technologies/elasticsearch/information-retrieval","unlisted":false},{"type":"link","label":"Internal Working","href":"/technologies/elasticsearch/internal-working","docId":"technologies/elasticsearch/internal-working","unlisted":false},{"type":"link","label":"Others","href":"/technologies/elasticsearch/others","docId":"technologies/elasticsearch/others","unlisted":false}],"href":"/technologies/elasticsearch/"},{"type":"category","label":"Git","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Branching Strategies","href":"/technologies/git/branching-strategies","docId":"technologies/git/branching-strategies","unlisted":false},{"type":"link","label":"Commands","href":"/technologies/git/commands","docId":"technologies/git/commands","unlisted":false},{"type":"link","label":"Github","href":"/technologies/git/github","docId":"technologies/git/github","unlisted":false},{"type":"link","label":"Others","href":"/technologies/git/others","docId":"technologies/git/others","unlisted":false},{"type":"link","label":"Theory","href":"/technologies/git/theory","docId":"technologies/git/theory","unlisted":false}],"href":"/technologies/git/"},{"type":"category","label":"Kafka","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"confluent-kafka","href":"/technologies/kafka/confluent-kafka","docId":"technologies/kafka/confluent-kafka","unlisted":false},{"type":"link","label":"Installing Kafka","href":"/technologies/kafka/installing-kafka","docId":"technologies/kafka/installing-kafka","unlisted":false},{"type":"link","label":"Intro to Kafka","href":"/technologies/kafka/intro-to-kafka","docId":"technologies/kafka/intro-to-kafka","unlisted":false},{"type":"link","label":"Intro","href":"/technologies/kafka/intro","docId":"technologies/kafka/intro","unlisted":false},{"type":"link","label":"Kafka Architecture","href":"/technologies/kafka/kafka-architecture","docId":"technologies/kafka/kafka-architecture","unlisted":false},{"type":"link","label":"Kafka Commands","href":"/technologies/kafka/kafka-commands","docId":"technologies/kafka/kafka-commands","unlisted":false},{"type":"link","label":"Kafka Connect","href":"/technologies/kafka/kafka-connect","docId":"technologies/kafka/kafka-connect","unlisted":false},{"type":"link","label":"Kafka Consumers","href":"/technologies/kafka/kafka-consumers","docId":"technologies/kafka/kafka-consumers","unlisted":false},{"type":"link","label":"Kafka Listeners","href":"/technologies/kafka/kafka-listeners","docId":"technologies/kafka/kafka-listeners","unlisted":false},{"type":"link","label":"Kafka Producers","href":"/technologies/kafka/kafka-producers","docId":"technologies/kafka/kafka-producers","unlisted":false},{"type":"link","label":"kafka-python","href":"/technologies/kafka/kafka-python","docId":"technologies/kafka/kafka-python","unlisted":false},{"type":"link","label":"kafka-rest proxy","href":"/technologies/kafka/kafka-rest-proxy","docId":"technologies/kafka/kafka-rest-proxy","unlisted":false},{"type":"link","label":"Kafka schema-registry","href":"/technologies/kafka/kafka-schema-registry","docId":"technologies/kafka/kafka-schema-registry","unlisted":false},{"type":"link","label":"Kafka Streams","href":"/technologies/kafka/kafka-streams","docId":"technologies/kafka/kafka-streams","unlisted":false},{"type":"link","label":"Kafka Topic/Replication","href":"/technologies/kafka/kafka-topic-replication","docId":"technologies/kafka/kafka-topic-replication","unlisted":false},{"type":"link","label":"kafkacat","href":"/technologies/kafka/kafkacat","docId":"technologies/kafka/kafkacat","unlisted":false},{"type":"link","label":"Migration / Mirroring / Replication","href":"/technologies/kafka/migration-mirroring-replication","docId":"technologies/kafka/migration-mirroring-replication","unlisted":false},{"type":"link","label":"Monitoring","href":"/technologies/kafka/monitoring","docId":"technologies/kafka/monitoring","unlisted":false},{"type":"link","label":"Others","href":"/technologies/kafka/others","docId":"technologies/kafka/others","unlisted":false},{"type":"link","label":"Security","href":"/technologies/kafka/security","docId":"technologies/kafka/security","unlisted":false},{"type":"link","label":"Strimzi","href":"/technologies/kafka/strimzi","docId":"technologies/kafka/strimzi","unlisted":false}],"href":"/technologies/kafka/"},{"type":"category","label":"Others","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"FastTag","href":"/technologies/others/fasttag","docId":"technologies/others/fasttag","unlisted":false},{"type":"link","label":"Other Technologies","href":"/technologies/others/other-technologies","docId":"technologies/others/other-technologies","unlisted":false},{"type":"link","label":"Others - Distributed Systems","href":"/technologies/others/others-distributed-systems","docId":"technologies/others/others-distributed-systems","unlisted":false},{"type":"link","label":"Others - IoT","href":"/technologies/others/others-iot","docId":"technologies/others/others-iot","unlisted":false},{"type":"link","label":"Presto","href":"/technologies/others/presto","docId":"technologies/others/presto","unlisted":false}],"href":"/technologies/others/"}],"href":"/technologies/"}]},"docs":{"about-me/achievements-activities-awards":{"id":"about-me/achievements-activities-awards","title":"Achievements / Activities / Awards","description":"Achievements","sidebar":"tutorialSidebar"},"about-me/experience":{"id":"about-me/experience","title":"Experience","description":"Resume","sidebar":"tutorialSidebar"},"about-me/faqs":{"id":"about-me/faqs","title":"FAQs","description":"Describe yourself in a short phrase","sidebar":"tutorialSidebar"},"about-me/ideas/creating-a-business-startup":{"id":"about-me/ideas/creating-a-business-startup","title":"Creating a Business / Startup","description":"Brand name - How to create a great brand name | Jonathan Bell","sidebar":"tutorialSidebar"},"about-me/ideas/donations":{"id":"about-me/ideas/donations","title":"Donations","description":"Altruism / Compassion","sidebar":"tutorialSidebar"},"about-me/ideas/education":{"id":"about-me/ideas/education","title":"Education","description":"Education\'s purpose is to replace an empty mind with an open one.","sidebar":"tutorialSidebar"},"about-me/ideas/improvements-feedbacks":{"id":"about-me/ideas/improvements-feedbacks","title":"Improvements / Feedbacks","description":"Android","sidebar":"tutorialSidebar"},"about-me/ideas/intro":{"id":"about-me/ideas/intro","title":"Intro","description":"Once an idea has taken hold of the brain it\'s almost impossible to eradicate. An idea that is fully formed - fully understood - that sticks; right in there somewhere. -- Inception","sidebar":"tutorialSidebar"},"about-me/ideas/non-profit":{"id":"about-me/ideas/non-profit","title":"Non Profit","description":"Homeless shelter run by homeless people","sidebar":"tutorialSidebar"},"about-me/ideas/others":{"id":"about-me/ideas/others","title":"Others","description":"Examples / Products","sidebar":"tutorialSidebar"},"about-me/ideas/readme":{"id":"about-me/ideas/readme","title":"Ideas","description":"- Intro","sidebar":"tutorialSidebar"},"about-me/ideas/society":{"id":"about-me/ideas/society","title":"Society","description":"Gender Equality (Women Empowerment)","sidebar":"tutorialSidebar"},"about-me/ideas/startup-ideas-physical":{"id":"about-me/ideas/startup-ideas-physical","title":"Startup Ideas - Physical","description":"Consolidated Gig Marketplace","sidebar":"tutorialSidebar"},"about-me/ideas/startup-quotes":{"id":"about-me/ideas/startup-quotes","title":"Startup Quotes","description":"If you have to spell your startup name every time you say it, it\'s a bad name","sidebar":"tutorialSidebar"},"about-me/ideas/startups-ideas-saas":{"id":"about-me/ideas/startups-ideas-saas","title":"Startups Ideas - SAAS","description":"Create best software companies with Indian labour, since labour is cheap in India like Zoho","sidebar":"tutorialSidebar"},"about-me/ideas/thoughts-future-ideas-vision-prediction":{"id":"about-me/ideas/thoughts-future-ideas-vision-prediction","title":"Thoughts / Future / Ideas / Vision / Prediction","description":"1. Over time people will reduce reading books (Books will die)","sidebar":"tutorialSidebar"},"about-me/paper-publications-references":{"id":"about-me/paper-publications-references","title":"Papers & Publications","description":"Deepika Yadav, Pushpendra Singh, Kyle Montague, Vijay Kumar, Deepak Sood, Madeline Balaam, Drishti Sharma, Mona Duggal, Tom Bartindale, Delvin Varghese, and Patrick Olivier. 2017. Sangoshthi https://doi.org/10.1145/3038912.3052624","sidebar":"tutorialSidebar"},"about-me/personality":{"id":"about-me/personality","title":"Personality","description":"About Me","sidebar":"tutorialSidebar"},"about-me/projects/44-agri-tech-digital-transformation-case-study":{"id":"about-me/projects/44-agri-tech-digital-transformation-case-study","title":"Agri Tech Digital Transformation Case Study","description":"Case Study: Digital Transformation for an Agri-Tech Startup","sidebar":"tutorialSidebar"},"about-me/projects/45-traditional-ai-case-studies":{"id":"about-me/projects/45-traditional-ai-case-studies","title":"Traditional AI Case study","description":"Financial Technology (FinTech) Fraud Detection Case Study","sidebar":"tutorialSidebar"},"about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering":{"id":"about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering","title":"Podcast - Streamlining Cloud Migration Through Data Engineering","description":"In the fast-evolving world of cloud computing, a successful migration isn\'t just about moving infrastructure\u2014it\'s about handling data with precision. Data engineering plays a pivotal role in ensuring a seamless, efficient, and secure cloud migration.","sidebar":"tutorialSidebar"},"about-me/projects/47-genai-case-study-careers360":{"id":"about-me/projects/47-genai-case-study-careers360","title":"GenAI Case Study - Careers360","description":"Case Study: Enhancing Productivity at Careers360 with GenAI and Amazon Bedrock","sidebar":"tutorialSidebar"},"about-me/projects/48-rag-genai-presentation":{"id":"about-me/projects/48-rag-genai-presentation","title":"RAG / GenAI Presentation","description":"TFUG - TensorFlow User Group Ghaziabad","sidebar":"tutorialSidebar"},"about-me/projects/49-data-practical-use-cases":{"id":"about-me/projects/49-data-practical-use-cases","title":"Data Practical Use Cases","description":"Data Engineering","sidebar":"tutorialSidebar"},"about-me/projects/50-use-cases-aiml-logistics-warehousing":{"id":"about-me/projects/50-use-cases-aiml-logistics-warehousing","title":"Use Cases: AIML in Logistics and Warehousing","description":"To achieve 100% On-time Delivery (OTD) and reduce delivery lead time using AI/ML, consider the following use cases and solutions:","sidebar":"tutorialSidebar"},"about-me/projects/51-case-study-anomaly-detection":{"id":"about-me/projects/51-case-study-anomaly-detection","title":"Case Study: Anomaly Detection in Metric Data using Isolation Forest","description":"Introduction","sidebar":"tutorialSidebar"},"about-me/projects/52-pull-request-risk-tagging-heuristics":{"id":"about-me/projects/52-pull-request-risk-tagging-heuristics","title":"Pull Request Risk Tagging Heuristics","description":"What are all the heuristics that can be used to create a AI model that can create a \\"change risk tag\\" if the code changes is risky or not","sidebar":"tutorialSidebar"},"about-me/projects/53-mozark-cloud-cost-optimization":{"id":"about-me/projects/53-mozark-cloud-cost-optimization","title":"Mozark - Cloud Cost Optimization and Performance Enhancement","description":"Client Overview","sidebar":"tutorialSidebar"},"about-me/projects/54-airflow-kafka-migration":{"id":"about-me/projects/54-airflow-kafka-migration","title":"Airflow and Kafka Migration","description":"Client - Coto.World | Women-Only Community & Consultation App","sidebar":"tutorialSidebar"},"about-me/projects/55-azure-social-media-analytics":{"id":"about-me/projects/55-azure-social-media-analytics","title":"Azure Social Media Analytics","description":"Social Media is changing the ways we consume the internet. Users from almost every background have a social media presence and dedicate a significant amount of time to using social media.","sidebar":"tutorialSidebar"},"about-me/projects/56-freecharge-cost-optimization-dba":{"id":"about-me/projects/56-freecharge-cost-optimization-dba","title":"Freecharge - Cost Optimization and Database Administration","description":"Client Overview","sidebar":"tutorialSidebar"},"about-me/projects/57-careers360-cost-optimization":{"id":"about-me/projects/57-careers360-cost-optimization","title":"Careers360 Cost Optimization","description":"Client Overview","sidebar":"tutorialSidebar"},"about-me/projects/58-aws-gen-ai-hackathon-rag":{"id":"about-me/projects/58-aws-gen-ai-hackathon-rag","title":"AWS Gen AI Hackathon RAG","description":"Virtual Recruiter | GenAI - RAG - Google Slides","sidebar":"tutorialSidebar"},"about-me/projects/59-data-engineering-product-pitch-iot-industry":{"id":"about-me/projects/59-data-engineering-product-pitch-iot-industry","title":"Data Engineering Product Pitch IoT Industry","description":"Top Questions","sidebar":"tutorialSidebar"},"about-me/projects/60-data-engineering-case-studies":{"id":"about-me/projects/60-data-engineering-case-studies","title":"Data Engineering Case Studies","description":"Internet of Things (IoT)","sidebar":"tutorialSidebar"},"about-me/projects/61-general-application-management-case-study":{"id":"about-me/projects/61-general-application-management-case-study","title":"General Application Management Case Study","description":"Title","sidebar":"tutorialSidebar"},"about-me/projects/62-application-management-case-study-telecom":{"id":"about-me/projects/62-application-management-case-study-telecom","title":"Application Management Case Study - Telecom","description":"Title","sidebar":"tutorialSidebar"},"about-me/projects/63-mlops-master-document":{"id":"about-me/projects/63-mlops-master-document","title":"MLOps Master Document","description":"Introduction","sidebar":"tutorialSidebar"},"about-me/projects/64-mlops-case-studies":{"id":"about-me/projects/64-mlops-case-studies","title":"MLOps Case Studies","description":"Financial Technology (FinTech) Fraud Detection Case Study","sidebar":"tutorialSidebar"},"about-me/projects/65-problems-in-iot-industry":{"id":"about-me/projects/65-problems-in-iot-industry","title":"Problems in IoT Industry","description":"Top 5 Problems Faced by IoT Industry","sidebar":"tutorialSidebar"},"about-me/projects/66-iot-case-studies":{"id":"about-me/projects/66-iot-case-studies","title":"IoT Case Studies","description":"Zenatix Case Study","sidebar":"tutorialSidebar"},"about-me/projects/67-data-engineering-battle-cards":{"id":"about-me/projects/67-data-engineering-battle-cards","title":"Data Engineering - Battle Cards","description":"Battle Card 1: Migration Services","sidebar":"tutorialSidebar"},"about-me/projects/70-interview-datainsight-alerting-engine":{"id":"about-me/projects/70-interview-datainsight-alerting-engine","title":"Interview - Datainsight / Alerting Engine","description":"Data Insight","sidebar":"tutorialSidebar"},"about-me/projects/71-opstree-standard-proposal-format":{"id":"about-me/projects/71-opstree-standard-proposal-format","title":"Opstree Standard Proposal Format","description":"Landing Page","sidebar":"tutorialSidebar"},"about-me/projects/75-bake-io-data-engineering":{"id":"about-me/projects/75-bake-io-data-engineering","title":"Bake.io Data Engineering","description":"- Working on Databricks to create centralized data warehouse with bronze, silver and gold layers","sidebar":"tutorialSidebar"},"about-me/projects/80-stashfin":{"id":"about-me/projects/80-stashfin","title":"Stashfin","description":"Product","sidebar":"tutorialSidebar"},"about-me/projects/81-stashfin-terms":{"id":"about-me/projects/81-stashfin-terms","title":"Stashfin Terms","description":"- FCP - Free Credit Period","sidebar":"tutorialSidebar"},"about-me/projects/82-stashfin-metrics":{"id":"about-me/projects/82-stashfin-metrics","title":"Stashfin Metrics","description":"Management Metrics / Tools","sidebar":"tutorialSidebar"},"about-me/projects/85-stashfin-twitter-bot":{"id":"about-me/projects/85-stashfin-twitter-bot","title":"Stashfin Twitter Bot","description":"Enhancing Customer Support with a Twitter Bot: A Case Study for Stashfin","sidebar":"tutorialSidebar"},"about-me/projects/86-stashfin-customer-support":{"id":"about-me/projects/86-stashfin-customer-support","title":"Stashfin Customer Support","description":"Improvements","sidebar":"tutorialSidebar"},"about-me/projects/87-stashfin-team-management-culture":{"id":"about-me/projects/87-stashfin-team-management-culture","title":"Stashfin Team Management / Culture","description":"Hiring","sidebar":"tutorialSidebar"},"about-me/projects/88-stashfin-security-iam-apis":{"id":"about-me/projects/88-stashfin-security-iam-apis","title":"Stashfin Security / IAM / APIs","description":"Security","sidebar":"tutorialSidebar"},"about-me/projects/89-stashfin-devops-overhaul":{"id":"about-me/projects/89-stashfin-devops-overhaul","title":"Stashfin DevOps Overhaul","description":"- Scaled the stack and team to increase loan disbursals from 100K USD to 60M USD per month","sidebar":"tutorialSidebar"},"about-me/projects/90-stashfin-tech-stack-infra":{"id":"about-me/projects/90-stashfin-tech-stack-infra","title":"Stashfin Tech Stack / Infra","description":"Stashfin Infra Diagram","sidebar":"tutorialSidebar"},"about-me/projects/91-stashfin-aiml-use-cases":{"id":"about-me/projects/91-stashfin-aiml-use-cases","title":"Stashfin AIML Use Cases & Implementation","description":"1. Credit Scoring and Risk Assessment","sidebar":"tutorialSidebar"},"about-me/projects/98-others":{"id":"about-me/projects/98-others","title":"Others","description":"2024-09-03 - Manav Rachna - Sabyasachi","sidebar":"tutorialSidebar"},"about-me/projects/99-ciso-cybersecurity":{"id":"about-me/projects/99-ciso-cybersecurity","title":"CISO Cybersecurity","description":"- Implemented face detection using Viola-Jones Algorithm, corner detection using fixed points, Live Video Streaming using ffmpeg with scripting in python and product development using Java, Spring and Java-FX","sidebar":"tutorialSidebar"},"about-me/projects/readme":{"id":"about-me/projects/readme","title":"Projects","description":"Office Projects","sidebar":"tutorialSidebar"},"about-me/readme":{"id":"about-me/readme","title":"About Me","description":"- Resume","sidebar":"tutorialSidebar"},"about-me/social-links":{"id":"about-me/social-links","title":"Social Links","description":"Schedule a call with me - Deepak Sood | Calendly","sidebar":"tutorialSidebar"},"ai/big-data/characteristics":{"id":"ai/big-data/characteristics","title":"Characteristics","description":"Big Data includes huge volume, high velocity, and extensible variety of data.","sidebar":"tutorialSidebar"},"ai/big-data/data":{"id":"ai/big-data/data","title":"Data","description":"What is Data","sidebar":"tutorialSidebar"},"ai/big-data/data-masking":{"id":"ai/big-data/data-masking","title":"Data Masking","description":"What is data masking?","sidebar":"tutorialSidebar"},"ai/big-data/data-preprocessing":{"id":"ai/big-data/data-preprocessing","title":"Data Preprocessing","description":"Data Preprocessing","sidebar":"tutorialSidebar"},"ai/big-data/data-quality":{"id":"ai/big-data/data-quality","title":"# Data Quality","description":"Data Quality","sidebar":"tutorialSidebar"},"ai/big-data/design-of-hbase":{"id":"ai/big-data/design-of-hbase","title":"Design of HBase","description":"1. What is HBase","sidebar":"tutorialSidebar"},"ai/big-data/design-of-key-value-stores":{"id":"ai/big-data/design-of-key-value-stores","title":"Design of Key-Value Stores","description":"- We will discuss the design and insight of key-value/NoSQL stores for today\'s cloud storage systems.","sidebar":"tutorialSidebar"},"ai/big-data/design-of-zookeeper":{"id":"ai/big-data/design-of-zookeeper","title":"Design of Zookeeper","description":"Zookeeper - Service for coordinating processes of distributed applications","sidebar":"tutorialSidebar"},"ai/big-data/intro":{"id":"ai/big-data/intro","title":"Big Data","description":"Big data is a term used to refer to data sets that are too large or complex for traditional data-processing application software to adequately deal with.","sidebar":"tutorialSidebar"},"ai/big-data/page-rank":{"id":"ai/big-data/page-rank","title":"Page Rank","description":"https://towardsdatascience.com/pagerank-algorithm-fully-explained-dc794184b4af","sidebar":"tutorialSidebar"},"ai/big-data/parameter-servers":{"id":"ai/big-data/parameter-servers","title":"Parameter Servers","description":"Parameter Servers and Stale Synchronous Parallel Model","sidebar":"tutorialSidebar"},"ai/big-data/processing-engine":{"id":"ai/big-data/processing-engine","title":"Processing Engine","description":"A processing engine, sometimes called a processing framework, is responsible for performing data processing tasks. A comparison is probably the best way to understand this. Apache Hadoop is an open source software platform that also deals with \\"Big Data\\" and distributed computing. Hadoop has a processing engine, distinct from Spark, called MapReduce. MapReduce has its own particular way of optimizing tasks to be processed on multiple nodes and Spark has a different way. One of Sparks strengths is that it is a processing engine that can be used on its own, or used in place of Hadoop MapReduce, taking advantage of the other features of Hadoop.","sidebar":"tutorialSidebar"},"ai/big-data/readme":{"id":"ai/big-data/readme","title":"Big Data","description":"- Big Data","sidebar":"tutorialSidebar"},"ai/big-data/tools":{"id":"ai/big-data/tools","title":"Tools","description":"Data Hub","sidebar":"tutorialSidebar"},"ai/big-data/types-of-data":{"id":"ai/big-data/types-of-data","title":"Types of Data","description":"Types of Data - by organization","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/convolutional-neural-network-cnn":{"id":"ai/computer-vision-cv/convolutional-neural-network-cnn","title":"Convolutional Neural Network (CNN)","description":"Neural Networks","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/cv-libraries-tools":{"id":"ai/computer-vision-cv/cv-libraries-tools","title":"CV - Libraries / Tools","description":"SSD - Single Shot MultiBox Detector","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/examples":{"id":"ai/computer-vision-cv/examples","title":"Examples","description":"- Image Classifier","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/image-data-labeling-tools":{"id":"ai/computer-vision-cv/image-data-labeling-tools","title":"Image / Data Labeling Tools","description":"Open Source Data Labeling | Label Studio","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/image-formats":{"id":"ai/computer-vision-cv/image-formats","title":"Image Formats","description":"Exchangeable image file format (EXIF)","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/imagemagick":{"id":"ai/computer-vision-cv/imagemagick","title":"ImageMagick","description":"GitHub - ImageMagick/ImageMagick: \ud83e\uddd9\u200d\u2642\ufe0f ImageMagick 7","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/intro":{"id":"ai/computer-vision-cv/intro","title":"Computer Vision / CV Intro","description":"1. 13.1. Image Augmentation","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow":{"id":"ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow","title":"MNIST For ML Beginners | TensorFlow","description":"When one learns how to program, there\'s a tradition that the first thing you do is print \\"Hello World.\\" Just like programming has Hello World, machine learning has MNIST.","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/model-building-stages":{"id":"ai/computer-vision-cv/model-building-stages","title":"Model Building Stages","description":"1. Define the Problem","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/others":{"id":"ai/computer-vision-cv/others","title":"Others","description":"Locally Linear Embedding","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/pre-trained-models":{"id":"ai/computer-vision-cv/pre-trained-models","title":"Pre-Trained Models","description":"Pre-trained models\xa0are neural networks trained on large datasets before being fine-tuned for specific tasks. These models capture intricate patterns and features, making them highly effective for image classification. By leveraging pre-trained models, developers can save time and computational resources. They can also achieve high accuracy with less data. Popular models like VGG, ResNet, and Inception have set benchmarks in the field.","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/readme":{"id":"ai/computer-vision-cv/readme","title":"Computer Vision","description":"- Computer Vision (CV) Intro","sidebar":"tutorialSidebar"},"ai/data-science/data-analysis":{"id":"ai/data-science/data-analysis","title":"Data Analysis","description":"https://www.freecodecamp.org/learn/data-analysis-with-python","sidebar":"tutorialSidebar"},"ai/data-science/data-governance":{"id":"ai/data-science/data-governance","title":"Data Governance","description":"Data governance (DG) is the process of managing the availability, usability, integrity and security of the data in enterprise systems, based on internal data standards and policies that also control data usage. Effective data governance ensures that data is consistent and trustworthy and doesn\'t get misused. It\'s increasingly critical as organizations face new data privacy regulations and rely more and more on data analytics to help optimize operations and drive business decision-making.","sidebar":"tutorialSidebar"},"ai/data-science/data-mining":{"id":"ai/data-science/data-mining","title":"Data Mining","description":"Why data Mining","sidebar":"tutorialSidebar"},"ai/data-science/datasets":{"id":"ai/data-science/datasets","title":"Datasets","description":"Home - Data Commons","sidebar":"tutorialSidebar"},"ai/data-science/intro":{"id":"ai/data-science/intro","title":"Intro","description":"1. Problem Framing","sidebar":"tutorialSidebar"},"ai/data-science/questions":{"id":"ai/data-science/questions","title":"Questions","description":"Data Science","sidebar":"tutorialSidebar"},"ai/data-science/readme":{"id":"ai/data-science/readme","title":"Data Science","description":"- Intro","sidebar":"tutorialSidebar"},"ai/data-science/recommender-system":{"id":"ai/data-science/recommender-system","title":"Recommender System","description":"A Recommender System (a.k.a. Collaborative Filtering, Social Filtering, and Social Information Filtering) is an information filtering technique that takes details and data associated with a user\'s profile and compares it with similar data (habits, likes, opinions, etc.) of other users on the same service in order to present recommendations of what might be of interest to the original user.","sidebar":"tutorialSidebar"},"ai/data-science/statistics":{"id":"ai/data-science/statistics","title":"Statistics","description":"Statistics in Data Preparation","sidebar":"tutorialSidebar"},"ai/data-science/topics":{"id":"ai/data-science/topics","title":"Topics","description":"DBSCAN","sidebar":"tutorialSidebar"},"ai/data-visualization/bi-tools":{"id":"ai/data-visualization/bi-tools","title":"BI Tools","description":"https://www.toptal.com/business-intelligence/interview-questions","sidebar":"tutorialSidebar"},"ai/data-visualization/charts":{"id":"ai/data-visualization/charts","title":"Charts","description":"Graphic Types","sidebar":"tutorialSidebar"},"ai/data-visualization/d3-data-driven-documents":{"id":"ai/data-visualization/d3-data-driven-documents","title":"D3 (Data Driven Documents)","description":"https://www.freecodecamp.org/learn/data-visualization","sidebar":"tutorialSidebar"},"ai/data-visualization/intro":{"id":"ai/data-visualization/intro","title":"Data Visualization","description":"Exploratory and Explanatory visualization","sidebar":"tutorialSidebar"},"ai/data-visualization/matplotlib":{"id":"ai/data-visualization/matplotlib","title":"Matplotlib","description":"Matplotlib","sidebar":"tutorialSidebar"},"ai/data-visualization/metabase":{"id":"ai/data-visualization/metabase","title":"Metabase","description":"Metabase is an open source business intelligence tool. It lets you ask questions about your data, and displays answers in formats that make sense, whether that\'s a bar graph or a detailed table.","sidebar":"tutorialSidebar"},"ai/data-visualization/plotly":{"id":"ai/data-visualization/plotly","title":"Plotly","description":"similar to matplotlib","sidebar":"tutorialSidebar"},"ai/data-visualization/powerbi":{"id":"ai/data-visualization/powerbi","title":"PowerBI","description":"Questions","sidebar":"tutorialSidebar"},"ai/data-visualization/readme":{"id":"ai/data-visualization/readme","title":"Data Visualization","description":"- Data Visualization","sidebar":"tutorialSidebar"},"ai/data-visualization/tableau/architecture-components":{"id":"ai/data-visualization/tableau/architecture-components","title":"Architecture and Components","description":"- Tableau Server Architecture","sidebar":"tutorialSidebar"},"ai/data-visualization/tableau/augmented-analytics":{"id":"ai/data-visualization/tableau/augmented-analytics","title":"Augmented Analytics","description":"Augmented analytics is a class of analytics powered by artificial intelligence (AI) and machine learning (ML) that expands a human\u2019s ability to interact with data at a contextual level. We use AI to make analytics accessible so that more people can confidently explore and interact with data to drive meaningful decisions. From automated modeling to guided natural language queries, our augmented analytics capabilities are powerful and trusted to help organizations leverage their growing amount of data and empower a wider business audience to discover insights.","sidebar":"tutorialSidebar"},"ai/data-visualization/tableau/concepts":{"id":"ai/data-visualization/tableau/concepts","title":"Concepts","description":"Field Types: Dimensions and Measures, Blue and Green","sidebar":"tutorialSidebar"},"ai/data-visualization/tableau/dashboarding":{"id":"ai/data-visualization/tableau/dashboarding","title":"Dashboarding","description":"Changing Time from Date Range Filter","sidebar":"tutorialSidebar"},"ai/data-visualization/tableau/data-model":{"id":"ai/data-visualization/tableau/data-model","title":"Data Model","description":"Every data source that you create in Tableau has a data model. You can think of a data model as a diagram that tells Tableau how it should query data in the connected database tables.","sidebar":"tutorialSidebar"},"ai/data-visualization/tableau/data-sources":{"id":"ai/data-visualization/tableau/data-sources","title":"Data Sources","description":"Refresh Data Sources","sidebar":"tutorialSidebar"},"ai/data-visualization/tableau/others":{"id":"ai/data-visualization/tableau/others","title":"Others","description":"Optimizations","sidebar":"tutorialSidebar"},"ai/data-visualization/tableau/readme":{"id":"ai/data-visualization/tableau/readme","title":"Tableau","description":"- Architecture and Components","sidebar":"tutorialSidebar"},"ai/deep-learning/commands":{"id":"ai/deep-learning/commands","title":"Commands","description":"Libraries","sidebar":"tutorialSidebar"},"ai/deep-learning/components":{"id":"ai/deep-learning/components","title":"Components","description":"Components of a Deep Learning Network","sidebar":"tutorialSidebar"},"ai/deep-learning/dl-specialization":{"id":"ai/deep-learning/dl-specialization","title":"DL Specialization","description":"https://www.coursera.org/specializations/deep-learning","sidebar":"tutorialSidebar"},"ai/deep-learning/neural-network-and-deep-learning":{"id":"ai/deep-learning/neural-network-and-deep-learning","title":"Neural network and deep learning","description":"Logistic Regression - Binary Classification","sidebar":"tutorialSidebar"},"ai/deep-learning/others":{"id":"ai/deep-learning/others","title":"Others","description":"Neural networks racing car - https://www.youtube.com/watch?v=wL7tSgUpy8w","sidebar":"tutorialSidebar"},"ai/deep-learning/readme":{"id":"ai/deep-learning/readme","title":"Deep Learning","description":"- Roadmap","sidebar":"tutorialSidebar"},"ai/deep-learning/resources":{"id":"ai/deep-learning/resources","title":"Resources","description":"- GitHub - kjw0612/awesome-deep-vision: A curated list of deep learning resources for computer vision","sidebar":"tutorialSidebar"},"ai/deep-learning/roadmap":{"id":"ai/deep-learning/roadmap","title":"Roadmap","description":"complete roadmap to prepare for deep learning","sidebar":"tutorialSidebar"},"ai/hackathons":{"id":"ai/hackathons","title":"Hackathons","description":"Hackathon Problem Statement: Automated Root Cause Analysis with ML","sidebar":"tutorialSidebar"},"ai/libraries/aws-sagemaker":{"id":"ai/libraries/aws-sagemaker","title":"AWS Sagemaker","description":"image","sidebar":"tutorialSidebar"},"ai/libraries/deep-learning-frameworks":{"id":"ai/libraries/deep-learning-frameworks","title":"Deep Learning Frameworks","description":"Pytorch","sidebar":"tutorialSidebar"},"ai/libraries/distributed-training":{"id":"ai/libraries/distributed-training","title":"Distributed Training","description":"Architecture of Distributed Training","sidebar":"tutorialSidebar"},"ai/libraries/jax":{"id":"ai/libraries/jax","title":"JAX","description":"- J - Just-in-time","sidebar":"tutorialSidebar"},"ai/libraries/keras":{"id":"ai/libraries/keras","title":"Keras","description":"Keras 3 is a multi-backend deep learning framework, with support for JAX, TensorFlow, and PyTorch. Effortlessly build and train models for computer vision, natural language processing, audio processing, timeseries forecasting, recommender systems, etc.","sidebar":"tutorialSidebar"},"ai/libraries/ml-libraries":{"id":"ai/libraries/ml-libraries","title":"Libraries","description":"Deep Graph Library (DGL)","sidebar":"tutorialSidebar"},"ai/libraries/ml-monitoring":{"id":"ai/libraries/ml-monitoring","title":"ML Monitoring","description":"A Guide to Monitoring Machine Learning Models in Production | NVIDIA Technical Blog","sidebar":"tutorialSidebar"},"ai/libraries/mlops-model-deployment":{"id":"ai/libraries/mlops-model-deployment","title":"MLOps / Model Deployment","description":"image","sidebar":"tutorialSidebar"},"ai/libraries/readme":{"id":"ai/libraries/readme","title":"Libraries","description":"- AWS Sagemaker","sidebar":"tutorialSidebar"},"ai/libraries/tensorflow/core-tensorflow":{"id":"ai/libraries/tensorflow/core-tensorflow","title":"Core Tensorflow","description":"tf_estimator to create, train and evaluate an ML model","sidebar":"tutorialSidebar"},"ai/libraries/tensorflow/estimator-api":{"id":"ai/libraries/tensorflow/estimator-api","title":"Estimator API","description":"- Estimator API - Wrapping a model in a common set of APIs","sidebar":"tutorialSidebar"},"ai/libraries/tensorflow/intro":{"id":"ai/libraries/tensorflow/intro","title":"TensorFlow","description":"Tools","sidebar":"tutorialSidebar"},"ai/libraries/tensorflow/readme":{"id":"ai/libraries/tensorflow/readme","title":"TensorFlow","description":"- TensorFlow","sidebar":"tutorialSidebar"},"ai/libraries/tools":{"id":"ai/libraries/tools","title":"Tools","description":"AutoML (Automated Machine Learning)","sidebar":"tutorialSidebar"},"ai/llm/code-generators":{"id":"ai/llm/code-generators","title":"Code Generators","description":"Github Copilot","sidebar":"tutorialSidebar"},"ai/llm/design-patterns":{"id":"ai/llm/design-patterns","title":"Design patterns","description":"In-context learning","sidebar":"tutorialSidebar"},"ai/llm/fintech-use-cases":{"id":"ai/llm/fintech-use-cases","title":"Fintech Use Cases","description":"Customer Support and Chatbots","sidebar":"tutorialSidebar"},"ai/llm/genai-projects":{"id":"ai/llm/genai-projects","title":"GenAI Projects","description":"Projects on Large Language Models","sidebar":"tutorialSidebar"},"ai/llm/interview-questions":{"id":"ai/llm/interview-questions","title":"Interview Questions","description":"Can you provide a high-level overview of Transformers\' architecture?","sidebar":"tutorialSidebar"},"ai/llm/intro":{"id":"ai/llm/intro","title":"Intro","description":"LLM makes good programmers great, and not make bad programmers good","sidebar":"tutorialSidebar"},"ai/llm/libraries":{"id":"ai/llm/libraries","title":"Libraries","description":"Top Python libraries of 2023 | Tryolabs","sidebar":"tutorialSidebar"},"ai/llm/limitations-problems":{"id":"ai/llm/limitations-problems","title":"Model Limitations / Problems","description":"Hallucinations","sidebar":"tutorialSidebar"},"ai/llm/llm-building":{"id":"ai/llm/llm-building","title":"LLM Building","description":"- Create a Large Language Model from Scratch with Python - Tutorial - YouTube","sidebar":"tutorialSidebar"},"ai/llm/llm-tuning":{"id":"ai/llm/llm-tuning","title":"LLM Tuning","description":"The process of adapting a model to a new domain or set of custom use cases by training the model on new data","sidebar":"tutorialSidebar"},"ai/llm/models":{"id":"ai/llm/models","title":"Models","description":"Intro","sidebar":"tutorialSidebar"},"ai/llm/natural-language-to-sql":{"id":"ai/llm/natural-language-to-sql","title":"Natural Language to SQL","description":"Unified NLQ (Natural Language Query)","sidebar":"tutorialSidebar"},"ai/llm/prompt-engineering":{"id":"ai/llm/prompt-engineering","title":"Prompt Engineering","description":"Prompt design is the process of creating a prompt that is tailored to the specific task that the system is being asked to perform.","sidebar":"tutorialSidebar"},"ai/llm/prompt-examples":{"id":"ai/llm/prompt-examples","title":"Prompt Examples","description":"Prompts","sidebar":"tutorialSidebar"},"ai/llm/rag-hackathon-questions":{"id":"ai/llm/rag-hackathon-questions","title":"RAG Hackathon Questions","description":"Use case 1: Virtual recruiter","sidebar":"tutorialSidebar"},"ai/llm/rag-retrieval-augmented-generation":{"id":"ai/llm/rag-retrieval-augmented-generation","title":"RAG - retrieval-augmented generation","description":"Presentation - Empowering GenAI with RAG","sidebar":"tutorialSidebar"},"ai/llm/readme":{"id":"ai/llm/readme","title":"ChatGPT / LLM","description":"- Intro","sidebar":"tutorialSidebar"},"ai/llm/tools":{"id":"ai/llm/tools","title":"Tools","description":"ChatGPT / Bard","sidebar":"tutorialSidebar"},"ai/ml-algorithms/artificial-neural-networks":{"id":"ai/ml-algorithms/artificial-neural-networks","title":"Artificial Neural Networks","description":"image","sidebar":"tutorialSidebar"},"ai/ml-algorithms/association-rules-and-apriori-algorithm":{"id":"ai/ml-algorithms/association-rules-and-apriori-algorithm","title":"Association Rules & Apriori Algorithm","description":"Association Rule Mining","sidebar":"tutorialSidebar"},"ai/ml-algorithms/bagging-and-random-forest":{"id":"ai/ml-algorithms/bagging-and-random-forest","title":"Bagging and Random Forest","description":"Random Forest is one of the most popular machine learning algorithms. It is a type of ensemble machine learning algorithm called Bootstrap Aggregation or bagging.","sidebar":"tutorialSidebar"},"ai/ml-algorithms/bayes-classification":{"id":"ai/ml-algorithms/bayes-classification","title":"Bayes Classification","description":"Naive Bayes","sidebar":"tutorialSidebar"},"ai/ml-algorithms/boosting-and-adaboost":{"id":"ai/ml-algorithms/boosting-and-adaboost","title":"Boosting and Adaboost","description":"Boosting is an ensemble technique that attempts to create a strong classifier from a number of weak classifiers.","sidebar":"tutorialSidebar"},"ai/ml-algorithms/classification":{"id":"ai/ml-algorithms/classification","title":"Classification","description":"https://neptune.ml/blog/evaluation-metrics-binary-classification","sidebar":"tutorialSidebar"},"ai/ml-algorithms/clustering":{"id":"ai/ml-algorithms/clustering","title":"Clustering","description":"https://www.toptal.com/clustering/clustering-metrics-for-comparison","sidebar":"tutorialSidebar"},"ai/ml-algorithms/decision-tree":{"id":"ai/ml-algorithms/decision-tree","title":"Decision Tree","description":"Decision Tree for Big Data Analytics","sidebar":"tutorialSidebar"},"ai/ml-algorithms/dimensionality-reduction":{"id":"ai/ml-algorithms/dimensionality-reduction","title":"Dimensionality Reduction","description":"Dimensionality Reduction","sidebar":"tutorialSidebar"},"ai/ml-algorithms/embeddings-and-estimators":{"id":"ai/ml-algorithms/embeddings-and-estimators","title":"Embeddings & Estimators","description":"- Embeddings","sidebar":"tutorialSidebar"},"ai/ml-algorithms/ensemble-algorithms":{"id":"ai/ml-algorithms/ensemble-algorithms","title":"Ensemble Algorithms","description":"In statistics and machine learning, ensemble methods use multiple learning algorithms to obtain better predictive performance than could be obtained from any of the constituent learning algorithms alone. Unlike a statistical ensemble in statistical mechanics, which is usually infinite, a machine learning ensemble consists of only a concrete finite set of alternative models, but typically allows for much more flexible structure to exist among those alternatives.","sidebar":"tutorialSidebar"},"ai/ml-algorithms/feature-engineering":{"id":"ai/ml-algorithms/feature-engineering","title":"Feature Engineering","description":"- Scale to large datasets","sidebar":"tutorialSidebar"},"ai/ml-algorithms/generative-adversarial-networks-gans":{"id":"ai/ml-algorithms/generative-adversarial-networks-gans","title":"Generative Adversarial Networks (GANs)","description":"https://www.toptal.com/machine-learning/generative-adversarial-networks","sidebar":"tutorialSidebar"},"ai/ml-algorithms/graph-neural-networks-gnn":{"id":"ai/ml-algorithms/graph-neural-networks-gnn","title":"Graph Neural Networks (GNN)","description":"Why Is a Graph Difficult To Analyze?","sidebar":"tutorialSidebar"},"ai/ml-algorithms/id3-c45-and-chaid":{"id":"ai/ml-algorithms/id3-c45-and-chaid","title":"ID3, C4.5 and CHAID","description":"CHAID - Chi-Squared Automatic Interaction Detection","sidebar":"tutorialSidebar"},"ai/ml-algorithms/k-nearest-neighbor-knn":{"id":"ai/ml-algorithms/k-nearest-neighbor-knn","title":"K-Nearest Neighbor (KNN)","description":"The model representation for KNN is the entire training dataset. Simple right?","sidebar":"tutorialSidebar"},"ai/ml-algorithms/learning-vector-quantization-lvq":{"id":"ai/ml-algorithms/learning-vector-quantization-lvq","title":"Learning Vector Quantization (LVQ)","description":"Hi, adownside of K-Nearest Neighbors is that you need to hang on to your entire training dataset.","sidebar":"tutorialSidebar"},"ai/ml-algorithms/linear-discriminant-analysis-lda":{"id":"ai/ml-algorithms/linear-discriminant-analysis-lda","title":"Linear Discriminant Analysis (LDA)","description":"Hi, Logistic Regression is a classification algorithm traditionally limited to only two-class classification problems.","sidebar":"tutorialSidebar"},"ai/ml-algorithms/linear-regression":{"id":"ai/ml-algorithms/linear-regression","title":"Linear regression","description":"Linear regressionis a method for finding the straight line or hyperplane that best fits a set of points","sidebar":"tutorialSidebar"},"ai/ml-algorithms/logistic-regression":{"id":"ai/ml-algorithms/logistic-regression","title":"Logistic regression","description":"Logistic regression is another technique borrowed by machine learning from the field of statistics. It is the go-to method for binary classification problems (problems with two class values).","sidebar":"tutorialSidebar"},"ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics":{"id":"ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics","title":"Machine Learning Algorithm K-means using Map Reduce for Big Data Analytics","description":"Preface","sidebar":"tutorialSidebar"},"ai/ml-algorithms/non-linear-regression":{"id":"ai/ml-algorithms/non-linear-regression","title":"Non linear regression","description":"Non-linear Regression","sidebar":"tutorialSidebar"},"ai/ml-algorithms/others":{"id":"ai/ml-algorithms/others","title":"Others","description":"Bag Of Words (BOW)","sidebar":"tutorialSidebar"},"ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis":{"id":"ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis","title":"Parallel K-means using Map Reduce on Big Data Cluster Analysis","description":"image","sidebar":"tutorialSidebar"},"ai/ml-algorithms/predictive-analytics-1":{"id":"ai/ml-algorithms/predictive-analytics-1","title":"Predictive Analytics 1","description":"Preface","sidebar":"tutorialSidebar"},"ai/ml-algorithms/predictive-analytics-2":{"id":"ai/ml-algorithms/predictive-analytics-2","title":"Predictive Analytics 2","description":"Gradient Boosted Decision Trees - Regression","sidebar":"tutorialSidebar"},"ai/ml-algorithms/readme":{"id":"ai/ml-algorithms/readme","title":"ML Algorithms","description":"- Regression","sidebar":"tutorialSidebar"},"ai/ml-algorithms/regression":{"id":"ai/ml-algorithms/regression","title":"Regression","description":"Regression is a technique used to predict the value of a response (dependent) variables, from one or more predictor (independent) variables, where the variable are numeric. There are various forms of regression such as linear, multiple, logistic, polynomial, non-parametric, etc.","sidebar":"tutorialSidebar"},"ai/ml-algorithms/regularization":{"id":"ai/ml-algorithms/regularization","title":"Regularization","description":"Techniques used to generalize a model","sidebar":"tutorialSidebar"},"ai/ml-algorithms/rule-generation-and-pattern-evaluation":{"id":"ai/ml-algorithms/rule-generation-and-pattern-evaluation","title":"Rule generation & Pattern Evaluation","description":"monotone - a continuing sound, especially of a person\'s voice, that is unchanging in pitch and without intonation.","sidebar":"tutorialSidebar"},"ai/ml-algorithms/support-vector-machine-svm":{"id":"ai/ml-algorithms/support-vector-machine-svm","title":"Support Vector Machine (SVM)","description":"A hyperplane is a line that splits the input variable space. In SVM, a hyperplane is selected to best separate the points in the input variable space by their class, either class 0 or class 1.","sidebar":"tutorialSidebar"},"ai/ml-algorithms/vector-embeddings":{"id":"ai/ml-algorithms/vector-embeddings","title":"Vector Embeddings","description":"Vector embeddings are a way to convert words and sentences and other data into numbers that capture their meaning and relationships.\xa0They represent different data types as points in a multidimensional space, where similar data points are clustered closer together. These numerical representations help machines understand and process this data more effectively.","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/andrew-ng":{"id":"ai/ml-fundamentals/andrew-ng","title":"Andrew NG","description":"Model and cost function","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/intro":{"id":"ai/ml-fundamentals/intro","title":"Intro","description":"Machine learning is a subset of artificial intelligence in the field of computer science that often uses statistical techniques to give computers the ability to \\"learn\\" (i.e., progressively improve performance on a specific task) with data, without being explicitly programmed.","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/loss-function":{"id":"ai/ml-fundamentals/loss-function","title":"Loss Function","description":"In a Convolutional Neural Network (CNN), the loss function is a key component used to measure the difference between the predicted output of the network and the actual target labels (ground truth). It essentially quantifies how well or poorly the model is performing. The goal of training a CNN is to minimize this loss, meaning the model\'s predictions get closer to the actual targets.","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/ml-classification":{"id":"ai/ml-fundamentals/ml-classification","title":"ML Classification","description":"Types of ML Algorithms","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/ml-process":{"id":"ai/ml-fundamentals/ml-process","title":"ML Process","description":"ML Process","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/neural-networks":{"id":"ai/ml-fundamentals/neural-networks","title":"Neural Networks","description":"In computer programming, humans instruct a computer to solve a problem by specifying each step using many lines of code. With machine learning and neural networks, you instead get the computer to solve the problem through examples.","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/neural-networks-3b1b":{"id":"ai/ml-fundamentals/neural-networks-3b1b","title":"Neural Networks 3B1B","description":"Mnemonic - Input, times Weight, add a Bias, Activate","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/practical-ai-problems":{"id":"ai/ml-fundamentals/practical-ai-problems","title":"Practical AI Problems","description":"Netflix AI Problems","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/preliminaries":{"id":"ai/ml-fundamentals/preliminaries","title":"Preliminaries","description":"2. Preliminaries","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/questions":{"id":"ai/ml-fundamentals/questions","title":"Questions","description":"Differentiate between univariate, bivariate, and multivariate analysis","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/readme":{"id":"ai/ml-fundamentals/readme","title":"ML Fundamentals","description":"- Table of Contents","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/table-of-contents":{"id":"ai/ml-fundamentals/table-of-contents","title":"Table of contents","description":"Preface - https://d2l.ai/chapter_preface/index.html","sidebar":"tutorialSidebar"},"ai/model-evaluation/bias-variance-trade-off":{"id":"ai/model-evaluation/bias-variance-trade-off","title":"bias-variance trade-off","description":"Machine learning algorithms can best be understood through the lens of the bias-variance trade-off.","sidebar":"tutorialSidebar"},"ai/model-evaluation/confusion-matrix":{"id":"ai/model-evaluation/confusion-matrix","title":"Confusion Matrix","description":"The confusion matrix shows - The observations broken down by actual classes and predicted classes","sidebar":"tutorialSidebar"},"ai/model-evaluation/evaluation":{"id":"ai/model-evaluation/evaluation","title":"Evaluation","description":"- Generalization and overfitting","sidebar":"tutorialSidebar"},"ai/model-evaluation/generalization-and-sampling":{"id":"ai/model-evaluation/generalization-and-sampling","title":"Generalization and Sampling","description":"Learn how to","sidebar":"tutorialSidebar"},"ai/model-evaluation/model-validation-monitoring":{"id":"ai/model-evaluation/model-validation-monitoring","title":"Model Validation / Monitoring","description":"Poor model performance on unseen data","sidebar":"tutorialSidebar"},"ai/model-evaluation/optimization":{"id":"ai/model-evaluation/optimization","title":"Optimization","description":"Learn how to","sidebar":"tutorialSidebar"},"ai/model-evaluation/others":{"id":"ai/model-evaluation/others","title":"Others","description":"K-S Model Evaluation","sidebar":"tutorialSidebar"},"ai/model-evaluation/readme":{"id":"ai/model-evaluation/readme","title":"Model Evaluation","description":"- Confusion Matrix","sidebar":"tutorialSidebar"},"ai/move-37/1-markov-decision-process":{"id":"ai/move-37/1-markov-decision-process","title":"1. Markov Decision Process","description":"Introduction","sidebar":"tutorialSidebar"},"ai/move-37/2-dynamic-programming":{"id":"ai/move-37/2-dynamic-programming","title":"2. Dynamic Programming","description":"Sports Betting","sidebar":"tutorialSidebar"},"ai/move-37/3-monte-carlo-methods":{"id":"ai/move-37/3-monte-carlo-methods","title":"3. Monte Carlo Methods","description":"Internet of Things Optimization","sidebar":"tutorialSidebar"},"ai/move-37/4-model-free-learning":{"id":"ai/move-37/4-model-free-learning","title":"4. Model Free Learning","description":"image","sidebar":"tutorialSidebar"},"ai/move-37/5-rl-in-continuous-space":{"id":"ai/move-37/5-rl-in-continuous-space","title":"5. RL in Continuous Space","description":"Augmented Random Search (ARS)","sidebar":"tutorialSidebar"},"ai/move-37/algorithms":{"id":"ai/move-37/algorithms","title":"Algorithms","description":"1. Brute force algorithm","sidebar":"tutorialSidebar"},"ai/move-37/open-ai-gym":{"id":"ai/move-37/open-ai-gym","title":"Open AI Gym","description":"FronzenLake-v0","sidebar":"tutorialSidebar"},"ai/move-37/others":{"id":"ai/move-37/others","title":"Others","description":"MCMC - Markov Chain Monte Carlo","sidebar":"tutorialSidebar"},"ai/move-37/q-learning-algorithms":{"id":"ai/move-37/q-learning-algorithms","title":"Q-Learning Algorithms","description":"Q-Learning algorithms are a family of Reinforcement Learning algorithms.","sidebar":"tutorialSidebar"},"ai/move-37/quizzes":{"id":"ai/move-37/quizzes","title":"Quizzes","description":"image","sidebar":"tutorialSidebar"},"ai/move-37/readme":{"id":"ai/move-37/readme","title":"Move37","description":"- Syllabus","sidebar":"tutorialSidebar"},"ai/move-37/reinforcement-learning":{"id":"ai/move-37/reinforcement-learning","title":"Reinforcement Learning","description":"Reinforcement learning","sidebar":"tutorialSidebar"},"ai/move-37/syllabus":{"id":"ai/move-37/syllabus","title":"Syllabus","description":"1. Markov Decision Processes","sidebar":"tutorialSidebar"},"ai/nlp/chatbot-chatops":{"id":"ai/nlp/chatbot-chatops","title":"Chatbot / chatops","description":"https://www.freecodecamp.org/news/how-to-build-an-ai-chatbot-with-redis-python-and-gpt","sidebar":"tutorialSidebar"},"ai/nlp/chatbot-saas":{"id":"ai/nlp/chatbot-saas","title":"Chatbot SAAS","description":"Chats: Human and Bots","sidebar":"tutorialSidebar"},"ai/nlp/intro":{"id":"ai/nlp/intro","title":"NLP","description":"- 14. Natural Language Processing: Pretraining","sidebar":"tutorialSidebar"},"ai/nlp/nlp-concepts":{"id":"ai/nlp/nlp-concepts","title":"NLP Concepts","description":"A token is the technical name for a sequence of characters - such as hairy, his, or :) - that we want to treat as a group. When we count the number of tokens in a text, say, the phrase to be or not to be, we are counting occurrences of these sequences","sidebar":"tutorialSidebar"},"ai/nlp/nltk":{"id":"ai/nlp/nltk","title":"NLTK","description":"NLTK -- the Natural Language Toolkit -- is a suite of open source Python modules, data sets, and tutorials supporting research and development in Natural Language Processing.","sidebar":"tutorialSidebar"},"ai/nlp/readme":{"id":"ai/nlp/readme","title":"NLP","description":"- NLP","sidebar":"tutorialSidebar"},"ai/nlp/word-embedding-to-transformers":{"id":"ai/nlp/word-embedding-to-transformers","title":"Word Embedding to Transformers","description":"1. Introduction","sidebar":"tutorialSidebar"},"ai/numpy/cheatsheet":{"id":"ai/numpy/cheatsheet","title":"Cheatsheet","description":"References","sidebar":"tutorialSidebar"},"ai/numpy/data-types":{"id":"ai/numpy/data-types","title":"Data Types","description":"| Sr.No. | Data Types & Description |","sidebar":"tutorialSidebar"},"ai/numpy/internals":{"id":"ai/numpy/internals","title":"Internals","description":"Why is NumPy Faster?","sidebar":"tutorialSidebar"},"ai/numpy/intro":{"id":"ai/numpy/intro","title":"Intro","description":"https://www.tutorialspoint.com/numpy/index.htm","sidebar":"tutorialSidebar"},"ai/numpy/ndarray-object":{"id":"ai/numpy/ndarray-object","title":"Ndarray Object","description":"The most important object defined in NumPy is an N-dimensional array type calledndarray. It describes the collection of items of the same type. Items in the collection can be accessed using a zero-based index.","sidebar":"tutorialSidebar"},"ai/numpy/numpy-reference":{"id":"ai/numpy/numpy-reference","title":"NumPy Reference","description":"- Array objects","sidebar":"tutorialSidebar"},"ai/numpy/readme":{"id":"ai/numpy/readme","title":"Numpy","description":"- Intro","sidebar":"tutorialSidebar"},"ai/others-resources-interview-learning-courses":{"id":"ai/others-resources-interview-learning-courses","title":"Others / Resources / Interview / Learning / Courses","description":"- Intro to graph neural networks (ML Tech Talks)","sidebar":"tutorialSidebar"},"ai/pandas/cheatsheet":{"id":"ai/pandas/cheatsheet","title":"CheatSheet","description":"https://www.kaggle.com/grroverpr/pandas-cheatsheet","sidebar":"tutorialSidebar"},"ai/pandas/commands":{"id":"ai/pandas/commands","title":"Commands","description":"DataFrame.describe(percentiles=None, include=None, exclude=None)","sidebar":"tutorialSidebar"},"ai/pandas/data-structures":{"id":"ai/pandas/data-structures","title":"Data Structures","description":"class pandas. DataFrame (data=None,index=None, columns=None, dtype=None, copy=False)","sidebar":"tutorialSidebar"},"ai/pandas/examples":{"id":"ai/pandas/examples","title":"Examples","description":"","sidebar":"tutorialSidebar"},"ai/pandas/others":{"id":"ai/pandas/others","title":"Others","description":"https://en.wikipedia.org/wiki/MathKernelLibrary","sidebar":"tutorialSidebar"},"ai/pandas/pandas-intro":{"id":"ai/pandas/pandas-intro","title":"Pandas Intro","description":"Pandas is an open-source, BSD-licensed Python library providing high-performance, easy-to-use data structures and data analysis tools for the Python programming language.","sidebar":"tutorialSidebar"},"ai/pandas/readme":{"id":"ai/pandas/readme","title":"Pandas","description":"- Intro","sidebar":"tutorialSidebar"},"ai/pandas/user_guide":{"id":"ai/pandas/user_guide","title":"user_guide","description":"https://pandas.pydata.org/pandas-docs/stable/user_guide/index.html","sidebar":"tutorialSidebar"},"ai/readme":{"id":"ai/readme","title":"AI","description":"- Model Evaulation","sidebar":"tutorialSidebar"},"ai/scikit-learn/commands":{"id":"ai/scikit-learn/commands","title":"Commands","description":"image","sidebar":"tutorialSidebar"},"ai/scikit-learn/intro":{"id":"ai/scikit-learn/intro","title":"Intro","description":"- Simple and efficient tools for data mining and data analysis","sidebar":"tutorialSidebar"},"ai/scikit-learn/others":{"id":"ai/scikit-learn/others","title":"Others","description":"Some Classifiers in scikit-learn","sidebar":"tutorialSidebar"},"ai/scikit-learn/readme":{"id":"ai/scikit-learn/readme","title":"Scikit Learn / Scipy","description":"- Scikit Learn Intro","sidebar":"tutorialSidebar"},"ai/scikit-learn/scipy-cheatsheet":{"id":"ai/scikit-learn/scipy-cheatsheet","title":"Cheatsheet","description":"image","sidebar":"tutorialSidebar"},"ai/scikit-learn/scipy-intro":{"id":"ai/scikit-learn/scipy-intro","title":"Intro","description":"SciPy provides a large menu of libraries for scientific computation, such as integration, interpolation, signal processing, linear algebra, statistics, etc. It is built upon the infrastructure of Numpy","sidebar":"tutorialSidebar"},"ai/social-media-analytics-solution":{"id":"ai/social-media-analytics-solution","title":"Social Media Analytics Solution","description":"Build and deploy a social media analytics solution - Azure Architecture Center | Microsoft Learn","sidebar":"tutorialSidebar"},"ai/solutions":{"id":"ai/solutions","title":"Solutions","description":"Artificial intelligence (AI) architecture - Azure Architecture Center | Microsoft Learn","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/a-search-algorithm":{"id":"algorithms/advanced-algorithms/a-search-algorithm","title":"A* Search Algorithm","description":"The process of plotting an efficiently directed path between multiple points, called nodes.","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/automated-planning-and-scheduling":{"id":"algorithms/advanced-algorithms/automated-planning-and-scheduling","title":"Automated Planning and Scheduling","description":"Automated planning and scheduling, sometimes denoted as simply AI Planning, is a branch of artificial intelligence that concerns the realization of strategies or action sequences, typically for execution by intelligent agents, autonomous robots and unmanned vehicles. Unlike classical control and classification problems, the solutions are complex and must be discovered and optimized in multidimensional space. Planning is also related to decision theory","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/disk-scheduling-algorithms":{"id":"algorithms/advanced-algorithms/disk-scheduling-algorithms","title":"Disk Scheduling Algorithms","description":"Elevator algorithm / SCAN","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/informed-search-algorithms":{"id":"algorithms/advanced-algorithms/informed-search-algorithms","title":"Informed Search Algorithms","description":"Be smart about what paths to try","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/intractability":{"id":"algorithms/advanced-algorithms/intractability","title":"Intractability","description":"Is there a universal problem-solving model to which all problems that we would like to solve reduce and for which we know an efficient algorithm? You may be surprised to learn that we do not know the answer to this question. In this lecture we introduce the complexity classes P, NP, and NP-complete, pose the famous P = NP question, and consider implications in the context of algorithms that we have treated in this course.","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/linear-programming":{"id":"algorithms/advanced-algorithms/linear-programming","title":"Linear Programming","description":"The quintessential problem-solving model is known as linear programming, and the simplex method for solving it is one of the most widely used algorithms. In this lecture, we given an overview of this central topic in operations research and describe its relationship to algorithms that we have considered.","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/multi-armed-bandit-mab":{"id":"algorithms/advanced-algorithms/multi-armed-bandit-mab","title":"Multi Armed Bandit (MAB)","description":"The multi-armed bandit (MAB) is a classic problem in decision sciences. Effectively, it is one of optimal resource allocation under uncertainty.","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/others":{"id":"algorithms/advanced-algorithms/others","title":"Others","description":"Streaming and Sketching Algorithms","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/principle-of-deferred-decisions":{"id":"algorithms/advanced-algorithms/principle-of-deferred-decisions","title":"Principle of Deferred Decisions","description":"The principle of deferred decisions is the concept that we have two ways to make a random choice both of which are equivalent.","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/readme":{"id":"algorithms/advanced-algorithms/readme","title":"Advanced Algorithms","description":"- A* Search Algorithms","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/reductions":{"id":"algorithms/advanced-algorithms/reductions","title":"Reductions","description":"In this lecture our goal is to develop ways to classify problems according to their computational requirements. We introduce the concept of reduction as a technique for studying the relationship among problems. People use reductions to design algorithms, establish lower bounds, and classify problems in terms of their computational requirements.","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/regular-expressions":{"id":"algorithms/advanced-algorithms/regular-expressions","title":"Regular Expressions","description":"A regular expression is a method for specifying a set of strings. Our topic for this lecture is the famous grep algorithm that determines whether a given text contains any substring from the set. We examine an efficient implementation that makes use of our digraph reachability implementation from Week 1.","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/travelling-salesman-problem":{"id":"algorithms/advanced-algorithms/travelling-salesman-problem","title":"Travelling Salesman Problem","description":"The Traveling Salesman Problem is a well known challenge in Computer Science: it consists on finding the shortest route possible that traverses all cities in a given map only once. Although its simple explanation, this problem is, indeed, NP-Complete. This implies that the difficulty to solve it increases rapidly with the number of cities, and we do not know in fact a general solution that solves the problem. For that reason, we currently consider that any method able to find a sub-optimal solution is generally good enough (we cannot verify if the solution returned is the optimal one most of the times).","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/analysis-of-algorithms":{"id":"algorithms/algorithmic-complexity/analysis-of-algorithms","title":"Analysis of Algorithms","description":"Discrete Fourier Transform (FTT - Fast Fourier Transform)","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/complexity-zoo":{"id":"algorithms/algorithmic-complexity/complexity-zoo","title":"Complexity Zoo","description":"image","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/computational-complexity-theory":{"id":"algorithms/algorithmic-complexity/computational-complexity-theory","title":"Computational Complexity Theory","description":"Computational complexity theoryfocuses on classifying computational problems according to their inherent difficulty, and relating these classes to each other. A computational problem is a task solved by a computer. A computation problem is solvable by mechanical application of mathematical steps, such as an algorithm.","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/finite-state-machine":{"id":"algorithms/algorithmic-complexity/finite-state-machine","title":"Finite-State Machine","description":"DFA - Deterministic Finite Automata","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/halting-problem":{"id":"algorithms/algorithmic-complexity/halting-problem","title":"Halting Problem","description":"In computability theory), the**halting problem** is the problem of determining, from a description of an arbitrary computer program and an input, whether the program will finish running (i.e., halt) or continue to run forever.","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/np-hardness":{"id":"algorithms/algorithmic-complexity/np-hardness","title":"NP Hardness","description":"| | |","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/readme":{"id":"algorithms/algorithmic-complexity/readme","title":"Algorithmic Complexity","description":"- Analysis of Algorithms","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/sub-linear-time":{"id":"algorithms/algorithmic-complexity/sub-linear-time","title":"Sub-linear time","description":"An algorithm is said to run insub-linear time(often spelledsublinear time) ifT(n) = o(n) (small oh)","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/time-complexities":{"id":"algorithms/algorithmic-complexity/time-complexities","title":"Time Complexities","description":"Big-O Algorithm Complexity Cheat Sheet (Know Thy Complexities!) @ericdrowell","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/turing-vs-non-turing-machine":{"id":"algorithms/algorithmic-complexity/turing-vs-non-turing-machine","title":"Turing vs Non Turing Machine","description":"History","sidebar":"tutorialSidebar"},"algorithms/bit-manipulation/examples":{"id":"algorithms/bit-manipulation/examples","title":"Examples","description":"1. Check if a number is power of two","sidebar":"tutorialSidebar"},"algorithms/bit-manipulation/general":{"id":"algorithms/bit-manipulation/general","title":"General","description":"Bitwise Operators ( a = 60, b = 13)","sidebar":"tutorialSidebar"},"algorithms/bit-manipulation/readme":{"id":"algorithms/bit-manipulation/readme","title":"Bit Manipulation","description":"- General","sidebar":"tutorialSidebar"},"algorithms/complex-systems/game-theory":{"id":"algorithms/complex-systems/game-theory","title":"Game Theory","description":"A Game is any interaction between multiple people in which each person\'s payoff is affected by the decisions made by others.","sidebar":"tutorialSidebar"},"algorithms/complex-systems/intro":{"id":"algorithms/complex-systems/intro","title":"Complex Systems","description":"image","sidebar":"tutorialSidebar"},"algorithms/complex-systems/minimax-algorithm":{"id":"algorithms/complex-systems/minimax-algorithm","title":"MiniMax Algorithm","description":"https://en.wikipedia.org/wiki/Minimax","sidebar":"tutorialSidebar"},"algorithms/complex-systems/move-by-nature":{"id":"algorithms/complex-systems/move-by-nature","title":"Move by nature","description":"https://en.wikipedia.org/wiki/Movebynature","sidebar":"tutorialSidebar"},"algorithms/complex-systems/others":{"id":"algorithms/complex-systems/others","title":"Others","description":"Braess\'s Paradox","sidebar":"tutorialSidebar"},"algorithms/complex-systems/readme":{"id":"algorithms/complex-systems/readme","title":"Complex Systems","description":"- Complex Systems","sidebar":"tutorialSidebar"},"algorithms/data-compression/bitmap-compression-algorithms":{"id":"algorithms/data-compression/bitmap-compression-algorithms","title":"Bitmap Compression Algorithms","description":"1. Byte-aligned Bitmap Code","sidebar":"tutorialSidebar"},"algorithms/data-compression/huffman-compression":{"id":"algorithms/data-compression/huffman-compression","title":"Huffman Compression","description":"Variable-length codes","sidebar":"tutorialSidebar"},"algorithms/data-compression/intro":{"id":"algorithms/data-compression/intro","title":"Intro","description":"https://quixdb.github.io/squash-benchmark","sidebar":"tutorialSidebar"},"algorithms/data-compression/lzw-compression":{"id":"algorithms/data-compression/lzw-compression","title":"LZW Compression","description":"LZF belongs to a family of compression codecs called \\"simple Lempel-Ziv\\" codecs. Since LZ compression is also the first part ofdeflatecompression (which is used, along with simple framing, forgzip), it can be viewed as \\"first-part of gzip\\" (second part being Huffman-encoding of compressed content).","sidebar":"tutorialSidebar"},"algorithms/data-compression/others":{"id":"algorithms/data-compression/others","title":"Others","description":"image","sidebar":"tutorialSidebar"},"algorithms/data-compression/readme":{"id":"algorithms/data-compression/readme","title":"Data Compression","description":"- Intro","sidebar":"tutorialSidebar"},"algorithms/data-compression/run-length-encoding":{"id":"algorithms/data-compression/run-length-encoding","title":"Run Length Encoding","description":"image","sidebar":"tutorialSidebar"},"algorithms/dynamic-programming/basic-gold-mines":{"id":"algorithms/dynamic-programming/basic-gold-mines","title":"Basic Gold Mines","description":"https://www.hackerearth.com/practice/algorithms/dynamic-programming/2-dimensional/practice-problems/algorithm/gold-mines-10","sidebar":"tutorialSidebar"},"algorithms/dynamic-programming/greedy-algorithms":{"id":"algorithms/dynamic-programming/greedy-algorithms","title":"General","description":"Algorithms","sidebar":"tutorialSidebar"},"algorithms/dynamic-programming/how-to-find-dp":{"id":"algorithms/dynamic-programming/how-to-find-dp","title":"How to find DP","description":"Steps to solve a DP","sidebar":"tutorialSidebar"},"algorithms/dynamic-programming/intro":{"id":"algorithms/dynamic-programming/intro","title":"Intro","description":"Dynamic Programming is an algorithmic paradigm that solves a given complex problem by breaking it into subproblems and stores the results of subproblems to avoid computing the same results again.","sidebar":"tutorialSidebar"},"algorithms/dynamic-programming/knapsack-problem":{"id":"algorithms/dynamic-programming/knapsack-problem","title":"Knapsack Problem","description":"The knapsack problem or rucksack problem is a combinatorial optimization: Given a set of items, each with a weight and a value, determine the number of each item to include in a collection so that the total weight is less than or equal to a given limit and the total value is as large as possible. It derives its name from the problem faced by someone who is constrained by a fixed-sizeknapsack and must fill it with the most valuable items.","sidebar":"tutorialSidebar"},"algorithms/dynamic-programming/levenshtein-distance-or-edit-distance":{"id":"algorithms/dynamic-programming/levenshtein-distance-or-edit-distance","title":"Levenshtein distance or Edit Distance","description":"The Levenshtein Distance, or Edit Distance, is the amount by which two strings differ.","sidebar":"tutorialSidebar"},"algorithms/dynamic-programming/readme":{"id":"algorithms/dynamic-programming/readme","title":"Dynamic Programming","description":"- Intro","sidebar":"tutorialSidebar"},"algorithms/general/1d-range-search":{"id":"algorithms/general/1d-range-search","title":"1d Range Search","description":"Operations","sidebar":"tutorialSidebar"},"algorithms/general/2d-orthogonal-range-search":{"id":"algorithms/general/2d-orthogonal-range-search","title":"2d orthogonal range search","description":"image","sidebar":"tutorialSidebar"},"algorithms/general/algo-ds":{"id":"algorithms/general/algo-ds","title":"Algo + DS","description":"Algorithms","sidebar":"tutorialSidebar"},"algorithms/general/algorithms-questions":{"id":"algorithms/general/algorithms-questions","title":"Algorithms Questions","description":"Homework Problems","sidebar":"tutorialSidebar"},"algorithms/general/appel-algorithm":{"id":"algorithms/general/appel-algorithm","title":"Appel\'s Algorithm","description":"Appel\'s algorithm for N-body simulation","sidebar":"tutorialSidebar"},"algorithms/general/competitive-programming":{"id":"algorithms/general/competitive-programming","title":"Competitive Programming Questions","description":"Two Pointers","sidebar":"tutorialSidebar"},"algorithms/general/euclidean-algorithm-gcd":{"id":"algorithms/general/euclidean-algorithm-gcd","title":"Euclidean Algorithm - Gcd","description":"Synonyms","sidebar":"tutorialSidebar"},"algorithms/general/flocking-boids-algorithm":{"id":"algorithms/general/flocking-boids-algorithm","title":"Flocking Boids Algorithm","description":"Boids","sidebar":"tutorialSidebar"},"algorithms/general/knuth-shuffle":{"id":"algorithms/general/knuth-shuffle","title":"Knuth Shuffle","description":"Goal: Rearrange array so that the result is a uniformly random permutation in linear time","sidebar":"tutorialSidebar"},"algorithms/general/list-of-algorithms":{"id":"algorithms/general/list-of-algorithms","title":"List of Algorithms","description":"1. Automated Planning","sidebar":"tutorialSidebar"},"algorithms/general/n-queens-problem":{"id":"algorithms/general/n-queens-problem","title":"N Queens Problem","description":"The N Queen is the problem of placing N chess queens on an N\xd7N chessboard so that no two queens attack each other. For example, following is a solution for 4 Queen problem.","sidebar":"tutorialSidebar"},"algorithms/general/orthogonal-rectangle-intersection-search":{"id":"algorithms/general/orthogonal-rectangle-intersection-search","title":"Orthogonal rectangle intersection search","description":"Goal: find all intersections among a set of N orthogonal rectangles","sidebar":"tutorialSidebar"},"algorithms/general/prime-factorization":{"id":"algorithms/general/prime-factorization","title":"Prime Factorization","description":"Prime factorization or integer factorization of a number is breaking a number down into the set of prime numbers which multiply together to result in the original number. This is also known as prime decomposition.","sidebar":"tutorialSidebar"},"algorithms/general/quick-select":{"id":"algorithms/general/quick-select","title":"Quick Select","description":"Randomized quickselect, a quicksort variant which finds the kth smallest item in linear time.","sidebar":"tutorialSidebar"},"algorithms/general/readme":{"id":"algorithms/general/readme","title":"General","description":"- Algo + DS","sidebar":"tutorialSidebar"},"algorithms/general/recursion":{"id":"algorithms/general/recursion","title":"Recursion","description":"https://www.topcoder.com/community/data-science/data-science-tutorials/an-introduction-to-recursion-part-2","sidebar":"tutorialSidebar"},"algorithms/general/reverse-polish-notation-postfix-notation":{"id":"algorithms/general/reverse-polish-notation-postfix-notation","title":"Reverse Polish Notation / Postfix Notation","description":"Infix - (2+5)*3","sidebar":"tutorialSidebar"},"algorithms/general/sweep-line-algorithm":{"id":"algorithms/general/sweep-line-algorithm","title":"Sweep Line Algorithm","description":"Orthogonal Line Segment Intersection","sidebar":"tutorialSidebar"},"algorithms/general/two-stack-algorithm":{"id":"algorithms/general/two-stack-algorithm","title":"Two-Stack Algorithm","description":"Goal: Evaluate Infix Expressions","sidebar":"tutorialSidebar"},"algorithms/general/types-of-algorithms":{"id":"algorithms/general/types-of-algorithms","title":"Types of algorithms","description":"1. Simple recursive algorithms","sidebar":"tutorialSidebar"},"algorithms/general/union-find-algorithm":{"id":"algorithms/general/union-find-algorithm","title":"Union-Find Algorithm","description":"A union-find algorithm is an algorithm that performs two operations on a disjoint-set data structure -","sidebar":"tutorialSidebar"},"algorithms/graphtheory/acyclic-edge-weighted-digraphs":{"id":"algorithms/graphtheory/acyclic-edge-weighted-digraphs","title":"Acyclic Edge Weighted Digraphs","description":"It is easier to find shortest paths in an edge-weighted digraph that has no directed cycles than general digraph.","sidebar":"tutorialSidebar"},"algorithms/graphtheory/bellman-ford-algorithm":{"id":"algorithms/graphtheory/bellman-ford-algorithm","title":"Bellman Ford Algorithm","description":"image","sidebar":"tutorialSidebar"},"algorithms/graphtheory/breadth-first-search-bfs":{"id":"algorithms/graphtheory/breadth-first-search-bfs","title":"Breadth First Search (BFS)","description":"BFS \\"is an algorithm for traversing or searching tree data structure. It starts at the tree root and explores the neighbor nodes first, before moving to the next level neighbors.\\"","sidebar":"tutorialSidebar"},"algorithms/graphtheory/connected-components":{"id":"algorithms/graphtheory/connected-components","title":"Connected Components","description":"Connected Components","sidebar":"tutorialSidebar"},"algorithms/graphtheory/depth-first-search-dfs":{"id":"algorithms/graphtheory/depth-first-search-dfs","title":"Depth First Search (DFS)","description":"Time Complexity: O(V+E) where V is number of vertices in the graph and E is number of edges in the graph.","sidebar":"tutorialSidebar"},"algorithms/graphtheory/dijkstra-algorithm":{"id":"algorithms/graphtheory/dijkstra-algorithm","title":"Dijkstra\'s Algorithm","description":"Properties","sidebar":"tutorialSidebar"},"algorithms/graphtheory/eulerian-trail":{"id":"algorithms/graphtheory/eulerian-trail","title":"Eulerian Trail","description":"In graph theory, an **Eulerian trail** (or **Eulerian path**) is a trail) in a finite graph which visits every edge) exactly once. Similarly, an **Eulerian circuit** or **Eulerian cycle** is an Eulerian trail which starts and ends on the same vertex). They were first discussed by Leonhard Euler while solving the famous Seven Bridges of K\xf6nigsberg problem in 1736. The problem can be stated mathematically like this:","sidebar":"tutorialSidebar"},"algorithms/graphtheory/ford-fulkerson-algorithm":{"id":"algorithms/graphtheory/ford-fulkerson-algorithm","title":"Ford-Fulkerson Algorithm","description":"Maximum Flow (Max-Flow Min-Cut Theorem)","sidebar":"tutorialSidebar"},"algorithms/graphtheory/graph-search":{"id":"algorithms/graphtheory/graph-search","title":"Graph Search","description":"Graph search algorithms like A* are often used to find the shortest path from one point to another point. You can use this for each enemy to find a path to the goal. There are lots of different graph search algorithms we could use in this type of game. These are the classics:","sidebar":"tutorialSidebar"},"algorithms/graphtheory/intro":{"id":"algorithms/graphtheory/intro","title":"Intro","description":"Origins of Graph Theory","sidebar":"tutorialSidebar"},"algorithms/graphtheory/kruskal-algorithm-for-mst":{"id":"algorithms/graphtheory/kruskal-algorithm-for-mst","title":"Kruskal\'s Algorithm for MST","description":"image","sidebar":"tutorialSidebar"},"algorithms/graphtheory/longest-path-in-edge-weighted-dags":{"id":"algorithms/graphtheory/longest-path-in-edge-weighted-dags","title":"Longest Path in Edge-Weighted DAGs","description":"image","sidebar":"tutorialSidebar"},"algorithms/graphtheory/maximum-flow-and-minimum-cut":{"id":"algorithms/graphtheory/maximum-flow-and-minimum-cut","title":"Maximum Flow and Minimum Cut","description":"1. Introduction to Maxflow","sidebar":"tutorialSidebar"},"algorithms/graphtheory/minimum-spanning-tree":{"id":"algorithms/graphtheory/minimum-spanning-tree","title":"Minimum Spanning Tree","description":"Properties of MST","sidebar":"tutorialSidebar"},"algorithms/graphtheory/other-graph-algorithms":{"id":"algorithms/graphtheory/other-graph-algorithms","title":"Other Graph Algorithms","description":"Dominating Set","sidebar":"tutorialSidebar"},"algorithms/graphtheory/prim-algorithm-for-mst":{"id":"algorithms/graphtheory/prim-algorithm-for-mst","title":"Prim\'s Algorithm for MST","description":"Properties","sidebar":"tutorialSidebar"},"algorithms/graphtheory/problems":{"id":"algorithms/graphtheory/problems","title":"Problems","description":"Knight\'s Tour Problem","sidebar":"tutorialSidebar"},"algorithms/graphtheory/readme":{"id":"algorithms/graphtheory/readme","title":"Graph Theory","description":"- Intro","sidebar":"tutorialSidebar"},"algorithms/graphtheory/resources":{"id":"algorithms/graphtheory/resources","title":"Resources","description":"image","sidebar":"tutorialSidebar"},"algorithms/graphtheory/seam-carving":{"id":"algorithms/graphtheory/seam-carving","title":"Seam Carving","description":"Seam Carving for Content-Aware Image Resizing","sidebar":"tutorialSidebar"},"algorithms/graphtheory/shortest-path-algorithms":{"id":"algorithms/graphtheory/shortest-path-algorithms","title":"Shortest Path Algorithms","description":"Shortest path variants","sidebar":"tutorialSidebar"},"algorithms/graphtheory/strong-components":{"id":"algorithms/graphtheory/strong-components","title":"Strong Components","description":"image","sidebar":"tutorialSidebar"},"algorithms/graphtheory/topological-sort-algorithm":{"id":"algorithms/graphtheory/topological-sort-algorithm","title":"Topological Sort Algorithm","description":"Acyclic Edge Weighted Digraphs","sidebar":"tutorialSidebar"},"algorithms/mathematics/combinatorial-optimization":{"id":"algorithms/mathematics/combinatorial-optimization","title":"Combinatorial Optimization","description":"In Operations Research, applied mathematics and theoretical computer science, combinatorial optimizationis a topic that consists of finding an optimal object from a finite set of objects.In many such problems, exhaustive search is not tractable. It operates on the domain of those optimization problems, in which the set of feasible solutions is discrete or can be reduced to discrete, and in which the goal is to find the best solution. Some common problems involving combinatorial optimization are the travelling salesman problem(\\"TSP\\") and the minimum spanning tree problem(\\"MST\\").","sidebar":"tutorialSidebar"},"algorithms/mathematics/mo-algorithm":{"id":"algorithms/mathematics/mo-algorithm","title":"MO\'s Algorithm","description":"Query Square Root Decomposition","sidebar":"tutorialSidebar"},"algorithms/mathematics/powerset":{"id":"algorithms/mathematics/powerset","title":"Powerset","description":"Power Set","sidebar":"tutorialSidebar"},"algorithms/mathematics/readme":{"id":"algorithms/mathematics/readme","title":"Mathematics","description":"- Powerset","sidebar":"tutorialSidebar"},"algorithms/readme":{"id":"algorithms/readme","title":"Algorithms","description":"- General","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/3-way-quick-sort":{"id":"algorithms/searching-sorting/3-way-quick-sort","title":"3-Way Quick Sort","description":"Properties -","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/3-way-string-radix-quicksort":{"id":"algorithms/searching-sorting/3-way-string-radix-quicksort","title":"3-way string radix quicksort","description":"image","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/binary-search":{"id":"algorithms/searching-sorting/binary-search","title":"Binary Search","description":"Finding the index of first element in A which is not less than x is called lowerbound query in C++ STL. The answer of our first query isn-lowerbound(x)","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/convex-hull":{"id":"algorithms/searching-sorting/convex-hull","title":"Convex Hull","description":"- Smallest polygon that encloses all the points","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/external-sort":{"id":"algorithms/searching-sorting/external-sort","title":"External Sort","description":"image","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/heapsort":{"id":"algorithms/searching-sorting/heapsort","title":"Heapsort","description":"Heapsortstarts by building a max heap. A binary max heap is a nearly complete binary tree in which each parent node is larger or equal to its children. The heap is stored in the same memory in which the original array elements are. Once the heap is formed, it completely replaces the array. After that, we take and remove the first element, restore the heap property, thus reducing the heap size by 1, after which we place the max element at the end of that memory. This is repeated until we empty out the heap, resulting in the smallest element being in the first place, and the following elements being sequentially larger.","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/insertion-sort":{"id":"algorithms/searching-sorting/insertion-sort","title":"Insertion Sort","description":"Insertion sorttakes elements of the array sequentially, and maintains a sorted subarray to the left of the current point. It does this by taking an element, finding its correct position in the sorted array, and shifting all following elements by 1, leaving a space for the element to be inserted.","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/intro":{"id":"algorithms/searching-sorting/intro","title":"Intro","description":"Searching","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/key-indexed-counting":{"id":"algorithms/searching-sorting/key-indexed-counting","title":"Key-indexed Counting","description":"Proporties","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/knuth-shuffle":{"id":"algorithms/searching-sorting/knuth-shuffle","title":"Knuth Shuffle","description":"Knuth Shuffle","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/lsd-radix-sort":{"id":"algorithms/searching-sorting/lsd-radix-sort","title":"LSD Radix Sort","description":"image","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/merge-sort":{"id":"algorithms/searching-sorting/merge-sort","title":"Merge Sort","description":"Merge sort recursively halves the given array. Once the subarrays reach trivial length, merging begins. Merging takes the smallest element between two adjacent subarrays and repeats that step until all elements are taken, resulting in a sorted subarray. The process is repeated on pairs of adjacent subarrays until we arrive at the starting array, but sorted.","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/msd-radix-sort":{"id":"algorithms/searching-sorting/msd-radix-sort","title":"MSD Radix Sort","description":"image","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/others":{"id":"algorithms/searching-sorting/others","title":"Others","description":"Beating sorting lower bounds","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/quick-sort":{"id":"algorithms/searching-sorting/quick-sort","title":"Quick Sort","description":"Quicksortis performed by taking the first (leftmost) element of the array as a pivot point. We then compare it to each following element. When we find one that is smaller, we move it to the left. The moving is performed quickly by swapping that element with the first element after the pivot point, and then swapping the pivot point with the element after it. After going through the whole array, we take all points on the left of the pivot and call quicksort on that subarray, and we do the same to all points on the right of the pivot. The recursion is performed until we reach subarrays of 0-1 elements in length.","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/readme":{"id":"algorithms/searching-sorting/readme","title":"Searching Sorting","description":"- Intro","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/selection-sort":{"id":"algorithms/searching-sorting/selection-sort","title":"Selection Sort","description":"Not stable","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/shell-sort":{"id":"algorithms/searching-sorting/shell-sort","title":"Shell Sort","description":"- In-place comparison sort","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/shuffle-sort":{"id":"algorithms/searching-sorting/shuffle-sort","title":"Shuffle Sort","description":"Goal: Rearrange array so that result is a uniformly random permutation","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/system-sort":{"id":"algorithms/searching-sorting/system-sort","title":"System Sort","description":"Java System Sort - Arrays.sort()","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/timsort":{"id":"algorithms/searching-sorting/timsort","title":"TimSort","description":"- Hybrid algorithm which uses binary insertion sort and improved merge sort by using galloping in a combination.","sidebar":"tutorialSidebar"},"algorithms/string-algorithms/boyer-moore":{"id":"algorithms/string-algorithms/boyer-moore","title":"Boyer-Moore","description":"image","sidebar":"tutorialSidebar"},"algorithms/string-algorithms/brute-force":{"id":"algorithms/string-algorithms/brute-force","title":"Brute Force","description":"image","sidebar":"tutorialSidebar"},"algorithms/string-algorithms/intro":{"id":"algorithms/string-algorithms/intro","title":"Intro","description":"Subarray/substring","sidebar":"tutorialSidebar"},"algorithms/string-algorithms/knuth-morris-pratt":{"id":"algorithms/string-algorithms/knuth-morris-pratt","title":"Knuth-Morris-Pratt","description":"image","sidebar":"tutorialSidebar"},"algorithms/string-algorithms/longest-common-prefix":{"id":"algorithms/string-algorithms/longest-common-prefix","title":"Longest Common Prefix","description":"image","sidebar":"tutorialSidebar"},"algorithms/string-algorithms/rabin-karp":{"id":"algorithms/string-algorithms/rabin-karp","title":"Rabin Karp","description":"image","sidebar":"tutorialSidebar"},"algorithms/string-algorithms/readme":{"id":"algorithms/string-algorithms/readme","title":"String Algorithms","description":"- Intro","sidebar":"tutorialSidebar"},"algorithms/string-algorithms/substring-search-intro":{"id":"algorithms/string-algorithms/substring-search-intro","title":"Substring Search Intro","description":"Algorithms for searching for a substring in a piece of text. We begin with a brute-force algorithm, whose running time is quadratic in the worst case. Next, we consider the ingenious Knuth--Morris--Pratt algorithm whose running time is guaranteed to be linear in the worst case. Then, we introduce the Boyer--Moore algorithm, whose running time is sublinear on typical inputs. Finally, we consider the Rabin--Karp fingerprint algorithm, which uses hashing in a clever way to solve the substring search and related problems","sidebar":"tutorialSidebar"},"book-summaries/13-things-mentally-strong-parents-dont-do":{"id":"book-summaries/13-things-mentally-strong-parents-dont-do","title":"13 Things Mentally Strong Parents Don\'t Do","description":"- Promote responsibility and perseverance over a victim mentality","sidebar":"tutorialSidebar"},"book-summaries/13-things-mentally-strong-people-dont-do":{"id":"book-summaries/13-things-mentally-strong-people-dont-do","title":"13 Things Mentally Strong People Don\'t Do","description":"By Amy Morin","sidebar":"tutorialSidebar"},"book-summaries/48-laws-of-power":{"id":"book-summaries/48-laws-of-power","title":"48 Laws of Power","description":"By Robert Greene","sidebar":"tutorialSidebar"},"book-summaries/7-powers-the-foundations-of-business-strategy":{"id":"book-summaries/7-powers-the-foundations-of-business-strategy","title":"7 Powers: The Foundations of Business Strategy","description":"By Hamilton Helmer","sidebar":"tutorialSidebar"},"book-summaries/alchemy-the-surprising-power-of-ideas-that-dont-make-sense":{"id":"book-summaries/alchemy-the-surprising-power-of-ideas-that-dont-make-sense","title":"Alchemy: The Surprising Power of Ideas That Don\'t Make Sense","description":"Book by Rory Sutherland","sidebar":"tutorialSidebar"},"book-summaries/atomic-habits":{"id":"book-summaries/atomic-habits","title":"Atomic Habits","description":"By James Clear","sidebar":"tutorialSidebar"},"book-summaries/books-blinkist-productivity":{"id":"book-summaries/books-blinkist-productivity","title":"Books / Blinkist - Productivity","description":"Blinkist - Get your shit together by Sarah Knight (2 Jan 2019)","sidebar":"tutorialSidebar"},"book-summaries/books-to-read":{"id":"book-summaries/books-to-read","title":"Books","description":"Resources","sidebar":"tutorialSidebar"},"book-summaries/chasing-excellence":{"id":"book-summaries/chasing-excellence","title":"Chasing Excellence","description":"By Ben Bergero","sidebar":"tutorialSidebar"},"book-summaries/collaborative-intelligence":{"id":"book-summaries/collaborative-intelligence","title":"Collaborative Intelligence","description":"By Dawna Markova and Angie","sidebar":"tutorialSidebar"},"book-summaries/david-and-goliath":{"id":"book-summaries/david-and-goliath","title":"David and Goliath","description":"David, a shepherd boy carrying a wooden staff and sling, volunteers to fight a seven-foot giant named Goliath. Goliath is fully armored with a sword in one hand and a spear in the other. When he sees David approach him with a wooden staff, he laughs and says, \\"Am I a dog that you should come to me with sticks?\\"","sidebar":"tutorialSidebar"},"book-summaries/deep-work":{"id":"book-summaries/deep-work","title":"Deep work","description":"By Cal Newport","sidebar":"tutorialSidebar"},"book-summaries/didnt-see-it-coming":{"id":"book-summaries/didnt-see-it-coming","title":"Didn\'t see it coming","description":"Overcoming the Seven Greatest Challenges That No One Expects and Everyone Experiences Book by Carey Nieuwhof","sidebar":"tutorialSidebar"},"book-summaries/do-hard-things":{"id":"book-summaries/do-hard-things","title":"Do Hard Things","description":"By Steve Magness","sidebar":"tutorialSidebar"},"book-summaries/doing-good-better":{"id":"book-summaries/doing-good-better","title":"Doing Good Better","description":"By William MacAskill","sidebar":"tutorialSidebar"},"book-summaries/dollars-and-sense":{"id":"book-summaries/dollars-and-sense","title":"Dollars and Sense","description":"By Dan Ariely and Jeff Kreisler","sidebar":"tutorialSidebar"},"book-summaries/doughnut-economics":{"id":"book-summaries/doughnut-economics","title":"Doughnut Economics","description":"Part 1: The Author","sidebar":"tutorialSidebar"},"book-summaries/economics-for-the-common-good":{"id":"book-summaries/economics-for-the-common-good","title":"Economics for the Common Good","description":"By Jean Tirole","sidebar":"tutorialSidebar"},"book-summaries/edge-of-chaos":{"id":"book-summaries/edge-of-chaos","title":"Edge of Chaos","description":"By Dambisa Moyo","sidebar":"tutorialSidebar"},"book-summaries/essentialism":{"id":"book-summaries/essentialism","title":"Essentialism","description":"By Greg McKeown","sidebar":"tutorialSidebar"},"book-summaries/everyday-millionaires":{"id":"book-summaries/everyday-millionaires","title":"Everyday Millionaires","description":"By Chris Hogan","sidebar":"tutorialSidebar"},"book-summaries/find-your-element":{"id":"book-summaries/find-your-element","title":"Find Your Element","description":"By Ken Robinson","sidebar":"tutorialSidebar"},"book-summaries/first-things-first":{"id":"book-summaries/first-things-first","title":"First Things First","description":"By Stephen Covey, A. Roger Merrill, and Rebecca R. Merrill","sidebar":"tutorialSidebar"},"book-summaries/from-strength-to-strength":{"id":"book-summaries/from-strength-to-strength","title":"From Strength to Strength","description":"Finding Success, Happiness and Deep Purpose in the Second Half of Life","sidebar":"tutorialSidebar"},"book-summaries/game-changers":{"id":"book-summaries/game-changers","title":"Game Changers","description":"By Dave Asprey","sidebar":"tutorialSidebar"},"book-summaries/get-it":{"id":"book-summaries/get-it","title":"Get it","description":"By Amy K Hutchens","sidebar":"tutorialSidebar"},"book-summaries/getting-things-done":{"id":"book-summaries/getting-things-done","title":"Getting Things Done","description":"CPR - Capture Process Review","sidebar":"tutorialSidebar"},"book-summaries/good-economics-for-hard-times":{"id":"book-summaries/good-economics-for-hard-times","title":"Good Economics for Hard Times","description":"\\"Good Economics for Hard Times","sidebar":"tutorialSidebar"},"book-summaries/how-should-we-live":{"id":"book-summaries/how-should-we-live","title":"How should we live?","description":"By Roman Krznaric","sidebar":"tutorialSidebar"},"book-summaries/how-to-be-a-stoic":{"id":"book-summaries/how-to-be-a-stoic","title":"How to be a Stoic","description":"By Massimo Pigliucci","sidebar":"tutorialSidebar"},"book-summaries/how-to-be-an-adult-in-relationships":{"id":"book-summaries/how-to-be-an-adult-in-relationships","title":"How to be an adult in relationships","description":"By David Richo","sidebar":"tutorialSidebar"},"book-summaries/how-to-have-impossible-conversations":{"id":"book-summaries/how-to-have-impossible-conversations","title":"How to have impossible conversations","description":"By Peter Boghossian and James A. Lindsay","sidebar":"tutorialSidebar"},"book-summaries/how-to-live-a-good-life":{"id":"book-summaries/how-to-live-a-good-life","title":"How to live a good life","description":"By Massimo pigliucci","sidebar":"tutorialSidebar"},"book-summaries/how-to-make-money-in-stocks":{"id":"book-summaries/how-to-make-money-in-stocks","title":"How to Make Money in Stocks","description":"By William J. O\'Neil","sidebar":"tutorialSidebar"},"book-summaries/how-to-take-smart-notes":{"id":"book-summaries/how-to-take-smart-notes","title":"How to Take Smart Notes","description":"By S\xf6nke Ahrens","sidebar":"tutorialSidebar"},"book-summaries/hyperfocus":{"id":"book-summaries/hyperfocus","title":"Hyperfocus","description":"By Chris Bailey","sidebar":"tutorialSidebar"},"book-summaries/leaders-eat-last":{"id":"book-summaries/leaders-eat-last","title":"Leaders Eat Last","description":"By Simon Sinek","sidebar":"tutorialSidebar"},"book-summaries/leadership-and-the-rise-of-great-powers":{"id":"book-summaries/leadership-and-the-rise-of-great-powers","title":"Leadership and the Rise of Great Powers","description":"By Yan Xuetong","sidebar":"tutorialSidebar"},"book-summaries/life-is-in-the-transitions":{"id":"book-summaries/life-is-in-the-transitions","title":"Life is in the Transitions","description":"Mastering Change at Any Age By Bruce Feiler","sidebar":"tutorialSidebar"},"book-summaries/off-the-clock":{"id":"book-summaries/off-the-clock","title":"Off the Clock","description":"By Laura Vanderkam","sidebar":"tutorialSidebar"},"book-summaries/on-writing-well":{"id":"book-summaries/on-writing-well","title":"On Writing Well","description":"By William Zinsser","sidebar":"tutorialSidebar"},"book-summaries/organize-tomorrow-today":{"id":"book-summaries/organize-tomorrow-today","title":"Organize Tomorrow Today","description":"By Jason Selk & Tom Bartow","sidebar":"tutorialSidebar"},"book-summaries/others":{"id":"book-summaries/others","title":"Others","description":"- THE LONG GAME by Dorie Clark | Core Message","sidebar":"tutorialSidebar"},"book-summaries/power-and-prediction":{"id":"book-summaries/power-and-prediction","title":"Power and Prediction","description":"The Disruptive Economics of Artificial Intelligence","sidebar":"tutorialSidebar"},"book-summaries/power-relationships":{"id":"book-summaries/power-relationships","title":"Power Relationships","description":"By Andrew Sobel and Jerold Panas","sidebar":"tutorialSidebar"},"book-summaries/power-sex-suicide":{"id":"book-summaries/power-sex-suicide","title":"Power, Sex, Suicide","description":"By Nick Lane","sidebar":"tutorialSidebar"},"book-summaries/predictably-irrational":{"id":"book-summaries/predictably-irrational","title":"Predictably Irrational","description":"By Dan Ariely","sidebar":"tutorialSidebar"},"book-summaries/primed-to-perform":{"id":"book-summaries/primed-to-perform","title":"Primed to Perform","description":"By Neel Doshi & Lindsay McGregor","sidebar":"tutorialSidebar"},"book-summaries/principles":{"id":"book-summaries/principles","title":"Principles","description":"By Ray Dalio (Amarjeet)","sidebar":"tutorialSidebar"},"book-summaries/readme":{"id":"book-summaries/readme","title":"Book Summaries","description":"- How to take smart notes","sidebar":"tutorialSidebar"},"book-summaries/secrets-of-power-negotiating":{"id":"book-summaries/secrets-of-power-negotiating","title":"Secrets of Power Negotiating","description":"By Roger Dawson","sidebar":"tutorialSidebar"},"book-summaries/sell-like-crazy":{"id":"book-summaries/sell-like-crazy","title":"Sell Like Crazy","description":"By Sabri Suby","sidebar":"tutorialSidebar"},"book-summaries/skin-in-the-game":{"id":"book-summaries/skin-in-the-game","title":"Skin in the Game","description":"By Nassim Nicholas Taleb","sidebar":"tutorialSidebar"},"book-summaries/small-is-beautiful":{"id":"book-summaries/small-is-beautiful","title":"Small Is Beautiful: Economics as if People Mattered","description":"By ERNST F. SCHUMACHER","sidebar":"tutorialSidebar"},"book-summaries/social-intelligence":{"id":"book-summaries/social-intelligence","title":"Social Intelligence","description":"By Daniel Goleman (27 Nov 2018)","sidebar":"tutorialSidebar"},"book-summaries/solve-for-happy":{"id":"book-summaries/solve-for-happy","title":"Solve for Happy","description":"Engineer your path to joy by Mo Gawdat (26 June 2018)","sidebar":"tutorialSidebar"},"book-summaries/switch-on-your-brain":{"id":"book-summaries/switch-on-your-brain","title":"Switch on your brain","description":"- Watch your thoughts - for they become your actions, which, in turn, become your character and destiny","sidebar":"tutorialSidebar"},"book-summaries/talking-across-divide":{"id":"book-summaries/talking-across-divide","title":"Talking Across the Divide","description":"By Justin Lee","sidebar":"tutorialSidebar"},"book-summaries/the-22-immutable-laws-of-branding":{"id":"book-summaries/the-22-immutable-laws-of-branding","title":"The 22 Immutable Laws of Branding","description":"By Al Ries and Laura Ries","sidebar":"tutorialSidebar"},"book-summaries/the-3-minute-rule":{"id":"book-summaries/the-3-minute-rule","title":"The 3-Minute Rule","description":"By Brant Pinvidic","sidebar":"tutorialSidebar"},"book-summaries/the-4-agreements":{"id":"book-summaries/the-4-agreements","title":"The 4 Agreements","description":"Agreement 1: Be impeccable with your Word","sidebar":"tutorialSidebar"},"book-summaries/the-4-hour-workweek":{"id":"book-summaries/the-4-hour-workweek","title":"The 4-Hour Workweek","description":"By Tim Ferriss","sidebar":"tutorialSidebar"},"book-summaries/the-5-am-club":{"id":"book-summaries/the-5-am-club","title":"The 5 AM Club","description":"By Robin Sharma","sidebar":"tutorialSidebar"},"book-summaries/the-almanack-of-naval-ravikant":{"id":"book-summaries/the-almanack-of-naval-ravikant","title":"The Almanack of Naval Ravikant","description":"A guide to wealth and happiness","sidebar":"tutorialSidebar"},"book-summaries/the-art-of-impossible":{"id":"book-summaries/the-art-of-impossible","title":"The Art of Impossible","description":"By Steven Kotler","sidebar":"tutorialSidebar"},"book-summaries/the-art-of-logic":{"id":"book-summaries/the-art-of-logic","title":"The Art of Logic","description":"By Eugenia Cheng","sidebar":"tutorialSidebar"},"book-summaries/the-book-of-joy":{"id":"book-summaries/the-book-of-joy","title":"The Book of Joy","description":"By Dalai Lama and Desmond Tutu (24 Dec 2018)","sidebar":"tutorialSidebar"},"book-summaries/the-courage-to-be-happy":{"id":"book-summaries/the-courage-to-be-happy","title":"The Courage to be Happy","description":"True Contentment Is In Your Power By Ichiro Kishimi","sidebar":"tutorialSidebar"},"book-summaries/the-dip":{"id":"book-summaries/the-dip","title":"The Dip","description":"By Seth Godin","sidebar":"tutorialSidebar"},"book-summaries/the-distraction-addiction":{"id":"book-summaries/the-distraction-addiction","title":"The Distriction Addiction","description":"By Alex Soojung-Kim Pang","sidebar":"tutorialSidebar"},"book-summaries/the-elephant-in-the-brain":{"id":"book-summaries/the-elephant-in-the-brain","title":"The Elephant in the Brain","description":"- Most of our everyday actions can be traced back to some form of signaling or status seeking","sidebar":"tutorialSidebar"},"book-summaries/the-grid":{"id":"book-summaries/the-grid","title":"The Grid","description":"By Matt Watkinson","sidebar":"tutorialSidebar"},"book-summaries/the-knowledge-illusion":{"id":"book-summaries/the-knowledge-illusion","title":"The Knowledge Illusion","description":"By Steven Sloman & Philip Fernbach","sidebar":"tutorialSidebar"},"book-summaries/the-life-you-can-save":{"id":"book-summaries/the-life-you-can-save","title":"The life you can save","description":"By Peter Singer","sidebar":"tutorialSidebar"},"book-summaries/the-organized-mind":{"id":"book-summaries/the-organized-mind","title":"The Organized Mind","description":"By Daniel Levitin","sidebar":"tutorialSidebar"},"book-summaries/the-path-between-us":{"id":"book-summaries/the-path-between-us","title":"The path between us","description":"An Enneagram Journey to Healthy Relationships","sidebar":"tutorialSidebar"},"book-summaries/the-power-of-concentration":{"id":"book-summaries/the-power-of-concentration","title":"The power of Concentration","description":"By Thereon Q Dumont","sidebar":"tutorialSidebar"},"book-summaries/the-power-of-regret":{"id":"book-summaries/the-power-of-regret","title":"The Power of Regret","description":"THE POWER OF REGRET by Daniel Pink | Core Message","sidebar":"tutorialSidebar"},"book-summaries/the-science-of-selling":{"id":"book-summaries/the-science-of-selling","title":"The Science of Selling","description":"By David Hoffeld","sidebar":"tutorialSidebar"},"book-summaries/the-seven-habits-of-highly-effective-people":{"id":"book-summaries/the-seven-habits-of-highly-effective-people","title":"The Seven Habits of Highly Effective People","description":"By Stephen Covey","sidebar":"tutorialSidebar"},"book-summaries/the-slight-edge":{"id":"book-summaries/the-slight-edge","title":"The Slight Edge","description":"Turning Simple Disciplines into Massive Success and Happiness","sidebar":"tutorialSidebar"},"book-summaries/the-squiggly-career":{"id":"book-summaries/the-squiggly-career","title":"The Squiggly Career","description":"By Helen Tupper and Sarah Ellis","sidebar":"tutorialSidebar"},"book-summaries/the-status-game":{"id":"book-summaries/the-status-game","title":"The Status Game","description":"by Will Storr","sidebar":"tutorialSidebar"},"book-summaries/the-tangled-tree":{"id":"book-summaries/the-tangled-tree","title":"The Tangled Tree","description":"By David Quammen","sidebar":"tutorialSidebar"},"book-summaries/the-uninhabitable-earth":{"id":"book-summaries/the-uninhabitable-earth","title":"The Uninhabitable Earth","description":"By David Wallace-Wells - A Story of the Future","sidebar":"tutorialSidebar"},"book-summaries/think-again":{"id":"book-summaries/think-again","title":"Think Again","description":"By Adam Grant","sidebar":"tutorialSidebar"},"book-summaries/think-and-grow-rich":{"id":"book-summaries/think-and-grow-rich","title":"Think and Grow Rich","description":"By Napolean Hill","sidebar":"tutorialSidebar"},"book-summaries/thinking-fast-and-slow":{"id":"book-summaries/thinking-fast-and-slow","title":"Thinking, Fast and Slow","description":"By Daniel Kahneman","sidebar":"tutorialSidebar"},"book-summaries/thinking-in-systems":{"id":"book-summaries/thinking-in-systems","title":"Thinking in Systems","description":"By Donella H. Meadows","sidebar":"tutorialSidebar"},"book-summaries/time-and-how-to-spend-it":{"id":"book-summaries/time-and-how-to-spend-it","title":"Time and How to Spend it","description":"By James Wallman","sidebar":"tutorialSidebar"},"book-summaries/ultralearning":{"id":"book-summaries/ultralearning","title":"UltraLearning","description":"By Scott H. Young","sidebar":"tutorialSidebar"},"book-summaries/what-philosophy-can-teach-you-about-being-a-better-leader":{"id":"book-summaries/what-philosophy-can-teach-you-about-being-a-better-leader","title":"What Philosophy Can Teach You About Being a Better Leader","description":"By Alison Reynolds, Dominic Houlder, Jules Goddard, and David Lewis","sidebar":"tutorialSidebar"},"book-summaries/who-we-are-and-how-we-got-here":{"id":"book-summaries/who-we-are-and-how-we-got-here","title":"Who we are and how we got here","description":"By David Reich","sidebar":"tutorialSidebar"},"cloud/aws/amazon-pinpoint":{"id":"cloud/aws/amazon-pinpoint","title":"Amazon Pinpoint","description":"Understand and engage your customers by sending them personalized, timely, and relevant communications through multiple channels.","sidebar":"tutorialSidebar"},"cloud/aws/analytics/amazon-athena":{"id":"cloud/aws/analytics/amazon-athena","title":"Amazon Athena","description":"Based on Presto","sidebar":"tutorialSidebar"},"cloud/aws/analytics/amazon-devops-guru":{"id":"cloud/aws/analytics/amazon-devops-guru","title":"Amazon DevOps Guru","description":"Amazon DevOps Guru - Improve application availability with ML-powered cloud operations","sidebar":"tutorialSidebar"},"cloud/aws/analytics/amazon-kinesis":{"id":"cloud/aws/analytics/amazon-kinesis","title":"Amazon Kinesis","description":"Work with Real-time Streaming Data","sidebar":"tutorialSidebar"},"cloud/aws/analytics/readme":{"id":"cloud/aws/analytics/readme","title":"Analytics","description":"- Amazon Athena - Query Data in S3 using SQL","sidebar":"tutorialSidebar"},"cloud/aws/aws-backup":{"id":"cloud/aws/aws-backup","title":"AWS Backup","description":"AWS Backup is a fully-managed service that makes it easy to centralize and automate data protection across AWS services, in the cloud, and on premises. Using this service, you can configure backup policies and monitor activity for your AWS resources in one place. It allows you to automate and consolidate backup tasks that were previously performed service-by-service, and removes the need to create custom scripts and manual processes. With a few clicks in the AWS Backup console, you can automate your data protection policies and schedules.","sidebar":"tutorialSidebar"},"cloud/aws/aws-competency-program":{"id":"cloud/aws/aws-competency-program","title":"AWS Competency Program","description":"Industry","sidebar":"tutorialSidebar"},"cloud/aws/aws-database-migration-service-dms":{"id":"cloud/aws/aws-database-migration-service-dms","title":"AWS Database Migration Service (DMS)","description":"AWS Database Migration Service (AWS DMS) is a cloud service that makes it easy to migrate relational databases, data warehouses, NoSQL databases, and other types of data stores. You can use AWS DMS to migrate your data into the AWS Cloud, between on-premises instances (through an AWS Cloud setup), or between combinations of cloud and on-premises setups.","sidebar":"tutorialSidebar"},"cloud/aws/aws-glue":{"id":"cloud/aws/aws-glue","title":"AWS Glue","description":"Simple, flexible, and cost-effective ETL","sidebar":"tutorialSidebar"},"cloud/aws/aws-rekognition":{"id":"cloud/aws/aws-rekognition","title":"AWS Rekognition","description":"Moderating Content / Content Moderation / Community Moderation","sidebar":"tutorialSidebar"},"cloud/aws/aws-services":{"id":"cloud/aws/aws-services","title":"AWS Services","description":"https://docs.aws.amazon.com/index.html","sidebar":"tutorialSidebar"},"cloud/aws/aws-services-list":{"id":"cloud/aws/aws-services-list","title":"AWS Services List","description":"Total - 322 services","sidebar":"tutorialSidebar"},"cloud/aws/aws-sns":{"id":"cloud/aws/aws-sns","title":"AWS SNS","description":"Amazon Simple Notification Service","sidebar":"tutorialSidebar"},"cloud/aws/aws-sqs":{"id":"cloud/aws/aws-sqs","title":"AWS SQS","description":"Managed Message Queues","sidebar":"tutorialSidebar"},"cloud/aws/cli-commands":{"id":"cloud/aws/cli-commands","title":"CLI Commands","description":"AWS cli (brew install awscli)","sidebar":"tutorialSidebar"},"cloud/aws/compute/amazon-ecs":{"id":"cloud/aws/compute/amazon-ecs","title":"Amazon ECS (Elastic Container Service)","description":"image","sidebar":"tutorialSidebar"},"cloud/aws/compute/amazon-eks":{"id":"cloud/aws/compute/amazon-eks","title":"Amazon EKS","description":"Amazon Elastic Kubernetes Service (Amazon EKS) is a managed service that makes it easy for you to run Kubernetes on AWS without needing to stand up or maintain your own Kubernetes control plane. Kubernetes is an open-source system for automating the deployment, scaling, and management of containerized applications.","sidebar":"tutorialSidebar"},"cloud/aws/compute/aws-lambda":{"id":"cloud/aws/compute/aws-lambda","title":"AWS Lambda","description":"https://docs.aws.amazon.com/lambda/latest/dg/lambda-edge.html","sidebar":"tutorialSidebar"},"cloud/aws/compute/burstable-instances":{"id":"cloud/aws/compute/burstable-instances","title":"Burstable Instances","description":"Traditional Amazon EC2 instance types provide fixed CPU resources, while burstable performance instances provide a baseline level of CPU utilization with the ability to burst CPU utilization above the baseline level. This ensures that you pay only for baseline CPU plus any additional burst CPU usage resulting in lower compute costs. The baseline utilization and ability to burst are governed by CPU credits. Burstable performance instances are the only instance types that use credits for CPU usage.","sidebar":"tutorialSidebar"},"cloud/aws/compute/ec2-instance-types":{"id":"cloud/aws/compute/ec2-instance-types","title":"EC2 Instance types","description":"It just got easier to discover and compare EC2 instance types | AWS Compute Blog","sidebar":"tutorialSidebar"},"cloud/aws/compute/readme":{"id":"cloud/aws/compute/readme","title":"Compute","description":"Amazon EC2","sidebar":"tutorialSidebar"},"cloud/aws/cost-optimization-explorer-billing":{"id":"cloud/aws/cost-optimization-explorer-billing","title":"Cost Optimization / Explorer / Billing","description":"Cost Optimization with AWS","sidebar":"tutorialSidebar"},"cloud/aws/course-architecting-on-aws":{"id":"cloud/aws/course-architecting-on-aws","title":"Architecting on AWS","description":"12th August to 14th August 2020","sidebar":"tutorialSidebar"},"cloud/aws/developer-tools/code-build":{"id":"cloud/aws/developer-tools/code-build","title":"Code Build","description":"AWS CodeBuild is a fully managed continuous integration service that compiles source code, runs tests, and produces software packages that are ready to deploy. With CodeBuild, you don\'t need to provision, manage, and scale your own build servers. CodeBuild scales continuously and processes multiple builds concurrently, so your builds are not left waiting in a queue.","sidebar":"tutorialSidebar"},"cloud/aws/developer-tools/intro":{"id":"cloud/aws/developer-tools/intro","title":"Developer Tools","description":"AWS CodeStar","sidebar":"tutorialSidebar"},"cloud/aws/intro":{"id":"cloud/aws/intro","title":"Intro","description":"AWS services to avoid","sidebar":"tutorialSidebar"},"cloud/aws/networking-content-delivery/amazon-cloudfront":{"id":"cloud/aws/networking-content-delivery/amazon-cloudfront","title":"amazon-cloudfront","description":"Amazon CloudFront","sidebar":"tutorialSidebar"},"cloud/aws/networking-content-delivery/amazon-vpc":{"id":"cloud/aws/networking-content-delivery/amazon-vpc","title":"Amazon VPC","description":"Amazon Virtual Private Cloud (Amazon VPC) lets you provision a logically isolated section of the AWS Cloud where you can launch AWS resources in a virtual network that you define. You have complete control over your virtual networking environment, including selection of your own IP address range, creation of subnets, and configuration of route tables and network gateways. You can use both IPv4 and IPv6 in your VPC for secure and easy access to resources and applications.","sidebar":"tutorialSidebar"},"cloud/aws/networking-content-delivery/aws-elb":{"id":"cloud/aws/networking-content-delivery/aws-elb","title":"AWS ELB","description":"Elastic Load Balancing automatically distributes incoming application traffic across multiple targets, such as Amazon EC2 instances, containers, IP addresses, and Lambda functions. It can handle the varying load of your application traffic in a single Availability Zone or across multiple Availability Zones. Elastic Load Balancing offers three types of load balancers that all feature the high availability, automatic scaling, and robust security necessary to make your applications fault tolerant.","sidebar":"tutorialSidebar"},"cloud/aws/networking-content-delivery/intro":{"id":"cloud/aws/networking-content-delivery/intro","title":"Networking and Content Delivery","description":"1. Amazon VPC - Isolated Cloud Resources","sidebar":"tutorialSidebar"},"cloud/aws/others":{"id":"cloud/aws/others","title":"Others","description":"Creating a new account","sidebar":"tutorialSidebar"},"cloud/aws/readme":{"id":"cloud/aws/readme","title":"AWS","description":"- Intro","sidebar":"tutorialSidebar"},"cloud/aws/security-identity-compliance/compliance":{"id":"cloud/aws/security-identity-compliance/compliance","title":"Compliances","description":"PCI Compliance","sidebar":"tutorialSidebar"},"cloud/aws/security-identity-compliance/compliance-mcqs":{"id":"cloud/aws/security-identity-compliance/compliance-mcqs","title":"Compliance MCQs","description":"Banking Regulation & Compliance and Legal Aspects MCQ \\\\[Free PDF\\\\] - Objective Question Answer for Banking Regulation & Compliance and Legal Aspects Quiz - Download Now!","sidebar":"tutorialSidebar"},"cloud/aws/security-identity-compliance/iam":{"id":"cloud/aws/security-identity-compliance/iam","title":"IAM","description":"- permission guardrails","sidebar":"tutorialSidebar"},"cloud/aws/security-identity-compliance/intro":{"id":"cloud/aws/security-identity-compliance/intro","title":"Security, Identity and Compliance","description":"1. AWS Identity & Access Management (IAM) - Manage User Access and Encryption Keys","sidebar":"tutorialSidebar"},"cloud/aws/security-identity-compliance/license-scanning":{"id":"cloud/aws/security-identity-compliance/license-scanning","title":"License Scanning","description":"License scanning refers to the process of automatically analyzing and identifying software licenses associated with code or components within a software project.","sidebar":"tutorialSidebar"},"cloud/aws/security-identity-compliance/security-guidelines":{"id":"cloud/aws/security-identity-compliance/security-guidelines","title":"Security Guidelines","description":"Access Management","sidebar":"tutorialSidebar"},"cloud/aws/security-identity-compliance/tools":{"id":"cloud/aws/security-identity-compliance/tools","title":"Tools","description":"AWS Audit Manager","sidebar":"tutorialSidebar"},"cloud/aws/storage/amazon-ebs":{"id":"cloud/aws/storage/amazon-ebs","title":"Amazon EBS","description":"Amazon EBS Snapshot","sidebar":"tutorialSidebar"},"cloud/aws/storage/amazon-efs":{"id":"cloud/aws/storage/amazon-efs","title":"Amazon EFS","description":"Amazon Elastic File System (EFS) is designed to provide serverless, fully elastic file storage that lets you share file data without provisioning or managing storage capacity and performance. It can be used with AWS services and on-premises resources, and it\'s built to scale to petabytes on demand without disrupting applications.","sidebar":"tutorialSidebar"},"cloud/aws/storage/amazon-s3":{"id":"cloud/aws/storage/amazon-s3","title":"Amazon S3","description":"S3: More than 235 distributed microservices","sidebar":"tutorialSidebar"},"cloud/aws/storage/amazon-s3-pricing":{"id":"cloud/aws/storage/amazon-s3-pricing","title":"Amazon S3 Pricing","description":"- S3 Standard (Frequently accessed data) - $0.023 per GB","sidebar":"tutorialSidebar"},"cloud/aws/storage/amazon-s3-storage-classes":{"id":"cloud/aws/storage/amazon-s3-storage-classes","title":"Amazon S3 Storage Classes","description":"General purpose - Amazon S3 Standard (S3 Standard)","sidebar":"tutorialSidebar"},"cloud/aws/storage/iops":{"id":"cloud/aws/storage/iops","title":"IOPS","description":"What You Need to Know About IOPS","sidebar":"tutorialSidebar"},"cloud/aws/storage/readme":{"id":"cloud/aws/storage/readme","title":"Storage","description":"1. Amazon S3 (Blob storage)","sidebar":"tutorialSidebar"},"cloud/others/azure/commands":{"id":"cloud/others/azure/commands","title":"Commands","description":"Use az --version to display the current version.","sidebar":"tutorialSidebar"},"cloud/others/azure/iam":{"id":"cloud/others/azure/iam","title":"IAM","description":"What is identity and access management (IAM)? - Microsoft Entra | Microsoft Learn","sidebar":"tutorialSidebar"},"cloud/others/azure/microsoft-biztalk":{"id":"cloud/others/azure/microsoft-biztalk","title":"Microsoft BizTalk","description":"Microsoft BizTalk","sidebar":"tutorialSidebar"},"cloud/others/azure/readme":{"id":"cloud/others/azure/readme","title":"Azure","description":"Azure Portal \\"How To\\" Series","sidebar":"tutorialSidebar"},"cloud/others/azure/services":{"id":"cloud/others/azure/services","title":"Services","description":"Total Services - 258","sidebar":"tutorialSidebar"},"cloud/others/business-rule-engine":{"id":"cloud/others/business-rule-engine","title":"Business Rules Engine (BRE) / Decision Rule Engine","description":"https://martinfowler.com/bliki/RulesEngine.html - Avoid building rule engine","sidebar":"tutorialSidebar"},"cloud/others/cdn-cache-invalidation":{"id":"cloud/others/cdn-cache-invalidation","title":"Cache Invalidation","description":"Cache Invalidation vs Object Versioning","sidebar":"tutorialSidebar"},"cloud/others/cdn-comparision":{"id":"cloud/others/cdn-comparision","title":"CDN Comparision","description":"- Cloudflare - cloudflare.com/network/","sidebar":"tutorialSidebar"},"cloud/others/cdn-content-delivery-network":{"id":"cloud/others/cdn-content-delivery-network","title":"CDN (Content Delivery Network)","description":"Why Do We Need a CDN for Your Application?","sidebar":"tutorialSidebar"},"cloud/others/cloudflare":{"id":"cloud/others/cloudflare","title":"Cloudflare","description":"A \\"Cloudflare Worker\\" is JavaScript you write that runs on Cloudflare\'s edge. A \\"Cloudflare Service Worker\\" is specifically a worker which handles HTTP traffic and is written against the Service Worker API.","sidebar":"tutorialSidebar"},"cloud/others/firebase/automatic-collected-events":{"id":"cloud/others/firebase/automatic-collected-events","title":"Automatic Collected Events","description":"Automatically collected events are triggered by basic interactions with your app. As long as you use the Firebase SDK, you don\'t need to write any additional code to collect these events.","sidebar":"tutorialSidebar"},"cloud/others/firebase/fcm-notifications":{"id":"cloud/others/firebase/fcm-notifications","title":"FCM Notifications","description":"Firebase Cloud Messaging (FCM) is a cross-platform messaging solution that lets you reliably send messages at no cost.","sidebar":"tutorialSidebar"},"cloud/others/firebase/firebase-google-analytics":{"id":"cloud/others/firebase/firebase-google-analytics","title":"Firebase / Google Analytics","description":"Google Analytics for Firebase, formerly Firebase Analytics, is now known as Google Analytics. It works great for your mobile apps! Oh, but Google Analytics for Mobile has been deprecated; they recommend you use Firebase Analytics, which, as you\'ll recall, is now Google Analytics. In recent news, you\'ll be excited to hear that Google Analytics now supports web apps, but don\'t confuse that with Google Analytics for the web!","sidebar":"tutorialSidebar"},"cloud/others/firebase/readme":{"id":"cloud/others/firebase/readme","title":"Firebase","description":"Google Signals","sidebar":"tutorialSidebar"},"cloud/others/firebase/web-push-notifications":{"id":"cloud/others/firebase/web-push-notifications","title":"Web Push Notifications","description":"As opposed to emails, push notifications require an opt-in from customers and are proven to deliver better CTRs (Click Through Rates). Therefore, engaging customers through this highly-effective, rapidly growing channel could be challenging, but equally fruitful.","sidebar":"tutorialSidebar"},"cloud/others/gcp-anthos":{"id":"cloud/others/gcp-anthos","title":"GCP Anthos","description":"Google has built Anthos (formerly known as Cloud Services Platform or CSP) to accelerate application modernization for SaaS providers, developers, IT operators and their end users. In order to balance developer agility, operational efficiency and platform governance, the Anthos framework enables decoupling across critical components:","sidebar":"tutorialSidebar"},"cloud/others/gcp-bigquery-big-query":{"id":"cloud/others/gcp-bigquery-big-query","title":"GCP BigQuery / Big Query","description":"Architecture","sidebar":"tutorialSidebar"},"cloud/others/gcp-google-cloud-platform":{"id":"cloud/others/gcp-google-cloud-platform","title":"GCP / Google Cloud Platform","description":"Google Cloud Developer Cheat Sheet","sidebar":"tutorialSidebar"},"cloud/others/gcp-ml-services":{"id":"cloud/others/gcp-ml-services","title":"GCP ML Services","description":"Gemini AI","sidebar":"tutorialSidebar"},"cloud/others/imagekit":{"id":"cloud/others/imagekit","title":"Imagekit","description":"Intro","sidebar":"tutorialSidebar"},"cloud/others/linode":{"id":"cloud/others/linode","title":"Linode","description":"Linode Kubernetes Engine (LKE)","sidebar":"tutorialSidebar"},"cloud/others/loan-management-system-lms":{"id":"cloud/others/loan-management-system-lms","title":"Loan Management System (LMS)","description":"- Disbursements","sidebar":"tutorialSidebar"},"cloud/others/low-code-no-code-lcnc":{"id":"cloud/others/low-code-no-code-lcnc","title":"Low-Code / No-Code Platforms / LCNC","description":"- Medium Code","sidebar":"tutorialSidebar"},"cloud/others/mdm-mobile-device-management":{"id":"cloud/others/mdm-mobile-device-management","title":"MDM (Mobile Device Management)","description":"Mobile device management (MDM) is a proven methodology and toolset used to provide a workforce mobile productivity tools and applications while keeping corporate data secure.","sidebar":"tutorialSidebar"},"cloud/others/openstack":{"id":"cloud/others/openstack","title":"Openstack","description":"OpenStack is a cloud operating system that controls large pools of compute, storage, and networking resources throughout a datacenter, all managed through a dashboard that gives administrators control while empowering their users to provision resources through a web interface.","sidebar":"tutorialSidebar"},"cloud/others/oracle":{"id":"cloud/others/oracle","title":"Oracle","description":"Become an Autonomous Database Specialist","sidebar":"tutorialSidebar"},"cloud/others/others-saas":{"id":"cloud/others/others-saas","title":"Others - SAAS","description":"- blogtrottr - RSS Online Feed","sidebar":"tutorialSidebar"},"cloud/others/readme":{"id":"cloud/others/readme","title":"Other Clouds","description":"- Google Cloud Platform (GCP)","sidebar":"tutorialSidebar"},"cloud/others/sap":{"id":"cloud/others/sap","title":"SAP","description":"SAP SE is a German multinational software company based in Walldorf, Baden-W\xfcrttemberg. It develops enterprise software to manage business operations and customer relations. The company is the world\'s leading enterprise resource planning (ERP) software vendor. Apart from ERP software, the company also sells database software and technology (particularly its own brands), cloud-engineered systems, and other ERP software products, such as human capital management (HCM) software, customer relationship management (CRM) software (also known as customer experience), enterprise performance management (EPM) software, product lifecycle management (PLM) software, supplier relationship management (SRM) software, supply chain management (SCM) software, business technology platform (BTP) software and programming environment SAP AppGyver for business.","sidebar":"tutorialSidebar"},"cloud/others/ticketing-tms":{"id":"cloud/others/ticketing-tms","title":"Ticketing / TMS","description":"Ticketing Management System (TMS)","sidebar":"tutorialSidebar"},"cloud/others/vmware":{"id":"cloud/others/vmware","title":"VMware","description":"VMware ESXi","sidebar":"tutorialSidebar"},"cloud/readme":{"id":"cloud/readme","title":"Cloud","description":"- AWS","sidebar":"tutorialSidebar"},"cloud/tools":{"id":"cloud/tools","title":"Tools","description":"Infrastructure Tools","sidebar":"tutorialSidebar"},"computer-science/distributed-system/byzantine-generals-problem":{"id":"computer-science/distributed-system/byzantine-generals-problem","title":"Byzantine Generals\' Problem","description":"image","sidebar":"tutorialSidebar"},"computer-science/distributed-system/cap-theorem":{"id":"computer-science/distributed-system/cap-theorem","title":"CAP Theorem","description":"Proposed by Eric Brewer (Berkeley)","sidebar":"tutorialSidebar"},"computer-science/distributed-system/clocks":{"id":"computer-science/distributed-system/clocks","title":"Clocks","description":"Atomic Broadcast","sidebar":"tutorialSidebar"},"computer-science/distributed-system/consensus-protocols":{"id":"computer-science/distributed-system/consensus-protocols","title":"Consensus Protocols","description":"There are a number of ways we can go about replicating the log data. Broadly speaking, we can group the techniques into two different categories:","sidebar":"tutorialSidebar"},"computer-science/distributed-system/consistency":{"id":"computer-science/distributed-system/consistency","title":"Consistency","description":"When we\'re talking about consistency in distributed systems, we are referring to the concept that you will have some data distributed in different nodes of your system, and each one of those might have a copy of your data. If it\'s a read-only dataset, any client connecting to any of the nodes will always receive the same data, so there is no consistency problem. When it comes to read-write datasets, some conflicts can arise. Each one of the nodes can update its own copy of the data, so if a client connects to different nodes in your system, it might receive different values for the same data.","sidebar":"tutorialSidebar"},"computer-science/distributed-system/distributed-logging":{"id":"computer-science/distributed-system/distributed-logging","title":"Distributed Logging","description":"Logs","sidebar":"tutorialSidebar"},"computer-science/distributed-system/fallacies-and-problems":{"id":"computer-science/distributed-system/fallacies-and-problems","title":"Fallacies and Problems","description":"Fallacies of distributed computing","sidebar":"tutorialSidebar"},"computer-science/distributed-system/intro":{"id":"computer-science/distributed-system/intro","title":"Intro","description":"Andrew S. Tanenbaum","sidebar":"tutorialSidebar"},"computer-science/distributed-system/others":{"id":"computer-science/distributed-system/others","title":"Others","description":"CRDTs (Conflict-free Replicated Data Types)","sidebar":"tutorialSidebar"},"computer-science/distributed-system/readme":{"id":"computer-science/distributed-system/readme","title":"Distributed System","description":"- Intro","sidebar":"tutorialSidebar"},"computer-science/distributed-system/vocabulary":{"id":"computer-science/distributed-system/vocabulary","title":"Vocabulary","description":"Harvest and Yield","sidebar":"tutorialSidebar"},"computer-science/general/common":{"id":"computer-science/general/common","title":"Common","description":"CAPTCHA - Completely Automated Public Turing test to tell Computers and Humans Apart","sidebar":"tutorialSidebar"},"computer-science/general/newsletter-learning-resources":{"id":"computer-science/general/newsletter-learning-resources","title":"Newsletter / Learning Resources","description":"https://www.freecodecamp.org/news/how-to-create-an-email-newsletter-design-layout-send","sidebar":"tutorialSidebar"},"computer-science/general/others":{"id":"computer-science/general/others","title":"Others","description":"ISO 3103 - How to brew tea?","sidebar":"tutorialSidebar"},"computer-science/general/readme":{"id":"computer-science/general/readme","title":"General","description":"- Common","sidebar":"tutorialSidebar"},"computer-science/general/research-papers":{"id":"computer-science/general/research-papers","title":"Research Papers","description":"1. Dynamo - Amazon\u2019s Highly Available Key Value Store","sidebar":"tutorialSidebar"},"computer-science/general/standards":{"id":"computer-science/general/standards","title":"Standards","description":"ASCII","sidebar":"tutorialSidebar"},"computer-science/general/uuid-guid":{"id":"computer-science/general/uuid-guid","title":"UUID / GUID","description":"A Universally Unique IDentifier (UUID) is a 128-bit number used to identify information in computer systems. The term Globally Unique IDentifier(GUID) is also used, typically in software created by Microsoft.","sidebar":"tutorialSidebar"},"computer-science/interview-question/aws-tech-other-questions":{"id":"computer-science/interview-question/aws-tech-other-questions","title":"AWS/Tech/Other Questions","description":"AWS","sidebar":"tutorialSidebar"},"computer-science/interview-question/blogs-conferences-blogging-presentation-tech-thursdays":{"id":"computer-science/interview-question/blogs-conferences-blogging-presentation-tech-thursdays","title":"Blogs / Conferences / Blogging / Presentation / Tech Thursdays","description":"Startup onboarding series","sidebar":"tutorialSidebar"},"computer-science/interview-question/coding-interview-questions":{"id":"computer-science/interview-question/coding-interview-questions","title":"Coding Interview Questions","description":"Platforms","sidebar":"tutorialSidebar"},"computer-science/interview-question/others":{"id":"computer-science/interview-question/others","title":"Others","description":"https://dev.to/fahimulhaq/top-10-system-design-interview-questions-for-software-engineers","sidebar":"tutorialSidebar"},"computer-science/interview-question/readme":{"id":"computer-science/interview-question/readme","title":"Interview Question","description":"- Coding Interview Questions","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-autocomplete-or-typeahead":{"id":"computer-science/interview-question/system-design-autocomplete-or-typeahead","title":"System Design - Autocomplete or TypeAhead","description":"System design : Design Autocomplete or Typeahead Suggestions for Google search","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-google-com-into-browser-press-enter":{"id":"computer-science/interview-question/system-design-google-com-into-browser-press-enter","title":"System Design - What happens when you type google.com into your browser\'s address box and press enter?","description":"Ever wondered what exactly happens when you type google.com into your browser\'s address box and press enter?","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-google-search":{"id":"computer-science/interview-question/system-design-google-search","title":"System Design of Google Search Engine","description":"System Design of Google Search","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-messenger-whatsapp":{"id":"computer-science/interview-question/system-design-messenger-whatsapp","title":"System Design - Messenger / WhatsApp","description":"System Design : Design messaging/chat service like Facebook Messenger or Whatsapp","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-mmog-game":{"id":"computer-science/interview-question/system-design-mmog-game","title":"System Design - MMOG - Game","description":"System design: Design Multiplayer game","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-others":{"id":"computer-science/interview-question/system-design-others","title":"System Design - Others","description":"CricInfo","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-parking-lot":{"id":"computer-science/interview-question/system-design-parking-lot","title":"System Design - Parking Lot","description":"System Design Interview Question: DESIGN A PARKING LOT - asked at Google, Facebook","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-tinyurl":{"id":"computer-science/interview-question/system-design-tinyurl","title":"System Design - TinyURL","description":"System Design : Design a service like TinyUrl","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-twitter":{"id":"computer-science/interview-question/system-design-twitter","title":"System Design - Twitter","description":"System Design: How to design Twitter? Interview question at Facebook, Google, Microsoft","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-uber-data-architecture":{"id":"computer-science/interview-question/system-design-uber-data-architecture","title":"System Design of Uber Data Architecture","description":"Uber\'s real-time data infrastructure is a cornerstone of its business operations, processing massive amounts of data every day.","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-uber-lyft-ride-sharing-services":{"id":"computer-science/interview-question/system-design-uber-lyft-ride-sharing-services","title":"System Design - Uber Lyft ride sharing services","description":"System Design: Uber Lyft ride sharing services - Interview question","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-youtube":{"id":"computer-science/interview-question/system-design-youtube","title":"System Design of YouTube","description":"System Design of YouTube","sidebar":"tutorialSidebar"},"computer-science/interview-question/toptal":{"id":"computer-science/interview-question/toptal","title":"TopTal","description":"Algorithm and Coding Round (Online - Codility)","sidebar":"tutorialSidebar"},"computer-science/iot/device-management":{"id":"computer-science/iot/device-management","title":"Device Management","description":"image","sidebar":"tutorialSidebar"},"computer-science/iot/edge-computing":{"id":"computer-science/iot/edge-computing","title":"Edge Computing","description":"Edge computingis a method of optimizing cloud computing systems by performing data processing at the edge of the network, near the source of the data.","sidebar":"tutorialSidebar"},"computer-science/iot/edgexfoundary":{"id":"computer-science/iot/edgexfoundary","title":"EdgeXFoundary","description":"Founded in 2017, EdgeX Foundry acts as a vendor-neutral interoperabilityframework. It is hostedin a hardware and OS agnostic referenceplatform and seeks toenablean ecosystem of plug-and-playcomponents, unitingthe marketplace and acceleratingIoT deployment. The project wants to enable collaborators tofreely work onopen and interoperable IoT solutionswith existing and self-created connectivity standards.","sidebar":"tutorialSidebar"},"computer-science/iot/industrial-iot-iiot":{"id":"computer-science/iot/industrial-iot-iiot","title":"Industrial IoT (IIoT)","description":"Reference Architecure","sidebar":"tutorialSidebar"},"computer-science/iot/iot-intro":{"id":"computer-science/iot/iot-intro","title":"IoT Intro","description":"Internet of Things (IoT)","sidebar":"tutorialSidebar"},"computer-science/iot/others":{"id":"computer-science/iot/others","title":"Others","description":"CE - Accurate Indoor Location for the IoT (Jan 19)","sidebar":"tutorialSidebar"},"computer-science/iot/readme":{"id":"computer-science/iot/readme","title":"IOT","description":"- IoT Intro","sidebar":"tutorialSidebar"},"computer-science/links":{"id":"computer-science/links","title":"Links","description":"Youtube","sidebar":"tutorialSidebar"},"computer-science/operating-system/basic-computer-organization":{"id":"computer-science/operating-system/basic-computer-organization","title":"Basic Computer Organization","description":"Instruction Execution Cycle","sidebar":"tutorialSidebar"},"computer-science/operating-system/cache-access-patterns":{"id":"computer-science/operating-system/cache-access-patterns","title":"Cache Access Patterns (Writing Policies)","description":"When a system writes data to cache, it must at some point write that data to the backing store as well. The timing of this write is controlled by what is known as thewrite policy.","sidebar":"tutorialSidebar"},"computer-science/operating-system/cache-coherence-invalidation":{"id":"computer-science/operating-system/cache-coherence-invalidation","title":"Cache Coherence","description":"In computer architecture, cache coherence is the uniformity of shared resource data that ends up stored in multiple local caches). When clients in a system maintain caches of a common memory resource, problems may arise with incoherent data, which is particularly the case with CPUs in a multiprocessing system.","sidebar":"tutorialSidebar"},"computer-science/operating-system/caches-caching":{"id":"computer-science/operating-system/caches-caching","title":"Caches / Caching","description":"Points to remeber about cache","sidebar":"tutorialSidebar"},"computer-science/operating-system/caching-strategies-topologies":{"id":"computer-science/operating-system/caching-strategies-topologies","title":"Caching Strategies","description":"1. Cooperative/Distributed caching","sidebar":"tutorialSidebar"},"computer-science/operating-system/compilers":{"id":"computer-science/operating-system/compilers","title":"Compilers","description":"LLVM - The LLVM compiler infrastructure project is a \\"collection of modular and reusable compiler and toolchain technologies\\" used to develop compiler front ends and back ends.","sidebar":"tutorialSidebar"},"computer-science/operating-system/concepts":{"id":"computer-science/operating-system/concepts","title":"Concepts","description":"Processes and Process Management","sidebar":"tutorialSidebar"},"computer-science/operating-system/concurrency-models-async":{"id":"computer-science/operating-system/concurrency-models-async","title":"Concurrency Models - Async","description":"Single-threaded synchronous model","sidebar":"tutorialSidebar"},"computer-science/operating-system/concurrency-problems":{"id":"computer-science/operating-system/concurrency-problems","title":"Concurrency Problems","description":"Problems","sidebar":"tutorialSidebar"},"computer-science/operating-system/concurrency-threading":{"id":"computer-science/operating-system/concurrency-threading","title":"Concurrency / Threading","description":"Concurrency","sidebar":"tutorialSidebar"},"computer-science/operating-system/coroutines":{"id":"computer-science/operating-system/coroutines","title":"Coroutines","description":"Coroutines are general control structures where flow control is cooperatively passed between two different routines without returning.","sidebar":"tutorialSidebar"},"computer-science/operating-system/cpu-gpu-tpu":{"id":"computer-science/operating-system/cpu-gpu-tpu","title":"CPU | GPU | TPU","description":"MAC - Multiplier, Adder, Accumulator","sidebar":"tutorialSidebar"},"computer-science/operating-system/disk-io":{"id":"computer-science/operating-system/disk-io","title":"Disk IO","description":"IO","sidebar":"tutorialSidebar"},"computer-science/operating-system/dram":{"id":"computer-science/operating-system/dram","title":"DRAM","description":"Dynamic random-access memory (DRAM) is a type of random accesssemiconductor memory that stores each bit of data in a memory cell) consisting of a tiny capacitor and a transistor, both typically based on metal-oxide-semiconductor(MOS) technology. The capacitor can either be charged or discharged; these two states are taken to represent the two values of a bit, conventionally called 0 and 1. The electric charge on the capacitors slowly leaks off, so without intervention the data on the chip would soon be lost. To prevent this, DRAM requires an external memory refresh circuit which periodically rewrites the data in the capacitors, restoring them to their original charge. This refresh process is the defining characteristic of dynamic random-access memory, in contrast to static random-access memory(SRAM) which does not require data to be refreshed. Unlike flash memory, DRAM is volatile memory(vs.non-volatile memory), since it loses its data quickly when power is removed. However, DRAM does exhibit limited data remanence.","sidebar":"tutorialSidebar"},"computer-science/operating-system/intro":{"id":"computer-science/operating-system/intro","title":"Intro","description":"There are three key elements of an operating system","sidebar":"tutorialSidebar"},"computer-science/operating-system/journaling-file-system":{"id":"computer-science/operating-system/journaling-file-system","title":"Journaling File System","description":"A journaling file system is a file system that keeps track of changes not yet committed to the file system\'s main part by recording the intentions of such changes in a data structure known as a \\"journal)\\", which is usually a circular log. In the event of a system crash or power failure, such file systems can be brought back online more quickly with a lower likelihood of becoming corrupted.","sidebar":"tutorialSidebar"},"computer-science/operating-system/memory":{"id":"computer-science/operating-system/memory","title":"Memory","description":"Stack Allocation","sidebar":"tutorialSidebar"},"computer-science/operating-system/memory-allocation":{"id":"computer-science/operating-system/memory-allocation","title":"Memory Allocation","description":"Dynamic memory allocation","sidebar":"tutorialSidebar"},"computer-science/operating-system/memory-layout":{"id":"computer-science/operating-system/memory-layout","title":"Memory Layout","description":"A typical memory representation of C program consists of following sections.","sidebar":"tutorialSidebar"},"computer-science/operating-system/memory-mapping-mmap":{"id":"computer-science/operating-system/memory-mapping-mmap","title":"Memory Mapping mmap","description":"Memory Mapping (mmap)","sidebar":"tutorialSidebar"},"computer-science/operating-system/microprocessor":{"id":"computer-science/operating-system/microprocessor","title":"Microprocessor","description":"Course - NPTEL - IIT-Guwahati, by Dr. John Jose","sidebar":"tutorialSidebar"},"computer-science/operating-system/others":{"id":"computer-science/operating-system/others","title":"Others","description":"Interrupt Coelesing","sidebar":"tutorialSidebar"},"computer-science/operating-system/parallel-processing":{"id":"computer-science/operating-system/parallel-processing","title":"Parallel Processing","description":"Parallel Processing, MPP (Massive Parallel Processing)","sidebar":"tutorialSidebar"},"computer-science/operating-system/raid":{"id":"computer-science/operating-system/raid","title":"RAID","description":"RAID (Redundant Array of Inexpensive Disks or Drives, or Redundant Array of Independent Disks) is a data storage virtualization technology that combines multiple physical disk drive components into one or more logical units for the purposes of data redundancy, performance improvement, or both. This was in contrast to the previous concept of highly reliable mainframe disk drives referred to as \\"single large expensive disk\\" (SLED).","sidebar":"tutorialSidebar"},"computer-science/operating-system/readme":{"id":"computer-science/operating-system/readme","title":"Operating System","description":"- Intro","sidebar":"tutorialSidebar"},"computer-science/operating-system/scheduling":{"id":"computer-science/operating-system/scheduling","title":"Scheduling","description":"In computing, schedulingis the method by which work is assigned to resources that complete the work. The work may be virtual computation elements such as threads), processes) or data flows), which are in turn scheduled onto hardware resources such as processors, network links or expansion cards.","sidebar":"tutorialSidebar"},"computer-science/operating-system/swap-paging-caching":{"id":"computer-science/operating-system/swap-paging-caching","title":"Swap / Paging / Caching","description":"Paging","sidebar":"tutorialSidebar"},"computer-science/operating-system/unix-linux":{"id":"computer-science/operating-system/unix-linux","title":"Unix / Linux","description":"A UNIX OS is made up of three parts","sidebar":"tutorialSidebar"},"computer-science/operating-system/unix-linux-file-system":{"id":"computer-science/operating-system/unix-linux-file-system","title":"Unix / Linux File System","description":"Command - man hier (layout of filesystems)","sidebar":"tutorialSidebar"},"computer-science/operating-system/write-ahead-log-wal":{"id":"computer-science/operating-system/write-ahead-log-wal","title":"Write Ahead Log, WAL","description":"In computer science, write-ahead logging(WAL) is a family of techniques for providing atomicity) and durability)(two of the ACID properties) in database systems. The changes are first recorded in the log, which must be written to stable storage, before the changes are written to the database.","sidebar":"tutorialSidebar"},"computer-science/others/bioinformatics-biotechnology":{"id":"computer-science/others/bioinformatics-biotechnology","title":"BioInformatics/BioTechnology","description":"PDB - Protein Data Bank","sidebar":"tutorialSidebar"},"computer-science/others/computer-graphics":{"id":"computer-science/others/computer-graphics","title":"Computer Graphics","description":"1. Vertex Shading","sidebar":"tutorialSidebar"},"computer-science/others/digital-circuits":{"id":"computer-science/others/digital-circuits","title":"Digital Circuits","description":"Karnaugh Maps","sidebar":"tutorialSidebar"},"computer-science/others/game-development":{"id":"computer-science/others/game-development","title":"Game Development","description":"https://docs.microsoft.com/en-us/archive/msdn-magazine/2015/march/game-development-a-web-game-in-an-hour","sidebar":"tutorialSidebar"},"computer-science/others/gamification":{"id":"computer-science/others/gamification","title":"Gamification","description":"The use of game elements and game design techniques in non-game contexts","sidebar":"tutorialSidebar"},"computer-science/others/other":{"id":"computer-science/others/other","title":"Other","description":"Performance Modelling","sidebar":"tutorialSidebar"},"computer-science/others/readme":{"id":"computer-science/others/readme","title":"Others","description":"- Tech Books","sidebar":"tutorialSidebar"},"computer-science/others/tech-books":{"id":"computer-science/others/tech-books","title":"Tech Books","description":"Networks, Crowds, and Markets: Reasoning about a Highly Connected World","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/cohesion-and-coupling":{"id":"computer-science/programming-concepts/cohesion-and-coupling","title":"Cohesion and Coupling","description":"COUPLING - An indication of the strength of interconnections between program units","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/dependency-injection":{"id":"computer-science/programming-concepts/dependency-injection","title":"Dependency Injection","description":"In software engineering, dependency injection is a technique whereby one object (or static method) supplies the dependencies of another object. A dependency is an object that can be used (a service)). An injection is the passing of a dependency to a dependent object (a client)) that would use it. The service is made part of the client\'s state).Passing the service to the client, rather than allowing a client to build or find the service, is the fundamental requirement of the pattern.","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/inversion-of-control":{"id":"computer-science/programming-concepts/inversion-of-control","title":"Inversion of Control","description":"In software engineering, inversion of control(IoC) is a design principle in which custom-written portions of a computer program receive the flow of control from a generic framework. A software architecture with this design inverts control as compared to traditional procedural programming: in traditional programming, the custom code that expresses the purpose of the program calls into reusable libraries to take care of generic tasks, but with inversion of control, it is the framework that calls into the custom, or task-specific, code.","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/marshalling":{"id":"computer-science/programming-concepts/marshalling","title":"Marshalling","description":"Marshalling is the process of transforming the memory representation of an object) to a data format suitable for storage or transmission, and it is typically used when data must be moved between different parts of a computer program or from one program to another. Marshalling is similar to serialization and is used to communicate to remote objects with an object, in this case a serialized object. It simplifies complex communication, using composite objects in order to communicate instead of primitives. The inverse, of marshalling is called unmarshallin (or demarshalling, similar to deserialization)","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/metaprogramming":{"id":"computer-science/programming-concepts/metaprogramming","title":"Metaprogramming","description":"Metaprogramming is a programming technique in which computer programs have the ability to treat programs as data. It means a program can be designed to read, generate, analyze or transform other programs, or even itself while running. In some cases, it allows programmers to minimize the number of lines of code to express a solution, thus reducing the development time. It also allows programs greater flexibility to efficiently handle new situations without recompilation.","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/others":{"id":"computer-science/programming-concepts/others","title":"Others","description":"Relationships","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/programming-styles":{"id":"computer-science/programming-concepts/programming-styles","title":"Programming Styles","description":"duck-typing","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/readme":{"id":"computer-science/programming-concepts/readme","title":"Programming Concepts","description":"- Type Systems","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/type-introspection-and-reflection":{"id":"computer-science/programming-concepts/type-introspection-and-reflection","title":"Type Introspection and Reflection","description":"Type Introspection","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/type-systems":{"id":"computer-science/programming-concepts/type-systems","title":"Type Systems","description":"In programming languages, atype systemis a set of rules that assigns a property called type) to the various constructs of a computer program, such as variables), expressions), functions) or modules.These types formalize and enforce the otherwise implicit categories the programmer uses for algebraic data types, data structures, or other components (e.g. \\"string\\", \\"array of float\\", \\"function returning boolean\\").","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/architectural-mvvm":{"id":"computer-science/programming-paradigms/architectural-mvvm","title":"Architectural - MVVM","description":"Data Flow","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/behavioral-chain-of-responsibility":{"id":"computer-science/programming-paradigms/behavioral-chain-of-responsibility","title":"Behavioral - Chain of Responsibility","description":"Chain of Responsibility is a behavioral design pattern that lets you pass requests along a chain of handlers. Upon receiving a request, each handler decides either to process the request or to pass it to the next handler in thechain","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/behavioral-iterator":{"id":"computer-science/programming-paradigms/behavioral-iterator","title":"Behavioral - Iterator","description":"image","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/behavioral-mediator":{"id":"computer-science/programming-paradigms/behavioral-mediator","title":"Behavioral - Mediator","description":"A mediator is a behavioral design pattern that allows you to reduce the connectivity of multiple classes with each other, by moving these connections to the one mediation class.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/behavioral-memento":{"id":"computer-science/programming-paradigms/behavioral-memento","title":"Behavioral - Memento","description":"Memento is a behavioral design pattern that allows you to save and restore the past states of the objects without revealing the details of their implementation","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/behavioral-observer":{"id":"computer-science/programming-paradigms/behavioral-observer","title":"Behavioral - Observer","description":"The observer pattern is a software design pattern in which an object, called the subject, maintains a list of its dependents, called observers, and notifies them automatically of any state changes, usually by calling one of their methods.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/behavioral-publisher-subscriber":{"id":"computer-science/programming-paradigms/behavioral-publisher-subscriber","title":"Behavioral - Publisher Subscriber","description":"In \'Publisher-Subscriber\' pattern, senders of messages, called publishers, do not program the messages to be sent directly to specific receivers, called subscribers.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/behavioral-state":{"id":"computer-science/programming-paradigms/behavioral-state","title":"Behavioral - State","description":"Thestate pattern is a behavioralsoftware design pattern that implements a state machine in an object-oriented way. With the state pattern, a state machine is implemented by implementing each individual state as a derived class of the state pattern interface, and implementing state transitions by invoking methods) defined by the pattern\'s superclass.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/behavioral-strategy":{"id":"computer-science/programming-paradigms/behavioral-strategy","title":"Behavioral - Strategy","description":"image","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/concurrency-reactor":{"id":"computer-science/programming-paradigms/concurrency-reactor","title":"Concurrency - Reactor","description":"The reactor design pattern) is an event handling pattern for handling service requests delivered concurrently) to a service handler by one or more inputs. The service handler then demultiplexes the incoming requests and dispatches them synchronously to the associated request handlers.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/creational-abstract-factory":{"id":"computer-science/programming-paradigms/creational-abstract-factory","title":"Creational - Abstract Factory","description":"An abstract factory is a generative design pattern that allows you to create families of related objects without getting attached to specific classes of created objects. The pattern is being implemented by creating an abstract class (for example - Factory), which is represented as an interface for creating system components. Then the classes that implement this interface are being written.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/creational-object-pool":{"id":"computer-science/programming-paradigms/creational-object-pool","title":"Creational - Object Pool","description":"Intent","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/design-patterns":{"id":"computer-science/programming-paradigms/design-patterns","title":"Design Patterns","description":"Gang of Four (GOF)","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/functional-programming":{"id":"computer-science/programming-paradigms/functional-programming","title":"Functional Programming","description":"Everything is immutable","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/oops-solid":{"id":"computer-science/programming-paradigms/oops-solid","title":"OOPS / SOLID","description":"AEIP - Abstraction, Encapsulation, Inheritance and Polymorphism","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/others":{"id":"computer-science/programming-paradigms/others","title":"Others","description":"Behavior-driven development","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/readme":{"id":"computer-science/programming-paradigms/readme","title":"Programming Paradigms","description":"- Types of Programming Paradigm","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/structural-adapter":{"id":"computer-science/programming-paradigms/structural-adapter","title":"Structural - Adapter","description":"If there are 3 languages that need to be typed and you know a 4th language than you will not write the same thing 3 times everytime you have to write something, what we do it to create an adapter for the three languages that sit infront of 3 classes that will translate from 4th language to their specific language. All the translations will be handled by the adapter.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/structural-bridge":{"id":"computer-science/programming-paradigms/structural-bridge","title":"Structural - Bridge","description":"Bridge is a structural design pattern that divides one or more classes into two separate hierarchies - abstraction and implementation, allowing them to be changed independently of each other","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/structural-decorator":{"id":"computer-science/programming-paradigms/structural-decorator","title":"Structural - Decorator","description":"In object-oriented programming, the**decorator pattern** is a design pattern) that allows behavior to be added to an individual object), either statically or dynamically, without affecting the behavior of other objects from the same class).The decorator pattern is often useful for adhering to the Single Responsibility Principle, as it allows functionality to be divided between classes with unique areas of concern.The decorator pattern is structurally nearly identical to the chain of responsibility pattern, the difference being that in a chain of responsibility, exactly one of the classes handles the request, while for the decorator, all classes handle the request.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/structural-facade":{"id":"computer-science/programming-paradigms/structural-facade","title":"Structural - Facade","description":"According to Gang of Four definition, facade provides a simplified interface for a set of interfaces of a subsystem. It defines a convenient higher-level interface to interact with.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/structural-proxy":{"id":"computer-science/programming-paradigms/structural-proxy","title":"Structural - Proxy","description":"Example -","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/types-of-programming-paradigm":{"id":"computer-science/programming-paradigms/types-of-programming-paradigm","title":"Types of programming paradigm","description":"Imperative (allows side effect)","sidebar":"tutorialSidebar"},"computer-science/readme":{"id":"computer-science/readme","title":"Computer Science","description":"- General","sidebar":"tutorialSidebar"},"computer-science/security/attacks":{"id":"computer-science/security/attacks","title":"Attacks","description":"Types of Security Attacks","sidebar":"tutorialSidebar"},"computer-science/security/authentication/certificates":{"id":"computer-science/security/authentication/certificates","title":"Certificates","description":"Types of certificates","sidebar":"tutorialSidebar"},"computer-science/security/authentication/http-authentication":{"id":"computer-science/security/authentication/http-authentication","title":"HTTP Authentication","description":"RFC 7235 defines the HTTP authentication framework which can be used by a server to challenge a client request and by a client to provide authentication information.","sidebar":"tutorialSidebar"},"computer-science/security/authentication/intro":{"id":"computer-science/security/authentication/intro","title":"Authentication","description":"Methods of Authentication","sidebar":"tutorialSidebar"},"computer-science/security/authentication/jwt":{"id":"computer-science/security/authentication/jwt","title":"JWT","description":"JSON Web Token (JWT) is an open standard (RFC 7519) that defines a compact and self-contained way for securely transmitting information between parties as a JSON object. This information can be verified and trusted because it is digitally signed. JWTs can be signed using a secret (with theHMACalgorithm) or a public/private key pair usingRSAorECDSA","sidebar":"tutorialSidebar"},"computer-science/security/authentication/oauth":{"id":"computer-science/security/authentication/oauth","title":"OAuth","description":"- OAuth is an open standard for access delegation","sidebar":"tutorialSidebar"},"computer-science/security/authentication/openid":{"id":"computer-science/security/authentication/openid","title":"OpenID","description":"OpenIdis HTTP based protocol that uses identity provider to validate a user. The user password is secured with one identity provider, this allows other service providers a way to achieve Single SignOn(SSO) without requiring password from user. There are many OpenId enabled account on the internet and organizations such as Google, Facebook, Wordpress, Yahoo, PayPal etc., uses OpenId to authenticate users. The latest version of OpenId is OpenId Connect (OIDC), which provides OpenId(authentication) on top of OAuth 2.0 (authorization) for complete security solution.","sidebar":"tutorialSidebar"},"computer-science/security/authentication/readme":{"id":"computer-science/security/authentication/readme","title":"Authentication","description":"- Authentication","sidebar":"tutorialSidebar"},"computer-science/security/authentication/siem":{"id":"computer-science/security/authentication/siem","title":"SIEM","description":"Security information and event management, SIEM for short, is a solution that helps organizations detect, analyze, and respond to security threats before they harm business operations.","sidebar":"tutorialSidebar"},"computer-science/security/authentication/two-2fa":{"id":"computer-science/security/authentication/two-2fa","title":"2FA / 2-Factor Authentication","description":"How does Google Authenticator (or other types of 2-factor authenticators) work?","sidebar":"tutorialSidebar"},"computer-science/security/concepts":{"id":"computer-science/security/concepts","title":"Concepts","description":"Security Services","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/cryptographic-algorithms":{"id":"computer-science/security/cryptography/cryptographic-algorithms","title":"Cryptographic Algorithms","description":"Stream Ciphers (OTP)","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/cryptographic-hash-functions":{"id":"computer-science/security/cryptography/cryptographic-hash-functions","title":"Cryptographic Hash Functions","description":"A cryptographic hash function is a special class of hash function that has certain properties which make it suitable for use in cryptography. It is a mathematical algorithm that maps) data of arbitrary size to a bit string of a fixed size (a hash) and is designed to be a one-way function, that is, a function which is infeasible to invert. The only way to recreate the input data from an ideal cryptographic hash function\'s output is to attempt a brute-force search of possible inputs to see if they produce a match, or use a rainbow table of matched hashes.Bruce Schneier has called one-way hash functions \\"the workhorses of modern cryptography\\". The input data is often called the message, and the output (the hash value or hash) is often called the message digestor simply the digest.","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/cryptography-terms":{"id":"computer-science/security/cryptography/cryptography-terms","title":"Cryptography Terms","description":"Cryptographic Techniques","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/diffie-hellman-key-exchange":{"id":"computer-science/security/cryptography/diffie-hellman-key-exchange","title":"Diffie-Hellman Key Exchange","description":"Diffie-Hellman key exchange (DH)is a method of securely exchanging cryptographic keys) over a public channel and was one of the first public-key protocols as originally conceptualized by Ralph Merkle and named after Whitfield Diffie and Martin Hellman","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/hash-function-design":{"id":"computer-science/security/cryptography/hash-function-design","title":"Hash Function Design","description":"Merkle--Damg\xe5rd construction","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/intro":{"id":"computer-science/security/cryptography/intro","title":"Cryptography","description":"Dance like no one is watching; encrypt like everyone is. Encrypt everything.\\"","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/post-quantum-cryptography":{"id":"computer-science/security/cryptography/post-quantum-cryptography","title":"Post Quantum Cryptography","description":"Post-quantum cryptography (PQC) is\xa0the development of cryptographic algorithms that are resistant to attacks from quantum computers.\xa0It\'s also known as quantum-proof, quantum-safe, or quantum-resistant.","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/public-key-cryptography":{"id":"computer-science/security/cryptography/public-key-cryptography","title":"Public-key cryptography","description":"Public key cryptography, orasymmetrical cryptography, is any cryptographic system that uses pairs of keysauthentication, where the public key verifies that a holder of the paired private key sent the message, and encryption, where only the paired private key holder can decrypt the message encrypted with the public key","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/readme":{"id":"computer-science/security/cryptography/readme","title":"Cryptography","description":"- Cryptography","sidebar":"tutorialSidebar"},"computer-science/security/ethical-hacking":{"id":"computer-science/security/ethical-hacking","title":"Ethical Hacking","description":"- https://www.shodan.io/host/182.71.91.174","sidebar":"tutorialSidebar"},"computer-science/security/firewall-waf":{"id":"computer-science/security/firewall-waf","title":"Firewall WAF","description":"Web Application Firewall (WAF)","sidebar":"tutorialSidebar"},"computer-science/security/improving-security-posture":{"id":"computer-science/security/improving-security-posture","title":"Improving Security Posture","description":"1. Assessment of Initial Security State","sidebar":"tutorialSidebar"},"computer-science/security/others":{"id":"computer-science/security/others","title":"Others","description":"SE Radio - 321: End to End Encryption - Kim Carter with Peter Budai","sidebar":"tutorialSidebar"},"computer-science/security/readme":{"id":"computer-science/security/readme","title":"Security","description":"- Improving Security Posture","sidebar":"tutorialSidebar"},"computer-science/security/systems-protection":{"id":"computer-science/security/systems-protection","title":"Systems Protection","description":"Protection against Buffer Overflow attacks / Stash smashing attacks","sidebar":"tutorialSidebar"},"computer-science/security/tools":{"id":"computer-science/security/tools","title":"Tools","description":"- GitHub - gchq/CyberChef: The Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis","sidebar":"tutorialSidebar"},"computer-science/security/vault":{"id":"computer-science/security/vault","title":"Vault","description":"Vault is a tool for securely accessing secrets. A secret is anything that you want to tightly control access to, such as API keys, passwords, or certificates. Vault provides a unified interface to any secret, while providing tight access control and recording a detailed audit log.","sidebar":"tutorialSidebar"},"computer-science/security/vulnerabilities":{"id":"computer-science/security/vulnerabilities","title":"Vulnerabilities","description":"1. Spectre","sidebar":"tutorialSidebar"},"computer-science/software-engineering/change-management":{"id":"computer-science/software-engineering/change-management","title":"Change Management","description":"Change Advisory Board (CAB)","sidebar":"tutorialSidebar"},"computer-science/software-engineering/code-smell":{"id":"computer-science/software-engineering/code-smell","title":"Code Smell","description":"In computer programming, acode smellis any characteristic in the source code of a program that possibly indicates a deeper problem.Determining what is and is not a code smell is subjective, and varies by language, developer, and development methodology.","sidebar":"tutorialSidebar"},"computer-science/software-engineering/coding-guidelines-code-reviews-clean-code":{"id":"computer-science/software-engineering/coding-guidelines-code-reviews-clean-code","title":"Coding Guidelines / Code Reviews / Clean Code","description":"10 Good Coding Principles","sidebar":"tutorialSidebar"},"computer-science/software-engineering/complexity":{"id":"computer-science/software-engineering/complexity","title":"Software Complexity","description":"- Learning and Discovery - Iteration, Feedback, Incrementalism, Experimentation and Empiricism","sidebar":"tutorialSidebar"},"computer-science/software-engineering/developer-roles":{"id":"computer-science/software-engineering/developer-roles","title":"Developer Roles","description":"- SDET - Software Development Engineers in Test","sidebar":"tutorialSidebar"},"computer-science/software-engineering/development-approaches":{"id":"computer-science/software-engineering/development-approaches","title":"Development Approaches","description":"Asshole Driven development (ADD) - Any team where the biggest jerk makes all the big decisions is asshole driven development. All wisdom, logic or process goes out the window when Mr. Asshole is in the room, doing whatever idiotic, selfish thing he thinks is best. There may rules and processes, but Mr. A breaks them and people follow anyway.","sidebar":"tutorialSidebar"},"computer-science/software-engineering/intro":{"id":"computer-science/software-engineering/intro","title":"Software Engineering","description":"Life Critical System","sidebar":"tutorialSidebar"},"computer-science/software-engineering/modeling-languages":{"id":"computer-science/software-engineering/modeling-languages","title":"Modeling Language","description":"UML (Unified Modeling Language)","sidebar":"tutorialSidebar"},"computer-science/software-engineering/principles":{"id":"computer-science/software-engineering/principles","title":"Principles of sofware design","description":"YAGNI - You Ain\'t Gonna Need It. (For new features)","sidebar":"tutorialSidebar"},"computer-science/software-engineering/readme":{"id":"computer-science/software-engineering/readme","title":"Software Engineering","description":"- Software Engineering","sidebar":"tutorialSidebar"},"computer-science/software-engineering/refactoring":{"id":"computer-science/software-engineering/refactoring","title":"Refactoring","description":"The 7 R\'s: Common use cases and deployment","sidebar":"tutorialSidebar"},"computer-science/software-engineering/static-code-analysis":{"id":"computer-science/software-engineering/static-code-analysis","title":"Static Code Analysis","description":"Static code analysis looks at the code without executing it. It is usually extremely fast to execute, requires little effort to add to your workflow, and can uncover common mistakes. The only downside is that it is not tailored towards your code.","sidebar":"tutorialSidebar"},"computer-science/software-engineering/technical-debt":{"id":"computer-science/software-engineering/technical-debt","title":"Technical Debt","description":"Lehman\'s Laws of Software Evolution","sidebar":"tutorialSidebar"},"computer-science/software-engineering/types-of-code":{"id":"computer-science/software-engineering/types-of-code","title":"Types of code","description":"Legacy code","sidebar":"tutorialSidebar"},"computer-science/system-design/addressing-failures":{"id":"computer-science/system-design/addressing-failures","title":"Addressing Failures","description":"Cascading Failures","sidebar":"tutorialSidebar"},"computer-science/system-design/api-gateway":{"id":"computer-science/system-design/api-gateway","title":"API Gateway","description":"API Design","sidebar":"tutorialSidebar"},"computer-science/system-design/architecture-guide":{"id":"computer-science/system-design/architecture-guide","title":"Architecture Guide","description":"Application Architecture Guide","sidebar":"tutorialSidebar"},"computer-science/system-design/cloud-native":{"id":"computer-science/system-design/cloud-native","title":"Cloud Native","description":"Cloud native is a term used to describe container-based environments. Cloud-native technologies are used to develop applications built with services packaged in containers, deployed as microservices and managed on elastic infrastructure through agile DevOps processes and continuous delivery workflows.","sidebar":"tutorialSidebar"},"computer-science/system-design/enterprise-integration-patterns":{"id":"computer-science/system-design/enterprise-integration-patterns","title":"Enterprise Integration Patterns","description":"The patterns provide technology-independent design guidance for developers and architects to describe and develop robust integration solutions.","sidebar":"tutorialSidebar"},"computer-science/system-design/event-driven-architecture":{"id":"computer-science/system-design/event-driven-architecture","title":"Event driven architecture","description":"Event Driven Architecture / Event Sourcing","sidebar":"tutorialSidebar"},"computer-science/system-design/intro":{"id":"computer-science/system-design/intro","title":"Intro","description":"Systems design is the process of defining the architecture, modules, interfaces, and data for a system to satisfy specified requirements. Systems design could be seen as the application of systems theory to product development. There is some overlap with the disciplines of systems analysis, systems architecture and systems engineering","sidebar":"tutorialSidebar"},"computer-science/system-design/message-oriented-architecture-mom":{"id":"computer-science/system-design/message-oriented-architecture-mom","title":"Message Oriented Architecture (MOM)","description":"Message oriented middleware (MOM) refers to the software infrastructure supporting sending and receiving messages between distributed systems. AMQP and MQTT are the two most relevant protocols in this context. They are extensively used for exchanging messages since they provide an abstraction of the different participating system entities, alleviating their coordination and simplifying the communication programming details.","sidebar":"tutorialSidebar"},"computer-science/system-design/message-queues":{"id":"computer-science/system-design/message-queues","title":"Message Queues","description":"IBM MQ -> RabbitMQ -> Kafka -> Pulsar, How do message queue architectures evolve?","sidebar":"tutorialSidebar"},"computer-science/system-design/microservice-architecture/design-patterns":{"id":"computer-science/system-design/microservice-architecture/design-patterns","title":"Design Patterns","description":"Design Patterns of Microservices","sidebar":"tutorialSidebar"},"computer-science/system-design/microservice-architecture/domain-driven-design":{"id":"computer-science/system-design/microservice-architecture/domain-driven-design","title":"Domain Driven Design","description":"Domain-driven design(DDD) is the concept that the structure and language of software code (class names, class methods, class variables) should match the business domain. For example, if a software processes loan applications, it might have classes such as LoanApplication and Customer, and methods such as AcceptOffer and Withdraw.","sidebar":"tutorialSidebar"},"computer-science/system-design/microservice-architecture/example":{"id":"computer-science/system-design/microservice-architecture/example","title":"Example","description":"https://thenewstack.io/how-redis-simplifies-microservices-design-patterns","sidebar":"tutorialSidebar"},"computer-science/system-design/microservice-architecture/intro":{"id":"computer-science/system-design/microservice-architecture/intro","title":"Microservice Architecture","description":"What is microservices architecture?","sidebar":"tutorialSidebar"},"computer-science/system-design/microservice-architecture/readme":{"id":"computer-science/system-design/microservice-architecture/readme","title":"Microservice Architecture","description":"- Mircroservice Architecture","sidebar":"tutorialSidebar"},"computer-science/system-design/n-tier-application-architecture":{"id":"computer-science/system-design/n-tier-application-architecture","title":"N-Tier Application Architecture","description":"An N-tier architecture divides an application into logical layers and physical tiers.","sidebar":"tutorialSidebar"},"computer-science/system-design/others":{"id":"computer-science/system-design/others","title":"Others","description":"Grid FTP","sidebar":"tutorialSidebar"},"computer-science/system-design/rate-limiting":{"id":"computer-science/system-design/rate-limiting","title":"Rate Limiting","description":"Endpoint Protection","sidebar":"tutorialSidebar"},"computer-science/system-design/reactive-microservices-manifesto":{"id":"computer-science/system-design/reactive-microservices-manifesto","title":"Reactive Microservices / Manifesto","description":"A reactive microservices architecture is an architectural style that strives to provide the highest levels of responsiveness, resiliency, and elasticity, and accomplish this by adopting strong decoupling, isolation, non-blocking, event-driven architecture, and asynchronous messaging, among other techniques.","sidebar":"tutorialSidebar"},"computer-science/system-design/readme":{"id":"computer-science/system-design/readme","title":"System Design","description":"- Intro","sidebar":"tutorialSidebar"},"computer-science/system-design/retries":{"id":"computer-science/system-design/retries","title":"Retries","description":"Linear Backoff","sidebar":"tutorialSidebar"},"computer-science/system-design/serverless-architecture":{"id":"computer-science/system-design/serverless-architecture","title":"Serverless Architecture","description":"Serverless computing simply means using existing, auto-scaling cloud services to achieve system behaviours. In other words, I don\'t manage any servers or docker containers. I don\'t set up networks or manage operation (ops). I merely provide the serverless solution my recipe and it handles creation of any needed assets and performs the required computational process.","sidebar":"tutorialSidebar"},"computer-science/system-design/trade-offs":{"id":"computer-science/system-design/trade-offs","title":"Trade offs","description":"Compute is cheap. Storage is cheap. Engineering time is expensive.","sidebar":"tutorialSidebar"},"computer-science/system-design/twelve-factor-app":{"id":"computer-science/system-design/twelve-factor-app","title":"Twelve-Factor App","description":"In the modern era, software is commonly delivered as a service","sidebar":"tutorialSidebar"},"computer-science/testing/checkov":{"id":"computer-science/testing/checkov","title":"Checkov","description":"Policy-as-code for everyone","sidebar":"tutorialSidebar"},"computer-science/testing/intro":{"id":"computer-science/testing/intro","title":"Intro","description":"Testing Vocabulary","sidebar":"tutorialSidebar"},"computer-science/testing/iperf3-testing":{"id":"computer-science/testing/iperf3-testing","title":"iperf3 Testing","description":"iperf (Network throughput)","sidebar":"tutorialSidebar"},"computer-science/testing/load-performance-testing-qa-tools":{"id":"computer-science/testing/load-performance-testing-qa-tools","title":"Load / Performance Testing/QA Tools","description":"Website Performance Testing Tools","sidebar":"tutorialSidebar"},"computer-science/testing/mocking":{"id":"computer-science/testing/mocking","title":"Mocking","description":"The Abstract Pattern of the Problem","sidebar":"tutorialSidebar"},"computer-science/testing/postman":{"id":"computer-science/testing/postman","title":"Postman","description":"Fake API REST Mocks Server Tests","sidebar":"tutorialSidebar"},"computer-science/testing/readme":{"id":"computer-science/testing/readme","title":"Testing","description":"- Intro","sidebar":"tutorialSidebar"},"computer-science/testing/selenium":{"id":"computer-science/testing/selenium","title":"Selenium","description":"Two ways to run tests -","sidebar":"tutorialSidebar"},"computer-science/testing/terms":{"id":"computer-science/testing/terms","title":"Terms","description":"A","sidebar":"tutorialSidebar"},"computer-science/testing/test-pyramid":{"id":"computer-science/testing/test-pyramid","title":"Test Pyramid","description":"Typical Test Pyramid","sidebar":"tutorialSidebar"},"computer-science/testing/tools":{"id":"computer-science/testing/tools","title":"Tools","description":"Google Test","sidebar":"tutorialSidebar"},"courses/365-data-science-program":{"id":"courses/365-data-science-program","title":"365 Data Science Program","description":"1. Intro to Data and Data Science","sidebar":"tutorialSidebar"},"courses/365-ds-advanced-stastistical-methods-in-python":{"id":"courses/365-ds-advanced-stastistical-methods-in-python","title":"365 DS - Advanced Stastistical Methods in Python","description":"Linear regression","sidebar":"tutorialSidebar"},"courses/365-ds-mathematics":{"id":"courses/365-ds-mathematics","title":"365 DS - Mathematics","description":"Introduction to Linear Algebra","sidebar":"tutorialSidebar"},"courses/aws-certified-data-engineer-associate":{"id":"courses/aws-certified-data-engineer-associate","title":"AWS Certified Data Engineer - Associate","description":"AWS Certified Data Engineer - Associate","sidebar":"tutorialSidebar"},"courses/aws-certified-data-engineer-associate-questions":{"id":"courses/aws-certified-data-engineer-associate-questions","title":"AWS Certified Data Engineer - Associate Questions","description":"AWS Certified Data Engineer - Associate DEA-C01 Exam - Free Exam Q&As, Page 1 | ExamTopics","sidebar":"tutorialSidebar"},"courses/aws-certified-developer-associate":{"id":"courses/aws-certified-developer-associate","title":"AWS Certified Developer Associate","description":"AWS Certified Developer Associate","sidebar":"tutorialSidebar"},"courses/course-art-and-science-of-ml":{"id":"courses/course-art-and-science-of-ml","title":"Course - Art and Science of ML","description":"Introduction","sidebar":"tutorialSidebar"},"courses/course-big-data-computing-nptel":{"id":"courses/course-big-data-computing-nptel","title":"Course - Big Data Computing - NPTEL","description":"- Dr. Rajiv Mishra","sidebar":"tutorialSidebar"},"courses/course-credit-risk-modeling/credit-and-debt":{"id":"courses/course-credit-risk-modeling/credit-and-debt","title":"Credit & Debt","description":"Credit Risk","sidebar":"tutorialSidebar"},"courses/course-credit-risk-modeling/decision-areas-and-credit-scorecards":{"id":"courses/course-credit-risk-modeling/decision-areas-and-credit-scorecards","title":"Decision Areas & Credit Scorecards","description":"Decision Areas","sidebar":"tutorialSidebar"},"courses/course-credit-risk-modeling/fraud-detection-and-prevention":{"id":"courses/course-credit-risk-modeling/fraud-detection-and-prevention","title":"Fraud Detection and Prevention","description":"- Anomaly Detection: Identify unusual patterns in transaction data that may indicate fraudulent activity.","sidebar":"tutorialSidebar"},"courses/course-credit-risk-modeling/fraud-features":{"id":"courses/course-credit-risk-modeling/fraud-features","title":"Fraud Features","description":"Data Features","sidebar":"tutorialSidebar"},"courses/course-credit-risk-modeling/fraud-types":{"id":"courses/course-credit-risk-modeling/fraud-types","title":"Fraud Types","description":"Financial Frauds","sidebar":"tutorialSidebar"},"courses/course-credit-risk-modeling/intro":{"id":"courses/course-credit-risk-modeling/intro","title":"Intro","description":"- Credit Risk - The likelihood that a borrower would not repay their loan to the lender (not receive owed principal and interest)","sidebar":"tutorialSidebar"},"courses/course-credit-risk-modeling/syllabus":{"id":"courses/course-credit-risk-modeling/syllabus","title":"Course - Credit Risk Modeling","description":"- Intro","sidebar":"tutorialSidebar"},"courses/course-data-mining-nptel":{"id":"courses/course-data-mining-nptel","title":"Course - Data Mining NPTEL","description":"Data mining is study of algorithms for finding patterns in large data sets. It is an integral part of modern industry, where data from its operations and customers are mined for gaining business insight. It is also important in modern scientific endeavors. Data mining is an interdisciplinary topic involving, databases, machine learning and algorithms.","sidebar":"tutorialSidebar"},"courses/course-data-storage-and-processing-edx":{"id":"courses/course-data-storage-and-processing-edx","title":"Course - Data Storage and Processing - edX","description":"Master the culture of data representation, interpretation and outcomes evaluation. Learn the fundamentals of relational and NoSQL database management systems.","sidebar":"tutorialSidebar"},"courses/course-feature-engineering":{"id":"courses/course-feature-engineering","title":"Course - Feature Engineering","description":"Introduction","sidebar":"tutorialSidebar"},"courses/course-intro-to-data-and-data-science":{"id":"courses/course-intro-to-data-and-data-science","title":"Course - Intro to Data and Data Science","description":"https://365datascience.com","sidebar":"tutorialSidebar"},"courses/course-intro-to-tensorflow":{"id":"courses/course-intro-to-tensorflow","title":"Course - Intro to TensorFlow","description":"https://www.youtube.com/watch?v=tPYj3fFJGjk","sidebar":"tutorialSidebar"},"courses/course-launching-into-ml":{"id":"courses/course-launching-into-ml","title":"Course - Launching into ML","description":"Objectives","sidebar":"tutorialSidebar"},"courses/course-time-series-analysis/exponential-smoothing":{"id":"courses/course-time-series-analysis/exponential-smoothing","title":"Exponential Smoothing","description":"Exponential smoothing is a rule of thumb technique for smoothing time series data using the exponential window function. Whereas in the simple moving average the past observations are weighted equally, exponential functions are used to assign exponentially decreasing weights over time. It is an easily learned and easily applied procedure for making some determination based on prior assumptions by the user, such as seasonality. Exponential smoothing is often used for analysis of time-series data.","sidebar":"tutorialSidebar"},"courses/course-time-series-analysis/intro-time-series":{"id":"courses/course-time-series-analysis/intro-time-series","title":"Intro - Time Series","description":"QQ-Plot (Quantile-Quantile Plot)","sidebar":"tutorialSidebar"},"courses/course-time-series-analysis/syllabus":{"id":"courses/course-time-series-analysis/syllabus","title":"Course - Time Series Analysis","description":"https://365datascience.teachable.com/p/time-series-analysis-in-python","sidebar":"tutorialSidebar"},"courses/course-time-series-analysis/time-series-modeling":{"id":"courses/course-time-series-analysis/time-series-modeling","title":"Time-Series Modeling","description":"Endogenous variable - The variable we are estimating","sidebar":"tutorialSidebar"},"courses/coursera-algorithms-part-1":{"id":"courses/coursera-algorithms-part-1","title":"Coursera - Algorithms Part - 1","description":"https://www.coursera.org/learn/algorithms-part1","sidebar":"tutorialSidebar"},"courses/coursera-algorithms-part-2":{"id":"courses/coursera-algorithms-part-2","title":"Coursera - Algorithms Part - 2","description":"https://www.coursera.org/learn/algorithms-part2","sidebar":"tutorialSidebar"},"courses/coursera-how-google-does-ml":{"id":"courses/coursera-how-google-does-ml","title":"Coursera - How Google does ML","description":"Mathematical Models used in ML","sidebar":"tutorialSidebar"},"courses/customer-analytics-in-python/intro":{"id":"courses/customer-analytics-in-python/intro","title":"Intro","description":"What is Product Analytics? Your Ultimate Guide | FullStory","sidebar":"tutorialSidebar"},"courses/customer-analytics-in-python/syllabus":{"id":"courses/customer-analytics-in-python/syllabus","title":"Customer Analytics in Python","description":"https://365datascience.teachable.com/p/customer-analytics-in-python","sidebar":"tutorialSidebar"},"courses/data-integration-specialist-aws":{"id":"courses/data-integration-specialist-aws","title":"Data Integration Specialist - AWS","description":"- Big data topics including data architecture as well as techniques and tools for analysis, streaming and visualization.","sidebar":"tutorialSidebar"},"courses/google-professional-cloud-architect-pca":{"id":"courses/google-professional-cloud-architect-pca","title":"Google Professional Cloud Architect (PCA)","description":"Professional Cloud Architect Certification | Google Cloud","sidebar":"tutorialSidebar"},"courses/google-professional-data-engineer-pde":{"id":"courses/google-professional-data-engineer-pde","title":"Google Professional Data Engineer (PDE)","description":"Format","sidebar":"tutorialSidebar"},"courses/microsoft-excel-google-sheets":{"id":"courses/microsoft-excel-google-sheets","title":"Microsoft Excel / Google Sheets","description":"Features","sidebar":"tutorialSidebar"},"courses/mordern-algorithm-design":{"id":"courses/mordern-algorithm-design","title":"Mordern Algorithm Design","description":"1. Randomization","sidebar":"tutorialSidebar"},"courses/nutanix-hybrid-cloud":{"id":"courses/nutanix-hybrid-cloud","title":"Nutanix Hybrid Cloud","description":"Udacity - Hybrid Cloud Scholarship Foundation Course Nanodegree Program (23 June 2020)","sidebar":"tutorialSidebar"},"courses/readme":{"id":"courses/readme","title":"Courses / Certifications","description":"AI / Data Courses","sidebar":"tutorialSidebar"},"courses/se-radio":{"id":"courses/se-radio","title":"SE Radio","description":"333 66 Ways Experts Think","sidebar":"tutorialSidebar"},"courses/self-driving-nanodegree":{"id":"courses/self-driving-nanodegree","title":"Self-Driving Nanodegree","description":"Part - 1","sidebar":"tutorialSidebar"},"courses/udemy-becoming-a-production-mysql-dba":{"id":"courses/udemy-becoming-a-production-mysql-dba","title":"Udemy - Becoming a Production MySQL DBA","description":"Becoming a Production MySQL DBA","sidebar":"tutorialSidebar"},"courses/udemy-python-for-data-structures-algorithms":{"id":"courses/udemy-python-for-data-structures-algorithms","title":"Udemy - Python for data structures algorithms","description":"1. Array Sequences","sidebar":"tutorialSidebar"},"data-structures/general/disjoint-set-data-structure":{"id":"data-structures/general/disjoint-set-data-structure","title":"Disjoint-Set Data Structure","description":"Also called as union-find data structure or merge-find set, is a DS that keeps track of set of elements partitioned into a number of disjoint (non-overlapping) subset. It provides near constant time operation (bounded by inverse- Ackermann function) to add new sets, to merge existing sets and to determine whether elements are in the same set.","sidebar":"tutorialSidebar"},"data-structures/general/ds-intro":{"id":"data-structures/general/ds-intro","title":"DS Intro","description":"Types","sidebar":"tutorialSidebar"},"data-structures/general/elementary-symbol-tables":{"id":"data-structures/general/elementary-symbol-tables","title":"Elementary Symbol Tables","description":"Symbol Tables (Associative Arrays, Maps and Dictionaries)","sidebar":"tutorialSidebar"},"data-structures/general/endianness":{"id":"data-structures/general/endianness","title":"Endianness","description":"adjective - denoting or relating to a system of ordering bytes in a word, or bits in a byte, in which the most significant (or least significant) item is put first.","sidebar":"tutorialSidebar"},"data-structures/general/mutable-immutable-data-structures":{"id":"data-structures/general/mutable-immutable-data-structures","title":"Mutable/Immutable Data Structures","description":"Immutable Data Structure","sidebar":"tutorialSidebar"},"data-structures/general/readme":{"id":"data-structures/general/readme","title":"General","description":"- DS Intro","sidebar":"tutorialSidebar"},"data-structures/graph/adjacency-list":{"id":"data-structures/graph/adjacency-list","title":"Adjacency List","description":"image","sidebar":"tutorialSidebar"},"data-structures/graph/adjacency-matrix":{"id":"data-structures/graph/adjacency-matrix","title":"Adjacency Matrix","description":"image","sidebar":"tutorialSidebar"},"data-structures/graph/digraphs-directed-graphs":{"id":"data-structures/graph/digraphs-directed-graphs","title":"Digraphs (Directed Graphs)","description":"image-image1.jpg)","sidebar":"tutorialSidebar"},"data-structures/graph/implementation":{"id":"data-structures/graph/implementation","title":"Implementation","description":"Python","sidebar":"tutorialSidebar"},"data-structures/graph/intro":{"id":"data-structures/graph/intro","title":"Intro","description":"Representation","sidebar":"tutorialSidebar"},"data-structures/graph/questions":{"id":"data-structures/graph/questions","title":"Questions","description":"- Implement Breadth and Depth First Search","sidebar":"tutorialSidebar"},"data-structures/graph/readme":{"id":"data-structures/graph/readme","title":"Graph","description":"- Intro","sidebar":"tutorialSidebar"},"data-structures/graph/undirected-graph":{"id":"data-structures/graph/undirected-graph","title":"Undirected Graph","description":"Undirected Graphs","sidebar":"tutorialSidebar"},"data-structures/hashtable/bloom-filters":{"id":"data-structures/hashtable/bloom-filters","title":"Bloom Filters","description":"A Bloom filter is a space-efficient probabilisticdata structure, conceived by Burton Howard Bloom in 1970, that is **used to test whether an element) is a member of a set).False positive matches are possible, but false negatives are not -- in other words, a query returns either \\"possibly in set\\" or \\"definitely not in set\\". Elements can be added to the set, but not removed (though this can be addressed with a \\"counting\\" filter); the more elements that are added to the set, the larger the probability of false positives. So if our design can tolerate false positive then we should consider using bloom filters because it\'s very space efficient.","sidebar":"tutorialSidebar"},"data-structures/hashtable/chord":{"id":"data-structures/hashtable/chord","title":"Chord","description":"In computing, Chordis a protocol and algorithm for a peer-to-peerdistributed hash table. A distributed hash table stores key-value pairs by assigning keys to different computers (known as \\"nodes\\"); a node will store the values for all the keys for which it is responsible. Chord specifies how keys are assigned to nodes, and how a node can discover the value for a given key by first locating the node responsible for that key.","sidebar":"tutorialSidebar"},"data-structures/hashtable/count-min-sketch":{"id":"data-structures/hashtable/count-min-sketch","title":"Count-min Sketch","description":"Space efficient probabilistic based data structure.","sidebar":"tutorialSidebar"},"data-structures/hashtable/dht-distributed-hash-tables":{"id":"data-structures/hashtable/dht-distributed-hash-tables","title":"DHT - Distributed Hash Tables","description":"A distributed hash table(DHT) is a class of a decentralized distributed system that provides a lookup service similar to a hash table: (key, value) pairs are stored in a DHT, and any participating node) can efficiently retrieve the value associated with a given key.Keysare unique identifiers which map to particularvalues, which in turn can be anything from addresses, to documents, to arbitrary data). Responsibility for maintaining the mapping from keys to values is distributed among the nodes, in such a way that a change in the set of participants causes a minimal amount of disruption. This allows a DHT to scale) to extremely large numbers of nodes and to handle continual node arrivals, departures, and failures.","sidebar":"tutorialSidebar"},"data-structures/hashtable/dictionaries":{"id":"data-structures/hashtable/dictionaries","title":"Dictionaries","description":"image","sidebar":"tutorialSidebar"},"data-structures/hashtable/hash-functions":{"id":"data-structures/hashtable/hash-functions","title":"Hash Functions","description":"Bad Hash Functions","sidebar":"tutorialSidebar"},"data-structures/hashtable/hash-tables":{"id":"data-structures/hashtable/hash-tables","title":"Hash Tables","description":"hash tables, a data structure that achieves constant-time performance for core symbol table operations, provided that search keys are standard data types or simply defined.","sidebar":"tutorialSidebar"},"data-structures/hashtable/hashing":{"id":"data-structures/hashtable/hashing","title":"Hashing","description":"https://www.hackerearth.com/practice/data-structures/hash-tables/basics-of-hash-tables/tutorial","sidebar":"tutorialSidebar"},"data-structures/hashtable/hashing-techniques":{"id":"data-structures/hashtable/hashing-techniques","title":"Hashing Techniques","description":"Separate chaining (open hashing)","sidebar":"tutorialSidebar"},"data-structures/hashtable/hyperloglog":{"id":"data-structures/hashtable/hyperloglog","title":"HyperLogLog","description":"HyperLogLog is a streaming algorithm used for estimating the number of distinct elements (the cardinality) of very large data sets. HyperLogLog counter can count one billion distinct items with an accuracy of 2% using only 1.5 KB of memory. It is based on the bit pattern observation that for a stream of randomly distributed numbers, if there is a number x with the maximum of leading 0 bits k, the cardinality of the stream is very likely equal to 2^k.","sidebar":"tutorialSidebar"},"data-structures/hashtable/kademlia":{"id":"data-structures/hashtable/kademlia","title":"Kademlia","description":"Kademlia is a distributed hash table for decentralized peer-to-peercomputer networks designed by Petar Maymounkov and David Mazi\xe8res in 2002. It specifies the structure of the network and the exchange of information through node) lookups. Kademlia nodes communicate among themselves using UDP. A virtual or overlay network is formed by the participant nodes. Each node is identified by a number or node ID. The node ID serves not only as identification, but the Kademlia algorithm uses the node ID to locate values (usually file hashes or keywords). In fact, the node ID provides a direct map to file hashes and that node stores information on where to obtain the file or resource.","sidebar":"tutorialSidebar"},"data-structures/hashtable/list-of-hash-functions":{"id":"data-structures/hashtable/list-of-hash-functions","title":"List of Hash Functions","description":"Cyclic redundancy checks","sidebar":"tutorialSidebar"},"data-structures/hashtable/merkle-trees":{"id":"data-structures/hashtable/merkle-trees","title":"Merkle Trees","description":"A merkle tree, also known as a binary hash tree, is a data structure used for efficiently summarizing and verifying the integrity of large sets of data.","sidebar":"tutorialSidebar"},"data-structures/hashtable/probabilistic-data-structure":{"id":"data-structures/hashtable/probabilistic-data-structure","title":"Probabilistic Data Structure","description":"Probabilistic data structures are a group of data structures that are extremely useful for big data and streaming applications. Generally speaking, these data structures use hash functions to randomize and compactly represent a set of items. Collisions are ignored but errors can be well-controlled under certain threshold. Comparing with error-free approaches, these algorithms use much less memory and have constant query time. They usually support union and intersection operations and therefore can be easily parallelized.","sidebar":"tutorialSidebar"},"data-structures/hashtable/questions":{"id":"data-structures/hashtable/questions","title":"Questions","description":"Hash Table","sidebar":"tutorialSidebar"},"data-structures/hashtable/readme":{"id":"data-structures/hashtable/readme","title":"HashTable","description":"- Hashing","sidebar":"tutorialSidebar"},"data-structures/hashtable/verkle-trees":{"id":"data-structures/hashtable/verkle-trees","title":"Verkle Trees","description":"Verkle trees (a portmanteau of \\"Vector commitment\\" and \\"Merkle Trees\\") are a data structure that can be used to upgrade Ethereum nodes so that they can stop storing large amounts of state data without losing the ability to validate blocks.","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/2-3-search-trees":{"id":"data-structures/hierarchical-data-structure/2-3-search-trees","title":"2-3 Search Trees","description":"Properties","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/avl-tree":{"id":"data-structures/hierarchical-data-structure/avl-tree","title":"AVL Tree","description":"AVL tree (named after inventors Adelson - Velsky and Landis) is a self-balancing Binary Search Tree (BST) where the difference between heights of left and right subtrees cannot be more than one for all nodes.","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/b-tree":{"id":"data-structures/hierarchical-data-structure/b-tree","title":"B-Tree","description":"Points","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/beap-bi-parental-heap":{"id":"data-structures/hierarchical-data-structure/beap-bi-parental-heap","title":"Beap (Bi-Parental Heap)","description":"Beap, short for bi-parental heap, introduced by Ian Munro and Hendra Suwanda. In this data structure a node usually has two parents (unless it is the first or last on a level) and two children (unless it is on the last level). What separates the beap from Williams\' heap is that beap allows sublinear search","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/binary-heap":{"id":"data-structures/hierarchical-data-structure/binary-heap","title":"Binary Heap","description":"Points to remember","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/binary-search-tree":{"id":"data-structures/hierarchical-data-structure/binary-search-tree","title":"Binary Search Tree","description":"Properties -","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/binary-tree":{"id":"data-structures/hierarchical-data-structure/binary-tree","title":"Binary Tree","description":"Properties","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/binomial-heap":{"id":"data-structures/hierarchical-data-structure/binomial-heap","title":"Binomial Heap","description":"Key Points","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/fibonacci-heap":{"id":"data-structures/hierarchical-data-structure/fibonacci-heap","title":"Fibonacci Heap","description":"Key Points","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/interval-search-tree":{"id":"data-structures/hierarchical-data-structure/interval-search-tree","title":"Interval Search Tree","description":"Operations","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/k-ary-heap-d-ary-heap-d-way-heap":{"id":"data-structures/hierarchical-data-structure/k-ary-heap-d-ary-heap-d-way-heap","title":"k-ary heap / d-ary heap / d-way heap","description":"K-ary heaps are a generalization of binary heap(K=2) in which each node have K children instead of 2.","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/kd-trees":{"id":"data-structures/hierarchical-data-structure/kd-trees","title":"Kd-trees","description":"In computer science, a***k*-d tree**(short for*k-dimensional tree*) is a space-partitioningdata structure for organizing points) in ak-dimensional space.*k*-d trees are a useful data structure for several applications, such as searches involving a multidimensional search key (e.g.range searches and nearest neighbor searches).k-d trees are a special case of binary space partitioning trees.","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/left-leaning-red-black-bsts-llrb-tree":{"id":"data-structures/hierarchical-data-structure/left-leaning-red-black-bsts-llrb-tree","title":"Left Leaning Red-Black BSTs (LLRB tree)","description":"Red-Black Tree","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/problems":{"id":"data-structures/hierarchical-data-structure/problems","title":"Problems","description":"Tree Traversals","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/readme":{"id":"data-structures/hierarchical-data-structure/readme","title":"Hierarchical Data Structure","description":"- Binary Heap","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/segment-tree":{"id":"data-structures/hierarchical-data-structure/segment-tree","title":"Segment Tree","description":"In computer science, asegment tree, also known as a statistic tree, is a tree)data structure used for storing information about intervals), or segments. It allows querying which of the stored segments contain a given point. It is, in principle, a static structure; that is, it\'s a structure that cannot be modified once it\'s built. A similar data structure is the interval tree.","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/space-partitioning-trees":{"id":"data-structures/hierarchical-data-structure/space-partitioning-trees","title":"Space-partitioning trees","description":"Use a tree to represent a recursive subdivision of 2d space","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/tree-ds":{"id":"data-structures/hierarchical-data-structure/tree-ds","title":"Tree DS","description":"1. A Tree with N vertices has N-1 Edges","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/array":{"id":"data-structures/linear-data-structure/array","title":"Array","description":"Points to remember","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/bag-data-structure":{"id":"data-structures/linear-data-structure/bag-data-structure","title":"Bag Data Structure","description":"Application - Adding items to a collection and iterating (When order doesn\'t matter)","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/circular-buffer":{"id":"data-structures/linear-data-structure/circular-buffer","title":"Circular Buffer","description":"Acircular buffer, circular queue, cyclic bufferorring bufferis a data structure that uses a single, fixed-size buffer) as if it were connected end-to-end. This structure lends itself easily to buffering data streams.","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/dequeue":{"id":"data-structures/linear-data-structure/dequeue","title":"Dequeue","description":"Dequeue","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/indexed-priority-queue":{"id":"data-structures/linear-data-structure/indexed-priority-queue","title":"Indexed Priority Queue","description":"image","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/linked-list":{"id":"data-structures/linear-data-structure/linked-list","title":"Linked List","description":"Points to remember","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/priority-queue":{"id":"data-structures/linear-data-structure/priority-queue","title":"Priority Queue","description":"A priority queue is an abstract data type which is like a regular queue) or stack) data structure, but where additionally each element has a \\"priority\\" associated with it. In a priority queue, an element with high priority is served before an element with low priority. If two elements have the same priority, they are served according to their order in the queue.","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/problems":{"id":"data-structures/linear-data-structure/problems","title":"Problems","description":"Anagrams (ABC, CBA are anagrams of each other)","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/queue-fifo":{"id":"data-structures/linear-data-structure/queue-fifo","title":"Queue FIFO","description":"Queue is also an abstract data type or a linear data structure, in which the first element is inserted from one end called REAR(also called tail), and the deletion of existing element takes place from the other end called as FRONT(also called head). This makes queue as FIFO(First in First Out) data structure, which means that element inserted first will also be removed first.","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/randomized-queue":{"id":"data-structures/linear-data-structure/randomized-queue","title":"Randomized Queue","description":"Randomized queue","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/readme":{"id":"data-structures/linear-data-structure/readme","title":"Linear Data Structure","description":"- Array","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/sets":{"id":"data-structures/linear-data-structure/sets","title":"Sets","description":"Application of Symbol table.","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/skip-lists":{"id":"data-structures/linear-data-structure/skip-lists","title":"Skip Lists","description":"In computer science, a**skip list** is a data structure that allows fast searchwithin an ordered sequence of elements. Fast search is made possible by maintaining a linked hierarchy of subsequences, with each successive subsequence skipping over fewer elements than the previous one (see the picture below on the right). Searching starts in the sparsest subsequence until two consecutive elements have been found, one smaller and one larger than or equal to the element searched for. Via the linked hierarchy, these two elements link to elements of the next sparsest subsequence, where searching is continued until finally we are searching in the full sequence. The elements that are skipped over may be chosen probabilisticallyor deterministically, with the former being more common.","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/stack-lifo":{"id":"data-structures/linear-data-structure/stack-lifo","title":"Stack LIFO","description":"Stack is an abstract data type with a bounded (predefined) capacity. It is a simple data structure that allows adding and removing elements in a particular order. Every time an element is added, it goes on the top of the stack, the only element that can be removed is the element that was at the top of the stack, just like a pile of objects.","sidebar":"tutorialSidebar"},"data-structures/others/bitmap":{"id":"data-structures/others/bitmap","title":"Bitmap","description":"Bitmap / Bit Array / Bit Vector / Bitmap index / Bit set / Bit string","sidebar":"tutorialSidebar"},"data-structures/others/large-objects":{"id":"data-structures/others/large-objects","title":"Large Objects","description":"Types of Large Objects (LOBs)","sidebar":"tutorialSidebar"},"data-structures/others/lsm-log-structured-merge-trees":{"id":"data-structures/others/lsm-log-structured-merge-trees","title":"LSM (Log Structured Merge Trees)","description":"In computer science, the log-structured merge-tree (or LSM tree) is a data structure with performance characteristics that make it attractive for providing indexed access to files with high insert volume, such as transactional log data. LSM trees, like other search trees, maintain key-value pairs. LSM trees maintain data in two or more separate structures, each of which is optimized for its respective underlying storage medium; data is synchronized between the two structures efficiently, in batches.","sidebar":"tutorialSidebar"},"data-structures/others/readme":{"id":"data-structures/others/readme","title":"Others","description":"- SSTables, Sorted String Tables","sidebar":"tutorialSidebar"},"data-structures/others/sstables-sorted-string-tables":{"id":"data-structures/others/sstables-sorted-string-tables","title":"SSTables, Sorted String Tables","description":"The advantage of the Sorted String Tables is their simplicity: they are easy to write, search and read. SSTables are a persistent ordered immutable map from keys to values, where both keys and values are arbitrary byte strings. They have some nice properties like, for example, the random point-queries (i.e. finding a value by key) can be done quickly by looking up the primary index sequential scans (i.e. iterating over all key/value pairs in a specified key range) can be done efficiently by just reading the records one after the other.","sidebar":"tutorialSidebar"},"data-structures/readme":{"id":"data-structures/readme","title":"Data Structures","description":"- General","sidebar":"tutorialSidebar"},"data-structures/trie/compressed-trie":{"id":"data-structures/trie/compressed-trie","title":"Compressed Trie","description":"Compressed Trie is obtained from standard trie by joining chains of single nodes. The nodes of a compressed trie can be stored by storing index ranges at the nodes","sidebar":"tutorialSidebar"},"data-structures/trie/others":{"id":"data-structures/trie/others","title":"Others","description":"Hash Array Mapped Tries (HAMT)","sidebar":"tutorialSidebar"},"data-structures/trie/patricia-trie":{"id":"data-structures/trie/patricia-trie","title":"Patricia Trie","description":"image","sidebar":"tutorialSidebar"},"data-structures/trie/questions":{"id":"data-structures/trie/questions","title":"Questions","description":"- Count total number of words in Trie","sidebar":"tutorialSidebar"},"data-structures/trie/r-way-tries":{"id":"data-structures/trie/r-way-tries","title":"R-way Tries","description":"image","sidebar":"tutorialSidebar"},"data-structures/trie/readme":{"id":"data-structures/trie/readme","title":"Trie","description":"- Standard Trie","sidebar":"tutorialSidebar"},"data-structures/trie/standard-trie":{"id":"data-structures/trie/standard-trie","title":"Standard Trie","description":"Radix Tree / Prefix Tree (Because pre-order traversal would give the nodes in lexicographical order)","sidebar":"tutorialSidebar"},"data-structures/trie/suffix-array":{"id":"data-structures/trie/suffix-array","title":"Suffix Array","description":"A suffix array is a sorted array of all suffixes of a given string*. The definition is similar to Suffix Tree which is compressed trie of all suffixes of the given text. Any suffix tree based algorithm can be replaced with an algorithm that uses a suffix array enhanced with additional information and solves the same problem in the same time complexity","sidebar":"tutorialSidebar"},"data-structures/trie/suffix-tree":{"id":"data-structures/trie/suffix-tree","title":"Suffix Tree","description":"In computer science, a suffix tree (also called PAT tree or, in an earlier form, position tree) is a compressed trie containing all the suffixes) of the given text as their keys and positions in the text as their values. Suffix trees allow particularly fast implementations of many important string operations.","sidebar":"tutorialSidebar"},"data-structures/trie/ternary-search-tries-tst":{"id":"data-structures/trie/ternary-search-tries-tst","title":"Ternary Search Tries (TST)","description":"Solve the problem of using large amount of data by R-way tries.","sidebar":"tutorialSidebar"},"databases/concepts/acid-and-base":{"id":"databases/concepts/acid-and-base","title":"ACID and BASE","description":"ACID (SQL)","sidebar":"tutorialSidebar"},"databases/concepts/amazon-databases":{"id":"databases/concepts/amazon-databases","title":"amazon-databases","description":"Amazon Databases","sidebar":"tutorialSidebar"},"databases/concepts/comparisions":{"id":"databases/concepts/comparisions","title":"Comparisons","description":"image","sidebar":"tutorialSidebar"},"databases/concepts/concurrency-control":{"id":"databases/concepts/concurrency-control","title":"Concurrency Control","description":"The protocol to allow transactions to access a database in a multi-programmed fashion while preserving the illusion that each of them is executing alone on a dedicated system","sidebar":"tutorialSidebar"},"databases/concepts/core-concepts":{"id":"databases/concepts/core-concepts","title":"Core Concepts","description":"CRUD - Create, Read, Update, Delete","sidebar":"tutorialSidebar"},"databases/concepts/database-workloads":{"id":"databases/concepts/database-workloads","title":"Database Workloads","description":"OLTP (On-line Transaction Processing)","sidebar":"tutorialSidebar"},"databases/concepts/disk-oriented-vs-in-memory-dbs":{"id":"databases/concepts/disk-oriented-vs-in-memory-dbs","title":"Disk oriented vs in-memory DBs","description":"Background","sidebar":"tutorialSidebar"},"databases/concepts/history":{"id":"databases/concepts/history","title":"History","description":"image","sidebar":"tutorialSidebar"},"databases/concepts/intro":{"id":"databases/concepts/intro","title":"Intro","description":"Choosing the Database","sidebar":"tutorialSidebar"},"databases/concepts/isolation-levels":{"id":"databases/concepts/isolation-levels","title":"Isolation Levels","description":"In database systems, isolation determines how transaction integrity is visible to other users and systems. For example, when a user is creating a Purchase Order and has created the header, but not the Purchase Order lines, is the header available for other systems/users (carrying out concurrent) operations, such as a report on Purchase Orders) to see? (Refers to current, not past database systems).","sidebar":"tutorialSidebar"},"databases/concepts/mvcc-multiversion-concurrency-control":{"id":"databases/concepts/mvcc-multiversion-concurrency-control","title":"MVCC, MultiVersion Concurrency Control","description":"The DBMS maintans physical versions of a single logical object in the database:","sidebar":"tutorialSidebar"},"databases/concepts/others":{"id":"databases/concepts/others","title":"Others","description":"JDBC - Java Database Connectivity","sidebar":"tutorialSidebar"},"databases/concepts/readme":{"id":"databases/concepts/readme","title":"Databases Concepts","description":"- Intro","sidebar":"tutorialSidebar"},"databases/concepts/rum-conjecture":{"id":"databases/concepts/rum-conjecture","title":"RUM Conjecture","description":"RUM - Read Update Memory","sidebar":"tutorialSidebar"},"databases/concepts/types-of-databases":{"id":"databases/concepts/types-of-databases","title":"Types of Databases","description":"RDBMS / Relational database (ACID)","sidebar":"tutorialSidebar"},"databases/data-warehousing/01-intro":{"id":"databases/data-warehousing/01-intro","title":"Data Warehousing","description":"In computing, a data warehouse (DW or DWH), also known as an enterprise data warehouse (EDW), is a system used for reporting and data analysis, and is considered a core component of business intelligence. DWs are central repositories of integrated data from one or more disparate sources. They store current and historical data in one single place that are used for creating analytical reports for workers throughout the enterprise.","sidebar":"tutorialSidebar"},"databases/data-warehousing/02-concepts":{"id":"databases/data-warehousing/02-concepts","title":"Concepts","description":"image","sidebar":"tutorialSidebar"},"databases/data-warehousing/03-slowly-changing-dimension-scd":{"id":"databases/data-warehousing/03-slowly-changing-dimension-scd","title":"Slowly Changing Dimension (SCD)","description":"A Slowly Changing Dimension (SCD) is a dimension that stores and manages both current and historical data over time in a data warehouse. It is considered and implemented as one of the most critical ETL (Extract Transform Load) tasks in tracking the history of dimension records.","sidebar":"tutorialSidebar"},"databases/data-warehousing/04-fact-dimension-tables":{"id":"databases/data-warehousing/04-fact-dimension-tables","title":"Fact / Dimension Tables","description":"Dimensional Modeling?","sidebar":"tutorialSidebar"},"databases/data-warehousing/05-characteristics":{"id":"databases/data-warehousing/05-characteristics","title":"Characteristics","description":"Characteristics of Data warehouse","sidebar":"tutorialSidebar"},"databases/data-warehousing/06-architecture":{"id":"databases/data-warehousing/06-architecture","title":"Architecture","description":"There are mainly three types of Datawarehouse Architectures: -","sidebar":"tutorialSidebar"},"databases/data-warehousing/07-warehouse-schemas":{"id":"databases/data-warehousing/07-warehouse-schemas","title":"Warehouse Schemas","description":"Multidimensional schema is especially designed to model data warehouse systems. The schemas are designed to address the unique needs of very large databases designed for the analytical purpose (OLAP).","sidebar":"tutorialSidebar"},"databases/data-warehousing/08-data-lake":{"id":"databases/data-warehousing/08-data-lake","title":"Data Lake","description":"Also called Data Swamp","sidebar":"tutorialSidebar"},"databases/data-warehousing/09-kimball-inmon-architecture":{"id":"databases/data-warehousing/09-kimball-inmon-architecture","title":"Kimball / Inmon Architecture","description":"For designing a data warehouse, there are two most common architectures named Kimball and Inmon.","sidebar":"tutorialSidebar"},"databases/data-warehousing/10-lambda-architecture":{"id":"databases/data-warehousing/10-lambda-architecture","title":"Lambda Architecture","description":"Lambda architecture is a data-processing architecture designed to handle massive quantities of data by taking advantage of both batch and stream-processing methods. This approach to architecture xattempts to balance latency), throughput, and fault-tolerance by using batch processing to provide comprehensive and accurate views of batch data, while simultaneously using real-time stream processing to provide views of online data. The two view outputs may be joined before presentation. The rise of lambda architecture is correlated with the growth of big data, real-time analytics, and the drive to mitigate the latencies of map-reduce.","sidebar":"tutorialSidebar"},"databases/data-warehousing/11-dw-databases":{"id":"databases/data-warehousing/11-dw-databases","title":"DW - Databases","description":"1. SnowFlake","sidebar":"tutorialSidebar"},"databases/data-warehousing/change-data-capture-cdc":{"id":"databases/data-warehousing/change-data-capture-cdc","title":"Change Data Capture (CDC)","description":"In databases, change data capture(CDC) is a set of software design patterns) used to determine (and track) the data that has changed so that action can be taken using the changed data. CDC is also an approach to data integration that is based on the identification, capture and delivery of the changes made to enterprise data sources.","sidebar":"tutorialSidebar"},"databases/data-warehousing/data-engineering":{"id":"databases/data-warehousing/data-engineering","title":"Data Engineering","description":"Services","sidebar":"tutorialSidebar"},"databases/data-warehousing/debezium":{"id":"databases/data-warehousing/debezium","title":"Debezium","description":"Debezium is an open source distributed platform for change data capture. Start it up, point it at your databases, and your apps can start responding to all of the inserts, updates, and deletes that other apps commit to your databases. Debezium is durable and fast, so your apps can respond quickly and never miss an event, even when things go wrong.","sidebar":"tutorialSidebar"},"databases/data-warehousing/etl-extract-transform-load":{"id":"databases/data-warehousing/etl-extract-transform-load","title":"ETL (Extract Transform Load)","description":"In computing, extract, transform, load (ETL) refers to a process in database usage and especially in data warehousing.","sidebar":"tutorialSidebar"},"databases/data-warehousing/master-data-management-mdm":{"id":"databases/data-warehousing/master-data-management-mdm","title":"Master Data Management (MDM)","description":"Master data management (MDM) involves creating a single master record for each person, place, or thing in a business, from across internal and external data sources and applications. This information has been de-duplicated, reconciled and enriched, becoming a consistent, reliable source. Once created, this master data serves as a trusted view of business-critical data that can be managed and shared across the business to promote accurate reporting, reduce data errors, remove redundancy, and help workers make better-informed business decisions.","sidebar":"tutorialSidebar"},"databases/data-warehousing/readme":{"id":"databases/data-warehousing/readme","title":"Data Warehousing","description":"- Intro","sidebar":"tutorialSidebar"},"databases/data-warehousing/tools":{"id":"databases/data-warehousing/tools","title":"Tools","description":"Informatica PowerCenter / IICS","sidebar":"tutorialSidebar"},"databases/indexing/database-index":{"id":"databases/indexing/database-index","title":"Database Index","description":"A database index is a data structure that improves the speed of data retrieval operations on a database table) at the cost of additional writes and storage space to maintain the index data structure. Indexes are used to quickly locate data without having to search every row in a database table every time a database table is accessed. Indexes can be created using one or more columns of a database table), providing the basis for both rapid random lookups and efficient access of ordered records.","sidebar":"tutorialSidebar"},"databases/indexing/indexing-questions":{"id":"databases/indexing/indexing-questions","title":"Indexing Questions","description":"https://use-the-index-luke.com/3-minute-test/mysql","sidebar":"tutorialSidebar"},"databases/indexing/intro":{"id":"databases/indexing/intro","title":"Indexing","description":"Indexing is a data structure technique to efficiently retrieve records from the database files based on some attributes on which the indexing has been done. Indexing in database systems is similar to what we see in books i.e. Table of contents.","sidebar":"tutorialSidebar"},"databases/indexing/inverted-index":{"id":"databases/indexing/inverted-index","title":"Inverted Index","description":"In computer science, an inverted index (also referred to as postings file or inverted file) is an index data structure) storing a mapping from content, such as words or numbers, to its locations in a database file), or in a document or a set of documents (named in contrast to a forward index, which maps from documents to content). The purpose of an inverted index is to allow fast full text searches, at a cost of increased processing when a document is added to the database. The inverted file may be the database file itself, rather than its index). It is the most popular data structure used in document retrieval systems, used on a large scale for example in search engines.","sidebar":"tutorialSidebar"},"databases/indexing/mysql-indexing":{"id":"databases/indexing/mysql-indexing","title":"MySQL Indexing","description":"Important Points / Keep in mind / Gotchas","sidebar":"tutorialSidebar"},"databases/indexing/readme":{"id":"databases/indexing/readme","title":"Indexing","description":"- Indexing","sidebar":"tutorialSidebar"},"databases/modeling/data-modeling":{"id":"databases/modeling/data-modeling","title":"Data Modeling","description":"Data modeling in software engineering is the process of creating a data model for an information system by applying certain formal techniques","sidebar":"tutorialSidebar"},"databases/modeling/er-diagrams-entity-relationships":{"id":"databases/modeling/er-diagrams-entity-relationships","title":"ER Diagrams (Entity Relationships)","description":"An entity--relationship model (or ER model) describes interrelated things of interest in a specific domain of knowledge. A basic ER model is composed of entity types (which classify the things of interest) and specifies relationships that can exist between entities(instances of those entity types).","sidebar":"tutorialSidebar"},"databases/modeling/er-tools":{"id":"databases/modeling/er-tools","title":"ER - Tools","description":"https://drawsql.app (Great)","sidebar":"tutorialSidebar"},"databases/modeling/readme":{"id":"databases/modeling/readme","title":"Modeling","description":"- Data Modeling","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/capacity-modes":{"id":"databases/nosql-databases/aws-dynamodb/capacity-modes","title":"Capacity Modes","description":"DynamoDB has two capacity modes, Provisioned and On-Demand. You can switch between these modes once every 24 hours.","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/cheatsheet":{"id":"databases/nosql-databases/aws-dynamodb/cheatsheet","title":"Cheatsheet","description":"The Basics of DynamoDB","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/core-components":{"id":"databases/nosql-databases/aws-dynamodb/core-components","title":"Core components","description":"In DynamoDB, tables, items, and attributes are the core components that you work with. A table is a collection of items, and each item is a collection of attributes. DynamoDB uses primary keys to uniquely identify each item in a table and secondary indexes to provide more querying flexibility. You can use DynamoDB Streams to capture data modification events in DynamoDB tables.","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/documentation":{"id":"databases/nosql-databases/aws-dynamodb/documentation","title":"Documentation","description":"https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/intro":{"id":"databases/nosql-databases/aws-dynamodb/intro","title":"AWS DynamoDB","description":"DynamoDB is a managed NoSQL database service provided by Amazon Web Services. As it is managed by Amazon, users do not have to worry about operations such as hardware provisioning, configuration, and scaling. The offering primarily targets key-value and document storage.","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/others":{"id":"databases/nosql-databases/aws-dynamodb/others","title":"Others","description":"PartiQL","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/readme":{"id":"databases/nosql-databases/aws-dynamodb/readme","title":"DynamoDB","description":"- AWS DynamoDB","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/table-classes":{"id":"databases/nosql-databases/aws-dynamodb/table-classes","title":"Table Classes","description":"DynamoDB offers two table classes designed to help you optimize for cost. The DynamoDB Standard table class is the default, and is recommended for the vast majority of workloads. The DynamoDB Standard-Infrequent Access (DynamoDB Standard-IA) table class is optimized for tables where storage is the dominant cost. For example, tables that store infrequently accessed data, such as application logs, old social media posts, e-commerce order history, and past gaming achievements, are good candidates for the Standard-IA table class.","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/working":{"id":"databases/nosql-databases/aws-dynamodb/working","title":"Working","description":"DynamoDB Item Sizes","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/commands":{"id":"databases/nosql-databases/cassandra/commands","title":"Commands","description":"cqlsh - Cassandra cli tools","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/consistency":{"id":"databases/nosql-databases/cassandra/consistency","title":"Consistency","description":"ANY","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/cql-cassandra-query-language":{"id":"databases/nosql-databases/cassandra/cql-cassandra-query-language","title":"CQL (Cassandra Query Language)","description":"CQL","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/data-model":{"id":"databases/nosql-databases/cassandra/data-model","title":"Data Model","description":"- Partition Key","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/design":{"id":"databases/nosql-databases/cassandra/design","title":"Design","description":"Partitioner","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/drivers-clients":{"id":"databases/nosql-databases/cassandra/drivers-clients","title":"Drivers / Clients","description":"","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/intro":{"id":"databases/nosql-databases/cassandra/intro","title":"Cassandra","description":"Apache Cassandra is a free and open-source, distributed, wide column store, NoSQLdatabase management system designed to handle large amounts of data across many commodity servers, providing high availability with no single point of failure. Cassandra offers robust support for clusters spanning multiple datacenters, with asynchronous masterless replication allowing low latency operations for all clients.","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/questions":{"id":"databases/nosql-databases/cassandra/questions","title":"Questions","description":"https://www.edureka.co/blog/interview-questions/cassandra-interview-questions","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/readme":{"id":"databases/nosql-databases/cassandra/readme","title":"Cassandra","description":"- Cassandra","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/working":{"id":"databases/nosql-databases/cassandra/working","title":"Working","description":"Writes","sidebar":"tutorialSidebar"},"databases/nosql-databases/clickhouse":{"id":"databases/nosql-databases/clickhouse","title":"ClickHouse","description":"ClickHouse is an open source column-oriented database management system capable of realtime generation of analytical data reports using SQL queries.","sidebar":"tutorialSidebar"},"databases/nosql-databases/column-family":{"id":"databases/nosql-databases/column-family","title":"Column family","description":"Column-family databases, also called non-relational column stores, wide-column databases, or simply column databases, are perhaps the NoSQL type that, on the surface, looks most similar to relational databases. Like relational databases, wide-column databases store data using concepts like rows and columns. However, in wide-column databases, the association between these elements is very different from how relational databases use them.","sidebar":"tutorialSidebar"},"databases/nosql-databases/comparisions":{"id":"databases/nosql-databases/comparisions","title":"Comparisions","description":"Druid FAQs / Comparisions","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/architecture":{"id":"databases/nosql-databases/druid/architecture","title":"Architecture","description":"Druid has a multi-process, distributed architecture that is designed to be cloud-friendly and easy to operate. Each Druid process type can be configured and scaled independently, giving you maximum flexibility over your cluster. This design also provides enhanced fault tolerance: an outage of one component will not immediately affect other components.","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/cheatsheet":{"id":"databases/nosql-databases/druid/cheatsheet","title":"Cheatsheet","description":"| Common | |","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/commands":{"id":"databases/nosql-databases/druid/commands","title":"Commands","description":"| Service | Port |","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/documentation":{"id":"databases/nosql-databases/druid/documentation","title":"Documentation","description":"Getting Started","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/faqs":{"id":"databases/nosql-databases/druid/faqs","title":"FAQs","description":"Frequently Asked Questions | Apache Druid","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/intro":{"id":"databases/nosql-databases/druid/intro","title":"Druid","description":"Apache Druid (incubating) is a real-time analytics database designed for fast slice-and-dice analytics (\\"OLAP\\" queries) on large data sets. Druid is most often used as a database for powering use cases where real-time ingest, fast query performance, and high uptime are important. As such, Druid is commonly used for powering GUIs of analytical applications, or as a backend for highly-concurrent APIs that need fast aggregations. Druid works best with event-oriented data.","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/others":{"id":"databases/nosql-databases/druid/others","title":"Others","description":"Plywood","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/paper":{"id":"databases/nosql-databases/druid/paper","title":"Paper","description":"1. Realtime Node","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/readme":{"id":"databases/nosql-databases/druid/readme","title":"Druid","description":"- Druid Intro","sidebar":"tutorialSidebar"},"databases/nosql-databases/etcd":{"id":"databases/nosql-databases/etcd","title":"etcd","description":"etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. It\'s open-source and available on GitHub. etcd gracefully handles leader elections during network partitions and will tolerate machine failure, including the leader.","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/commands":{"id":"databases/nosql-databases/mongodb/commands","title":"Commands","description":"Mongo DB Queries","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/data-types":{"id":"databases/nosql-databases/mongodb/data-types","title":"Data Types","description":"- String\u2212 This is the most commonly used datatype to store the data. String in MongoDB must be UTF-8 valid.","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/indexes":{"id":"databases/nosql-databases/mongodb/indexes","title":"Indexes","description":"Indexes support the efficient execution of queries in MongoDB. Without indexes, MongoDB must perform a collection scan, i.e. scan every document in a collection, to select those documents that match the query statement. If an appropriate index exists for a query, MongoDB can use the index to limit the number of documents it must inspect.","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/intro":{"id":"databases/nosql-databases/mongodb/intro","title":"MongoDB","description":"MongoDB / CouchBase","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/others":{"id":"databases/nosql-databases/mongodb/others","title":"Others","description":"Mongodb Oplog","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/overview":{"id":"databases/nosql-databases/mongodb/overview","title":"Overview","description":"Database","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/pymongo":{"id":"databases/nosql-databases/mongodb/pymongo","title":"pymongo","description":"https://github.com/mongodb/mongo-python-driver","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/questions":{"id":"databases/nosql-databases/mongodb/questions","title":"Questions","description":"- what is opslog in mongodb, location of opslog in mongodb","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/read-write-concern":{"id":"databases/nosql-databases/mongodb/read-write-concern","title":"Read / Write Concern","description":"Read Concern","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/readme":{"id":"databases/nosql-databases/mongodb/readme","title":"MongoDB","description":"- MongoDB Intro","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/sharding-replication":{"id":"databases/nosql-databases/mongodb/sharding-replication","title":"Sharding / Replication","description":"Sharding","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/vector-search":{"id":"databases/nosql-databases/mongodb/vector-search","title":"Vector Search","description":"Build intelligent applications powered by semantic search and generative AI over any type of data.","sidebar":"tutorialSidebar"},"databases/nosql-databases/others":{"id":"databases/nosql-databases/others","title":"Other NoSQL Databases","description":"Aerospike","sidebar":"tutorialSidebar"},"databases/nosql-databases/readme":{"id":"databases/nosql-databases/readme","title":"NoSQL Databases","description":"- Column Family","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/best-practices":{"id":"databases/nosql-databases/redis/best-practices","title":"Best Practices","description":"- Introduction","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/commands":{"id":"databases/nosql-databases/redis/commands","title":"Commands","description":"Installation","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/documentation":{"id":"databases/nosql-databases/redis/documentation","title":"Documentation","description":"Programming with Redis","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/intro":{"id":"databases/nosql-databases/redis/intro","title":"Redis","description":"Redis (Remote Dictionary Service)","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/others":{"id":"databases/nosql-databases/redis/others","title":"Others","description":"Redis Time Series","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/readme":{"id":"databases/nosql-databases/redis/readme","title":"Redis","description":"- Redis","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/redis-concepts":{"id":"databases/nosql-databases/redis/redis-concepts","title":"Redis Concepts","description":"Redis keys","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/redis-data-types":{"id":"databases/nosql-databases/redis/redis-data-types","title":"Redis Data Types","description":"Redis is not aplainkey-value store, it is actually adata structures server, supporting different kinds of values. What this means is that, while in traditional key-value stores you associate string keys to string values, in Redis the value is not limited to a simple string, but can also hold more complex data structures. The following is the list of all the data structures supported by Redis","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/redis-eviction-policies":{"id":"databases/nosql-databases/redis/redis-eviction-policies","title":"Redis Eviction Policies","description":"Cache Eviction Policies","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/redis-py":{"id":"databases/nosql-databases/redis/redis-py","title":"redis-py","description":"check pending list in redis","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/redis-queues":{"id":"databases/nosql-databases/redis/redis-queues","title":"Redis Queues","description":"Conceptually, a Stream in Redis is a list where you can append entries. Each entry has a unique ID and a value. The ID is auto-generated by default, and it includes a timestamp. The value is a hash. You can query ranges or use blocking commands to read entries as they come. Typical of Redis, you can combine different ingredients to get the result you need. As Niklaus Wirth once said, programs are algorithms plus data structures, and Redis already gives you a bit of both.","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/redis-streams-pubsub":{"id":"databases/nosql-databases/redis/redis-streams-pubsub","title":"Redis Streams / PUBSUB","description":"Messaging","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/scaling":{"id":"databases/nosql-databases/redis/scaling","title":"Scaling","description":"Replication/Clustering","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/architecture":{"id":"databases/nosql-databases/snowflake/architecture","title":"Architecture","description":"Data Platform as a Self-managed Service","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/commands":{"id":"databases/nosql-databases/snowflake/commands","title":"Commands","description":"SnowSQL (CLI Client)","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/compute":{"id":"databases/nosql-databases/snowflake/compute","title":"Compute","description":"Virtual Warehouse","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/documentation":{"id":"databases/nosql-databases/snowflake/documentation","title":"Documentation","description":"Overview","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/governance":{"id":"databases/nosql-databases/snowflake/governance","title":"Governance","description":"Data Security / governance","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/ingestion":{"id":"databases/nosql-databases/snowflake/ingestion","title":"Data Ingestion / Loading","description":"Snowflake Data Loading","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/intro":{"id":"databases/nosql-databases/snowflake/intro","title":"Intro","description":"Multi-cluster, shared storage architecture","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/optimizations":{"id":"databases/nosql-databases/snowflake/optimizations","title":"Optimizations","description":"Micro-partitions","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/readme":{"id":"databases/nosql-databases/snowflake/readme","title":"Snowflake","description":"- Intro","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/recovery":{"id":"databases/nosql-databases/snowflake/recovery","title":"Recovery","description":"Time Travel","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/stages":{"id":"databases/nosql-databases/snowflake/stages","title":"Stages","description":"A Snowflake stage is a location in cloud storage that you use to load and unload data from a table.","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/terms":{"id":"databases/nosql-databases/snowflake/terms","title":"Terms","description":"clone","sidebar":"tutorialSidebar"},"databases/nosql-databases/tidb":{"id":"databases/nosql-databases/tidb","title":"tidb","description":"TiDB (\\"Ti\\" stands for Titanium) is an open-source NewSQL database that supports Hybrid Transactional and Analytical Processing (HTAP) workloads. It is MySQL compatible and features horizontal scalability, strong consistency, and high availability.","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/administration":{"id":"databases/nosql-databases/time-series-db/influxdb/administration","title":"Administration","description":"1. Configuring InfluxDB","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/commands-influx-query-language-influxql":{"id":"databases/nosql-databases/time-series-db/influxdb/commands-influx-query-language-influxql","title":"Commands / Influx Query Language (InfluxQL)","description":"1. Sample data","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/concepts":{"id":"databases/nosql-databases/time-series-db/influxdb/concepts","title":"Concepts","description":"In-memory indexing and the Time-Structured Merge Tree (TSM)","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/influx":{"id":"databases/nosql-databases/time-series-db/influxdb/influx","title":"Influx","description":"The complete time series platform.","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/kapacitor":{"id":"databases/nosql-databases/time-series-db/influxdb/kapacitor","title":"Kapacitor","description":"Kapacitor is an open source data processing framework that makes it easy to create alerts, run ETL jobs and detect anomalies. Kapacitor is the final piece of the TICK stack","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/others":{"id":"databases/nosql-databases/time-series-db/influxdb/others","title":"Others","description":"Supported Protocols","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/readme":{"id":"databases/nosql-databases/time-series-db/influxdb/readme","title":"InfluxDB","description":"Tag sets are indexed, field sets are not. InfluxDB\'s speed is based on the fact that tag sets are stored in-memory, whereas the field sets are stored on-disk.","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/tools":{"id":"databases/nosql-databases/time-series-db/influxdb/tools","title":"Tools","description":"1. InfluxDB command line interface (CLI/shell)","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/upgrades":{"id":"databases/nosql-databases/time-series-db/influxdb/upgrades","title":"Upgrades","description":"InfluxDB 3.0 keeps raising the bar","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/write-protocols":{"id":"databases/nosql-databases/time-series-db/influxdb/write-protocols","title":"Write Protocols","description":"1. Line Protocol reference","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/readme":{"id":"databases/nosql-databases/time-series-db/readme","title":"Time Series","description":"- Time Series Databases","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/time-series-databases":{"id":"databases/nosql-databases/time-series-db/time-series-databases","title":"Time Series Databases","description":"- Optimized for time-stamped or time series data","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/timescaledb":{"id":"databases/nosql-databases/time-series-db/timescaledb","title":"TimeScaleDB","description":"TimescaleDB is an open-source database designed to make SQL scalable for time-series data. It is engineered up from PostgreSQL, providing automatic partitioning across time and space (partitioning key), as well as full SQL support.","sidebar":"tutorialSidebar"},"databases/nosql-databases/yugabytedb":{"id":"databases/nosql-databases/yugabytedb","title":"YugabyteDB","description":"YugabyteDB is a high-performance, cloud-native distributed SQL database that aims to support all PostgreSQL features. It is best fit for cloud-native OLTP (i.e. real-time, business critical) applications that need absolute data correctness and require at least one of the following: scalability, high tolerance to failures, globally-distributed deployments.","sidebar":"tutorialSidebar"},"databases/others/course-advanced-database-systems":{"id":"databases/others/course-advanced-database-systems","title":"Course - Advanced Database Systems","description":"1. Course Introduction and History of Databases","sidebar":"tutorialSidebar"},"databases/others/course-aws-certified-database-specialty":{"id":"databases/others/course-aws-certified-database-specialty","title":"Course - AWS Certified Database - Specialty","description":"PTO - Performance Tuning and Optimization","sidebar":"tutorialSidebar"},"databases/others/database-activity-monitoring-dam":{"id":"databases/others/database-activity-monitoring-dam","title":"Database Activity/Active Monitoring (DAM)","description":"Database activity monitoring (DAM)\xa0refers to a suite of tools that can be used to support the ability to identify and report on fraudulent, illegal or other undesirable behavior, with minimal impact on user operations and productivity. The tools, which have evolved from basic analysis of user activity in and around relational database management systems (RDBMSs) to encompass a more comprehensive set of capabilities, such as discovery and classification, vulnerability management, application-level analysis, intrusion prevention, support for unstructured data security, identity and access management integration, and risk management support.","sidebar":"tutorialSidebar"},"databases/others/database-migration-tools":{"id":"databases/others/database-migration-tools","title":"Database Migration Tools","description":"Liquibase","sidebar":"tutorialSidebar"},"databases/others/databases-others":{"id":"databases/others/databases-others","title":"Databases - Others","description":"Flat file database","sidebar":"tutorialSidebar"},"databases/others/readme":{"id":"databases/others/readme","title":"Others","description":"- Database Activity Monitoring (DAM)","sidebar":"tutorialSidebar"},"databases/others/technologies-tools":{"id":"databases/others/technologies-tools","title":"Technologies / Tools","description":"MySQL Workbench / MySQLWorkbench","sidebar":"tutorialSidebar"},"databases/readme":{"id":"databases/readme","title":"Databases","description":"- Concepts","sidebar":"tutorialSidebar"},"databases/sql-databases/amazon-aurora-vs-rds":{"id":"databases/sql-databases/amazon-aurora-vs-rds","title":"Amazon Aurora vs RDS","description":"Aurora vs RDS: How to Choose the Right AWS Database Solution","sidebar":"tutorialSidebar"},"databases/sql-databases/amazon-rds":{"id":"databases/sql-databases/amazon-rds","title":"Amazon RDS","description":"Managed Relational Database Service for MySQL, PostgreSQL, Oracle, SQL Server, and MariaDB","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/aurora-documentation":{"id":"databases/sql-databases/aws-aurora/aurora-documentation","title":"Aurora Documentation","description":"https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/aurora-global-databases":{"id":"databases/sql-databases/aws-aurora/aurora-global-databases","title":"Aurora Global Databases","description":"Amazon Aurora global databases span multiple AWS Regions, enabling low latency global reads and providing fast recovery from the rare outage that might affect an entire AWS Region. An Aurora global database has a primary DB cluster in one Region, and up to five secondary DB clusters in different Regions.","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/aurora-serverless":{"id":"databases/sql-databases/aws-aurora/aurora-serverless","title":"Amazon Aurora Serverless","description":"Amazon Aurora Serverless is an on-demand, autoscaling configuration for Amazon Aurora. AnAurora Serverless DB cluster is a DB cluster that automatically starts up, shuts down, and scales up or down its compute capacity based on your application\'s needs. Aurora Serverless provides a relatively simple, cost-effective option for infrequent, intermittent, or unpredictable workloads. It can provide this because it automatically starts up, scales compute capacity to match your application\'s usage, and shuts down when it\'s not in use.","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/backup":{"id":"databases/sql-databases/aws-aurora/backup","title":"Backup","description":"Understanding Amazon Aurora backup storage usage - Amazon Aurora","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/configurations-optimizations-best-practices":{"id":"databases/sql-databases/aws-aurora/configurations-optimizations-best-practices","title":"Configurations / Optimizations / Best Practices","description":"RDS - Best practices for configuring parameters for Amazon RDS for MySQL, part 1: Parameters related to performance | AWS Database Blog","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/costs":{"id":"databases/sql-databases/aws-aurora/costs","title":"Costs","description":"1. \u2060\u2060Aurora Serverless V1","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/high-availability-ha":{"id":"databases/sql-databases/aws-aurora/high-availability-ha","title":"High Availability (HA)","description":"RDS HA","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/high-availability-ha-others":{"id":"databases/sql-databases/aws-aurora/high-availability-ha-others","title":"High Availability (HA) Others","description":"MySQL Enterprise High Availability","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/intro":{"id":"databases/sql-databases/aws-aurora/intro","title":"AWS Aurora","description":"For OLTP","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/monitoring":{"id":"databases/sql-databases/aws-aurora/monitoring","title":"Monitoring","description":"Monitoring and Event Notifications","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/others":{"id":"databases/sql-databases/aws-aurora/others","title":"Others","description":"Connecting","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/readme":{"id":"databases/sql-databases/aws-aurora/readme","title":"AWS Aurora","description":"- AWS Aurora","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/storage":{"id":"databases/sql-databases/aws-aurora/storage","title":"Storage","description":"AWS re [REPEAT 1] Amazon Aurora storage demystified: How it all works (DAT309-R1)","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/architecture":{"id":"databases/sql-databases/aws-redshift/architecture","title":"Architecture","description":"image","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/deep-dive-best-practices":{"id":"databases/sql-databases/aws-redshift/deep-dive-best-practices","title":"Deep dive / Best practices","description":"Insert performance","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/documentation":{"id":"databases/sql-databases/aws-redshift/documentation","title":"Documentation","description":"Designing Tables > Choosing a column compression type > Compression Encoding","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/etl-redshift":{"id":"databases/sql-databases/aws-redshift/etl-redshift","title":"ETL in Redshift","description":"AWS Data pipeline","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/intro":{"id":"databases/sql-databases/aws-redshift/intro","title":"AWS Redshift","description":"- OLAP","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/others":{"id":"databases/sql-databases/aws-redshift/others","title":"Others","description":"Column level access controls","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/pricing-sizing":{"id":"databases/sql-databases/aws-redshift/pricing-sizing","title":"Pricing / Sizing","description":"Node Types","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/readme":{"id":"databases/sql-databases/aws-redshift/readme","title":"Redshift","description":"- Amazon Redshift","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/redshift-sql-queries-commands":{"id":"databases/sql-databases/aws-redshift/redshift-sql-queries-commands","title":"Redshift SQL Queries / Commands","description":"Simplify Online Analytical Processing (OLAP) queries in Amazon Redshift using new SQL constructs such as ROLLUP, CUBE, and GROUPING SETS | AWS Big Data Blog","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/wlm-qmr":{"id":"databases/sql-databases/aws-redshift/wlm-qmr","title":"Workload management (WLM) and query monitoring rules (QMR)","description":"Workload management (WLM)","sidebar":"tutorialSidebar"},"databases/sql-databases/memsql/intro":{"id":"databases/sql-databases/memsql/intro","title":"Intro","description":"MemSQL is a distributed in-memory relational database designed for both transactional and analytical workloads.","sidebar":"tutorialSidebar"},"databases/sql-databases/memsql/readme":{"id":"databases/sql-databases/memsql/readme","title":"MemSQL","description":"MemSQLis a distributed, in-memory, SQLdatabase management system.","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/administration-configuration":{"id":"databases/sql-databases/mysql/administration-configuration","title":"Administration / Configuration","description":"Commands","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/backup-comparisons":{"id":"databases/sql-databases/mysql/backup-comparisons","title":"Backup Comparisons","description":"Percona XtraBackup","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/backup-policy":{"id":"databases/sql-databases/mysql/backup-policy","title":"Backup Policy","description":"Full Backups","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/backup-types":{"id":"databases/sql-databases/mysql/backup-types","title":"Backup Types","description":"Physical (Raw) Versus Logical Backups","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/connection-handling":{"id":"databases/sql-databases/mysql/connection-handling","title":"Connection Handling","description":"The MySQL Server (mysqld) executes as a single OS process, with multiple threads executing concurrent activities. MySQL does not have its own thread implementation, but relies on the thread implementation of the underlying OS. When a user connects to the database a user thread is created inside mysqld and this user thread executes user queries, sending results back to the user, until the user disconnects.","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/documentation":{"id":"databases/sql-databases/mysql/documentation","title":"Documentation","description":"1.3 Overview of the MySQL Database Management System","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/gtid-replication":{"id":"databases/sql-databases/mysql/gtid-replication","title":"GTID Replication","description":"When using GTIDs, each transaction can be identified and tracked as it is committed on the originating server and applied by any replicas; this means that it is not necessary when using GTIDs to refer to log files or positions within those files when starting a new replica or failing over to a new source, which greatly simplifies these tasks. Because GTID-based replication is completely transaction-based, it is simple to determine whether sources and replicas are consistent; as long as all transactions committed on a source are also committed on a replica, consistency between the two is guaranteed. You can use either statement-based or row-based replication with GTIDs (see\xa0Section\xa016.2.1, \u201cReplication Formats\u201d); however, for best results, we recommend that you use the row-based format.","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/intro":{"id":"databases/sql-databases/mysql/intro","title":"MySQL","description":"Many tables and relationship between tables","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/mydumper":{"id":"databases/sql-databases/mysql/mydumper","title":"MyDumper","description":"MyDumper is a MySQL Logical Backup Tool. It has 2 tools:","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/mysql-data-types":{"id":"databases/sql-databases/mysql/mysql-data-types","title":"MySQL Data Types","description":"11.1 Numeric Data Types","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/mysql-heatwave":{"id":"databases/sql-databases/mysql/mysql-heatwave","title":"MySQL Heatwave","description":"One Database for OLTP, OLAP, ML & Lakehouse","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/mysql-triggers":{"id":"databases/sql-databases/mysql/mysql-triggers","title":"MySQL Triggers","description":"- 23.3 Using Triggers","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/mysqlbinlog":{"id":"databases/sql-databases/mysql/mysqlbinlog","title":"mysqlbinlog","description":"The server\'s binary log consists of files containing\xa0\u201cevents\u201d\xa0that describe modifications to database contents. The server writes these files in binary format. To display their contents in text format, use the\xa0mysqlbinlog\xa0utility. You can also use\xa0mysqlbinlog\xa0to display the contents of relay log files written by a replica server in a replication setup because relay logs have the same format as binary logs.","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/mysqldump":{"id":"databases/sql-databases/mysql/mysqldump","title":"MySQLDump","description":"Commands","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/optimizing-locking-operations":{"id":"databases/sql-databases/mysql/optimizing-locking-operations","title":"Optimizing Locking Operations","description":"- 8.11 Optimizing Locking Operations","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/others":{"id":"databases/sql-databases/mysql/others","title":"Others","description":"Facts","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/partitioning":{"id":"databases/sql-databases/mysql/partitioning","title":"Partitioning","description":"- 26 Partitioning","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/percona-toolkit":{"id":"databases/sql-databases/mysql/percona-toolkit","title":"Percona Toolkit","description":"- Verify MySQL replication integrity by checking source and replica data consistency","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/percona-xtrabackup":{"id":"databases/sql-databases/mysql/percona-xtrabackup","title":"Percona XtraBackup","description":"Features","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/readme":{"id":"databases/sql-databases/mysql/readme","title":"MySQL","description":"- MySQL","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/replication":{"id":"databases/sql-databases/mysql/replication","title":"Replication","description":"MySQL Replication Tutorial - YouTube","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/scaling-optimizations":{"id":"databases/sql-databases/mysql/scaling-optimizations","title":"Scaling / Optimizations","description":"What exactly needs to Scale?","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/server-sql-modes":{"id":"databases/sql-databases/mysql/server-sql-modes","title":"Server SQL Modes","description":"The MySQL server can operate in different SQL modes, and can apply these modes differently for different clients, depending on the value of the\xa0sqlmode\xa0system variable. DBAs can set the global SQL mode to match site server operating requirements, and each application can set its session SQL mode to its own requirements.","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/sql-mysql-tools":{"id":"databases/sql-databases/mysql/sql-mysql-tools","title":"SQL / MySQL Tools","description":"Monitoring","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/thread-states":{"id":"databases/sql-databases/mysql/thread-states","title":"Thread States","description":"The following list describes thread\xa0State\xa0values that are associated with general query processing and not more specialized activities such as replication. Many of these are useful only for finding bugs in the server.","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/transaction-commit-rollback":{"id":"databases/sql-databases/mysql/transaction-commit-rollback","title":"Trasaction / Commit / Rollback","description":"- 13.3 Transactional and Locking Statements","sidebar":"tutorialSidebar"},"databases/sql-databases/normalization":{"id":"databases/sql-databases/normalization","title":"Normalization","description":"- Normalization is the process of organizing the data in the database.","sidebar":"tutorialSidebar"},"databases/sql-databases/partitioning-sharding":{"id":"databases/sql-databases/partitioning-sharding","title":"Partitioning / Sharding","description":"Partitioning / Sharding Data","sidebar":"tutorialSidebar"},"databases/sql-databases/postgres/architecture":{"id":"databases/sql-databases/postgres/architecture","title":"Architecture","description":"PostgreSQL uses processes in their internal architecture. It has been a topic of debate whether going to threads are better or not, but meanwhile I think it is a good idea to understand all these processes and what they do. Let us go through them","sidebar":"tutorialSidebar"},"databases/sql-databases/postgres/documentation":{"id":"databases/sql-databases/postgres/documentation","title":"Documentation","description":"Preface","sidebar":"tutorialSidebar"},"databases/sql-databases/postgres/indexes":{"id":"databases/sql-databases/postgres/indexes","title":"Indexes in Postgres","description":"PostgreSQL 16: Chapter\xa011.\xa0Indexes","sidebar":"tutorialSidebar"},"databases/sql-databases/postgres/others":{"id":"databases/sql-databases/postgres/others","title":"Others","description":"Postgres Extensions","sidebar":"tutorialSidebar"},"databases/sql-databases/postgres/parameters-configuration-optimization":{"id":"databases/sql-databases/postgres/parameters-configuration-optimization","title":"Parameters / Configurations / Optimizations","description":"Variables","sidebar":"tutorialSidebar"},"databases/sql-databases/postgres/readme":{"id":"databases/sql-databases/postgres/readme","title":"Postgres","description":"- Postgres Documentation","sidebar":"tutorialSidebar"},"databases/sql-databases/postgres/replication":{"id":"databases/sql-databases/postgres/replication","title":"Replication","description":"Types","sidebar":"tutorialSidebar"},"databases/sql-databases/postgres/table-partitioning":{"id":"databases/sql-databases/postgres/table-partitioning","title":"Table Partitioning","description":"PostgreSQL 15: 5.11. Table Partitioning","sidebar":"tutorialSidebar"},"databases/sql-databases/rdbms":{"id":"databases/sql-databases/rdbms","title":"RDBMS","description":"A relational databaseis a database that organizes information into one or more tables. Here, the relational database contains one table.","sidebar":"tutorialSidebar"},"databases/sql-databases/readme":{"id":"databases/sql-databases/readme","title":"SQL Databases","description":"- RDBMS","sidebar":"tutorialSidebar"},"decentralized-applications/blockchain":{"id":"decentralized-applications/blockchain","title":"Blockchain","description":"Inventor - Satoshi Nakamoto","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/bip39":{"id":"decentralized-applications/coins-tokens-chains/bip39","title":"BIP39","description":"BIP39 Wallet","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/bitcoin":{"id":"decentralized-applications/coins-tokens-chains/bitcoin","title":"Bitcoin","description":"- Bitcoin (2008): first combination of proof-of-work / distributed ledger / hashchain","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/bnb":{"id":"decentralized-applications/coins-tokens-chains/bnb","title":"BNB","description":"Launched in July 2017, Binance is the biggest cryptocurrency exchange globally based on daily trading volume. Binance aims to bring cryptocurrency exchanges to the forefront of financial activity globally. The idea behind Binance\u2019s name is to show this new paradigm in global finance - Binary Finance, or Binance.","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/cardano":{"id":"decentralized-applications/coins-tokens-chains/cardano","title":"Cardano","description":"Cardano is a proof-of-stake blockchain platform: the first to be founded on peer-reviewed research and developed through evidence-based methods. It combines pioneering technologies to provide unparalleled security and sustainability to decentralized applications, systems, and societies.","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/celestia":{"id":"decentralized-applications/coins-tokens-chains/celestia","title":"Celestia","description":"A scalable modular blockchain network built for data availability and consensus","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/coin-token-intro":{"id":"decentralized-applications/coins-tokens-chains/coin-token-intro","title":"Tokens","description":"Tokens\u2019 key benefits","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/dai":{"id":"decentralized-applications/coins-tokens-chains/dai","title":"DAI","description":"Governed by the MakerDAO and Maker Protocol","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/dtokens":{"id":"decentralized-applications/coins-tokens-chains/dtokens","title":"dtokens","description":"What Are Decentralized Assets And How do They Work?","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/dual-token-economy":{"id":"decentralized-applications/coins-tokens-chains/dual-token-economy","title":"Dual-Token Economy/Model","description":"Two-Token Economy","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/litecoin":{"id":"decentralized-applications/coins-tokens-chains/litecoin","title":"Litecoin","description":"Litecoin is one of the first cryptocurrencies created after Bitcoin and still strives to be the silver to Bitcoin\'s gold.","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/near-protocol":{"id":"decentralized-applications/coins-tokens-chains/near-protocol","title":"Near Protocol","description":"What Is NEAR Protocol (NEAR)?","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/nft-non-fungible-tokens":{"id":"decentralized-applications/coins-tokens-chains/nft-non-fungible-tokens","title":"NFT (Non Fungible Tokens)","description":"Fungible","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/ordinals":{"id":"decentralized-applications/coins-tokens-chains/ordinals","title":"Ordinals","description":"Ordinals are NFTs that you can mint on the Bitcoin blockchain.","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/readme":{"id":"decentralized-applications/coins-tokens-chains/readme","title":"Coins / Tokens / Chains","description":"- Coin Token Intro","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/stable-coins":{"id":"decentralized-applications/coins-tokens-chains/stable-coins","title":"Stable Coins","description":"USDT vs. USDC vs. BUSD: What are the similarities and differences?","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/thorchain":{"id":"decentralized-applications/coins-tokens-chains/thorchain","title":"ThorChain","description":"THORChain is a settlement layer that facilitates swaps between Bitcoin, Ethereum, BNB Chain, Avalanche, Cosmos Hub, Dogecoin, Bitcoin Cash, Litecoin","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/uniswap":{"id":"decentralized-applications/coins-tokens-chains/uniswap","title":"Uniswap","description":"A Short Story of UNISWAP and UNI Token. DEFI Explained - YouTube","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/usdc":{"id":"decentralized-applications/coins-tokens-chains/usdc","title":"USDC","description":"What is USDC?","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/usdt":{"id":"decentralized-applications/coins-tokens-chains/usdt","title":"USDT","description":"What is USDT?","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/vechain":{"id":"decentralized-applications/coins-tokens-chains/vechain","title":"Vechain","description":"VECHAINTHOR","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/wallets":{"id":"decentralized-applications/coins-tokens-chains/wallets","title":"Wallets","description":"not your keys, not your crypto","sidebar":"tutorialSidebar"},"decentralized-applications/consensus-protocols":{"id":"decentralized-applications/consensus-protocols","title":"Consensus Protocols","description":"Proof of Work (PoW)","sidebar":"tutorialSidebar"},"decentralized-applications/crypto-exchanges":{"id":"decentralized-applications/crypto-exchanges","title":"Crypto Exchanges","description":"Decentralized Exchange (DEX)","sidebar":"tutorialSidebar"},"decentralized-applications/crypto-future":{"id":"decentralized-applications/crypto-future","title":"Crypto Future","description":"Pros","sidebar":"tutorialSidebar"},"decentralized-applications/crypto-investing":{"id":"decentralized-applications/crypto-investing","title":"Crypto Investing","description":"- Don\'t buy it, mine it","sidebar":"tutorialSidebar"},"decentralized-applications/crypto-news":{"id":"decentralized-applications/crypto-news","title":"Crypto News","description":"- crypto winter","sidebar":"tutorialSidebar"},"decentralized-applications/defi":{"id":"decentralized-applications/defi","title":"DeFi","description":"You can hide and cross borders with, that gives you access to your own private offworld bank account","sidebar":"tutorialSidebar"},"decentralized-applications/defi-apps":{"id":"decentralized-applications/defi-apps","title":"DeFi Apps","description":"Liquidity Mining","sidebar":"tutorialSidebar"},"decentralized-applications/development/infura":{"id":"decentralized-applications/development/infura","title":"Infura","description":"Get the current block number","sidebar":"tutorialSidebar"},"decentralized-applications/development/readme":{"id":"decentralized-applications/development/readme","title":"Development Tools","description":"- Infura","sidebar":"tutorialSidebar"},"decentralized-applications/development/sample-code":{"id":"decentralized-applications/development/sample-code","title":"Sample Code","description":"Use Python | INFURA","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/01-intro-to-ethereum":{"id":"decentralized-applications/ethereum/01-intro-to-ethereum","title":"Intro to Ethereum","description":"What is a Blockchain?","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/02-intro-to-ether":{"id":"decentralized-applications/ethereum/02-intro-to-ether","title":"Intro to Ether","description":"What is a cryptocurrency?","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/03-intro-to-dapps":{"id":"decentralized-applications/ethereum/03-intro-to-dapps","title":"Intro to Dapps","description":"A decentralized application (dapp) is an application built on a decentralized network that combines a smart contract and a frontend user interface. On Ethereum, smart contracts are accessible and transparent - like open APIs - so your dapp can even include a smart contract that someone else has written.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/05-accounts":{"id":"decentralized-applications/ethereum/05-accounts","title":"Ethereum Accounts","description":"Where ETH is stored. Users can initialize accounts, deposit ETH into the accounts, and transfer ETH from their accounts to other users. Accounts and account balances are stored in a big table in the EVM; they are a part of the overall EVM state.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/06-transactions":{"id":"decentralized-applications/ethereum/06-transactions","title":"Transactions","description":"Transactions are cryptographically signed instructions from accounts. An account will initiate a transaction to update the state of the Ethereum network. The simplest transaction is transferring ETH from one account to another.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/07-blocks":{"id":"decentralized-applications/ethereum/07-blocks","title":"Blocks","description":"Blocks are batches of transactions with a hash of the previous block in the chain. This links blocks together (in a chain) because hashes are cryptographically derived from the block data. This prevents fraud, because one change in any block in history would invalidate all the following blocks as all subsequent hashes would change and everyone running the blockchain would notice.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/08-evm":{"id":"decentralized-applications/ethereum/08-evm","title":"EVM - Ethereum Virtual Machine","description":"The EVM\u2019s physical instantiation can\u2019t be described in the same way that one might point to a cloud or an ocean wave, but it does exist as one single entity maintained by thousands of connected computers running an Ethereum client.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/09-gas":{"id":"decentralized-applications/ethereum/09-gas","title":"Gas","description":"Gas is essential to the Ethereum network. It is the fuel that allows it to operate, in the same way that a car needs gasoline to run.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/10-nodes-and-clients":{"id":"decentralized-applications/ethereum/10-nodes-and-clients","title":"Nodes and Clients","description":"A \\"node\\" is any instance of Ethereum client software that is connected to other computers also running Ethereum software, forming a network. A client is an implementation of Ethereum that verifies data against the protocol rules and keeps the network secure.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/30-bridges":{"id":"decentralized-applications/ethereum/30-bridges","title":"Bridges","description":"With the proliferation of L1 blockchains and L2 scaling solutions, alongside an ever-growing number of decentralized applications going cross-chain, the need for communication and asset movement across chains has become an essential part of network infrastructure. Different types of bridges exist to help make this possible.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/40-proof-of-stake":{"id":"decentralized-applications/ethereum/40-proof-of-stake","title":"Proof of Stake","description":"Proof-of-stake (PoS) | ethereum.org","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/41-rewards-and-penalties":{"id":"decentralized-applications/ethereum/41-rewards-and-penalties","title":"Rewards and Penalties","description":"There are two primary roles for a validator: 1) checking new blocks and \u201cattesting\u201d to them if they are valid, 2) proposing new blocks when selected at random from the total validator pool. If the validator fails to do either of these tasks when asked they miss out on an ether payout. Validators are also sometimes tasked with signature aggregation and participating in sync committees.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/42-block-proposals":{"id":"decentralized-applications/ethereum/42-block-proposals","title":"Block Proposals","description":"WHO PRODUCES BLOCKS?","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/arbitrum":{"id":"decentralized-applications/ethereum/arbitrum","title":"Arbitrum","description":"Arbitrum is currently the fourth-largest blockchain in terms of the total value locked (TVL) into its decentralized finance (DeFi) ecosystem","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/dao":{"id":"decentralized-applications/ethereum/dao","title":"DAO","description":"- DAO - Decentralized Autonomous Organization","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/erc-4337":{"id":"decentralized-applications/ethereum/erc-4337","title":"ERC-4337","description":"It\u2019s a new Ethereum upgrade that went live Feb-March 2023.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/ethereum-intro":{"id":"decentralized-applications/ethereum/ethereum-intro","title":"Ethereum","description":"Ethereum is a decentralized platform that runs smart contracts: applications that run exactly as programmed without any possibility of downtime, censorship, fraud or third-party interference.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/ethereum-staking":{"id":"decentralized-applications/ethereum/ethereum-staking","title":"Ethereum Staking","description":"Why did Ethereum switch to PoS?","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/etherjs":{"id":"decentralized-applications/ethereum/etherjs","title":"Etherjs","description":"etherjs-cheatsheet","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/layer-2-protocols":{"id":"decentralized-applications/ethereum/layer-2-protocols","title":"Layer 2 Protocols","description":"In the context of blockchain, a \\"layer 2\\" refers to a secondary protocol or technology built on top of a primary blockchain, which provides additional functionality or scalability solutions while relying on the security of the underlying blockchain.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/others":{"id":"decentralized-applications/ethereum/others","title":"Others","description":"The Hitchhiker\'s Guide to Ethereum - Delphi Digital","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/polygon":{"id":"decentralized-applications/ethereum/polygon","title":"Polygon","description":"Polygon, previously known as Matic Network, is a layer-2 scaling solution for the Ethereum blockchain. It aims to improve the scalability and performance of the Ethereum network by providing faster and cheaper transactions through its own infrastructure.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/readme":{"id":"decentralized-applications/ethereum/readme","title":"Ethereum","description":"- Ethereum Intro","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/solidity":{"id":"decentralized-applications/ethereum/solidity","title":"Solidity","description":"image","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/upgrades":{"id":"decentralized-applications/ethereum/upgrades","title":"Upgrades","description":"Ethereum vision | ethereum.org","sidebar":"tutorialSidebar"},"decentralized-applications/intro":{"id":"decentralized-applications/intro","title":"Intro","description":"1. Centralized","sidebar":"tutorialSidebar"},"decentralized-applications/key-concepts":{"id":"decentralized-applications/key-concepts","title":"Key Concepts","description":"Web3 Architecture","sidebar":"tutorialSidebar"},"decentralized-applications/liquidity-mining":{"id":"decentralized-applications/liquidity-mining","title":"Liquidity Mining","description":"Liquidity mining is a process in decentralized finance (DeFi) that incentivizes users to provide liquidity to a liquidity pool by rewarding them with cryptocurrency tokens. Liquidity pools are used to facilitate decentralized trading and allow users to trade cryptocurrencies without relying on centralized exchanges.","sidebar":"tutorialSidebar"},"decentralized-applications/on-chain-analytics":{"id":"decentralized-applications/on-chain-analytics","title":"On-Chain Analytics","description":"On-chain metrics turn blockchain-based transaction data into actionable crypto market insights.","sidebar":"tutorialSidebar"},"decentralized-applications/others":{"id":"decentralized-applications/others","title":"Others","description":"IPFS (InterPlanatery File System)","sidebar":"tutorialSidebar"},"decentralized-applications/readme":{"id":"decentralized-applications/readme","title":"Decentralized Applications","description":"- Intro","sidebar":"tutorialSidebar"},"decentralized-applications/references-learning":{"id":"decentralized-applications/references-learning","title":"References / Learning","description":"Courses / Learning","sidebar":"tutorialSidebar"},"decentralized-applications/tokenomics":{"id":"decentralized-applications/tokenomics","title":"Tokenomics","description":"The thing that I think is more interesting, personally, is that there are different fundamentals in crypto. The underlying elements that make a cryptocurrency valuable, from a token\u2019s supply to how it\u2019s issued to if it is designed to be inflationary or deflationary to its utility all come together to create what\u2019s known as its tokenomics, a portmanteau of token + economics.","sidebar":"tutorialSidebar"},"decentralized-applications/tools":{"id":"decentralized-applications/tools","title":"Tools","description":"The future of decentralized finance lies in the hands of those who dare to challenge the status quo.","sidebar":"tutorialSidebar"},"decentralized-applications/trilemmas":{"id":"decentralized-applications/trilemmas","title":"Trilemma","description":"The Scalability Trilemma / Blockchain Trilemma","sidebar":"tutorialSidebar"},"devops/ansible/commands":{"id":"devops/ansible/commands","title":"Commands","description":"Final Commands","sidebar":"tutorialSidebar"},"devops/ansible/readme":{"id":"devops/ansible/readme","title":"Ansible","description":"Features","sidebar":"tutorialSidebar"},"devops/devops-intro/application-management":{"id":"devops/devops-intro/application-management","title":"Application Management","description":"Application management\xa0provides a wide variety of application services, processes and methodologies for maintaining, enhancing and managing custom applications, packaged software applications or network-delivered applications.","sidebar":"tutorialSidebar"},"devops/devops-intro/chaos-engineering":{"id":"devops/devops-intro/chaos-engineering","title":"Chaos Engineering","description":"Chaos Engineering is the discipline of experimenting on a system in order to build confidence in the system\'s capability to withstand turbulent conditions in production.","sidebar":"tutorialSidebar"},"devops/devops-intro/concepts":{"id":"devops/devops-intro/concepts","title":"Concepts","description":"Container Orchestration Systems - to provide a higher level of deployment infrastructure abstraction, and evolution of continuous delivery systems such as GoCD to build, test and deploy microservices as containers","sidebar":"tutorialSidebar"},"devops/devops-intro/deployment-strategies":{"id":"devops/devops-intro/deployment-strategies","title":"Deployment Strategies","description":"image","sidebar":"tutorialSidebar"},"devops/devops-intro/design":{"id":"devops/devops-intro/design","title":"Design","description":"How do you design a self-healing distributed service?","sidebar":"tutorialSidebar"},"devops/devops-intro/disaster-recovery":{"id":"devops/devops-intro/disaster-recovery","title":"Disaster Recovery","description":"RTO - Recovery Time Objective","sidebar":"tutorialSidebar"},"devops/devops-intro/distributed-tracing":{"id":"devops/devops-intro/distributed-tracing","title":"Distributed Tracing","description":"Distributed tracing, also called distributed request tracing, is a method used to profile and monitor applications, especially those built using a microservices architecture. Distributed tracing helps pinpoint where failures occur and what causes poor performance.","sidebar":"tutorialSidebar"},"devops/devops-intro/dora-metrics":{"id":"devops/devops-intro/dora-metrics","title":"DORA Metrics","description":"The\xa0DevOps Research and Assessment (DORA)\xa0team has identified four key metrics that indicate the performance of a software development team:","sidebar":"tutorialSidebar"},"devops/devops-intro/feature-toggles-flags":{"id":"devops/devops-intro/feature-toggles-flags","title":"Feature Toggles / Flags","description":"A feature toggle (also feature switch, feature flag, feature flipper, conditional feature, etc.) is a technique in software development that attempts to provide an alternative to maintaining multiple source-code branches (known as feature branches), such that a feature can be tested even before it is completed and ready for release. Feature toggle is used to hide, enable or disable the feature during run time. For example, during the development process, a developer can enable the feature for testing and disable it for other users.","sidebar":"tutorialSidebar"},"devops/devops-intro/finops":{"id":"devops/devops-intro/finops","title":"FinOps","description":"FinOps (or cloud FinOps) is an evolving cloud financial management discipline and cultural practice that aims to maximize business value in hybrid and multicloud environments.","sidebar":"tutorialSidebar"},"devops/devops-intro/gitops":{"id":"devops/devops-intro/gitops","title":"GitOps","description":"GitOps is a way of implementing Continuous Deployment for cloud native applications. It focuses on a developer-centric experience when operating infrastructure, by using tools developers are already familiar with, including Git and Continuous Deployment tools.","sidebar":"tutorialSidebar"},"devops/devops-intro/high-availability":{"id":"devops/devops-intro/high-availability","title":"High Availability","description":"The concept of high availability originated in the 1960s and 1970s with early military and financial computing systems that needed to be reliable and fault tolerant.","sidebar":"tutorialSidebar"},"devops/devops-intro/infra-as-code-iac":{"id":"devops/devops-intro/infra-as-code-iac","title":"Infra as Code IaC","description":"Infrastructure as Code (IaC) is a paradigm that manages and tracks infrastructure configuration in files rather than manually or graphical user interfaces. This allows for more scalable infrastructure configuration and more importantly allows for transparent tracking of changes through usually versioning system","sidebar":"tutorialSidebar"},"devops/devops-intro/intro":{"id":"devops/devops-intro/intro","title":"Intro","description":"DRI - Designated Response Individuals","sidebar":"tutorialSidebar"},"devops/devops-intro/load-balancer":{"id":"devops/devops-intro/load-balancer","title":"Load Balancer","description":"In computing, load balancing improves the distribution of workloads across multiple computing resources, such as computers, a computer cluster, network links, central processing units, or disk drives. Load balancing aims to optimize resource use, maximize throughput, minimize response time, and avoid overload of any single resource. Using multiple components with load balancing instead of a single component may increase reliability and availability through redundancy. Load balancing usually involves dedicated software or hardware, such as a multilayer switch or a Domain Name System server process.","sidebar":"tutorialSidebar"},"devops/devops-intro/load-balancer-features":{"id":"devops/devops-intro/load-balancer-features","title":"Load Balancer Features","description":"Service discovery","sidebar":"tutorialSidebar"},"devops/devops-intro/load-balancer-tools":{"id":"devops/devops-intro/load-balancer-tools","title":"Tools","description":"Cheatsheet","sidebar":"tutorialSidebar"},"devops/devops-intro/load-balancing-algorithms":{"id":"devops/devops-intro/load-balancing-algorithms","title":"Load Balancing Algorithms","description":"Round Robin","sidebar":"tutorialSidebar"},"devops/devops-intro/others":{"id":"devops/devops-intro/others","title":"Others","description":"Resource Estimation/Capacity Planning","sidebar":"tutorialSidebar"},"devops/devops-intro/platform-engineering":{"id":"devops/devops-intro/platform-engineering","title":"Platform Engineering","description":"Platform engineering is the discipline of designing and building toolchains and workflows that enable self-service capabilities for software engineering organizations in the cloud-native era. Platform engineers provide an integrated product most often referred to as an \u201cInternal Developer Platform\u201d covering the operational necessities of the entire lifecycle of an application. An\xa0Internal Developer Platform (IDP)\xa0encompasses a variety of technologies and tools, integrated in a manner that reduces cognitive load on developers while retaining essential context and underlying technologies. It helps operations structure their setup and enable developer self-service. Platform engineering done right means providing golden paths and paved roads that match the preferred abstraction level of the individual developer, who interacts with the IDP.","sidebar":"tutorialSidebar"},"devops/devops-intro/proxy":{"id":"devops/devops-intro/proxy","title":"Proxy","description":"The initial use case for the proxy is just load balancing: spread the incoming requests across the active set of pods. In addition to making the service IP highly available, this also enables splitting traffic across versions for canary testing and more generally for A/B testing. It is also the mechanism used for a progressive rollout of a new version.","sidebar":"tutorialSidebar"},"devops/devops-intro/readme":{"id":"devops/devops-intro/readme","title":"DevOps","description":"- Intro","sidebar":"tutorialSidebar"},"devops/devops-intro/sre-site-reliability-engineering":{"id":"devops/devops-intro/sre-site-reliability-engineering","title":"SRE (Site Reliability Engineering)","description":"SRE is a method that operates through principles. Instead of prescribing specific solutions, it guides you with best practices. These SRE principles help organizations decide what\'s best for them. Once you understand the principles, you can apply them in many areas. When considering a new policy or procedure, you can judge it in the context of these principles.","sidebar":"tutorialSidebar"},"devops/docker/concepts":{"id":"devops/docker/concepts","title":"Concepts","description":"Namespaces","sidebar":"tutorialSidebar"},"devops/docker/containers":{"id":"devops/docker/containers","title":"Containers","description":"A container runtime is the component which runs the containerized application upon request. Docker Engine remains the default for Kubernetes, though CRI-O and others are gaining community support.","sidebar":"tutorialSidebar"},"devops/docker/docker-commands":{"id":"devops/docker/docker-commands","title":"Docker Commands","description":"Installation","sidebar":"tutorialSidebar"},"devops/docker/docker-compose":{"id":"devops/docker/docker-compose","title":"docker-compose","description":"Commands","sidebar":"tutorialSidebar"},"devops/docker/docker-compose-example":{"id":"devops/docker/docker-compose-example","title":"docker-compose example","description":"","sidebar":"tutorialSidebar"},"devops/docker/dockerfile-example":{"id":"devops/docker/dockerfile-example","title":"Dockerfile example","description":"GitHub - irbigdata/data-dockerfiles: a curated list of docker-compose files prepared for testing data engineering tools, databases and open source libraries.","sidebar":"tutorialSidebar"},"devops/docker/dockerfiles":{"id":"devops/docker/dockerfiles","title":"Dockerfiles","description":"Creating portable images","sidebar":"tutorialSidebar"},"devops/docker/intro":{"id":"devops/docker/intro","title":"Intro","description":"Docker is a tool for deploying isolated, or containerized, applications. Docker containers are similar to virtual machines in a sense, but much more lightweight both in size and resource consumption.","sidebar":"tutorialSidebar"},"devops/docker/networking":{"id":"devops/docker/networking","title":"Networking","description":"Container Networking Model CNM","sidebar":"tutorialSidebar"},"devops/docker/others":{"id":"devops/docker/others","title":"Others","description":"Dive","sidebar":"tutorialSidebar"},"devops/docker/readme":{"id":"devops/docker/readme","title":"Docker","description":"- Intro","sidebar":"tutorialSidebar"},"devops/docker/service-configuration-reference":{"id":"devops/docker/service-configuration-reference","title":"Service Configuration Reference","description":"build - Configuration options that are applied at build time","sidebar":"tutorialSidebar"},"devops/docker/stack-swarm":{"id":"devops/docker/stack-swarm","title":"Stack / Swarm","description":"Defines the interactions of all the services.","sidebar":"tutorialSidebar"},"devops/ides/jupyter-jupyterlab-notebook/readme":{"id":"devops/ides/jupyter-jupyterlab-notebook/readme","title":"Jupyter / Jupyterlab / notebook","description":"Overview","sidebar":"tutorialSidebar"},"devops/ides/jupyter-jupyterlab-notebook/template":{"id":"devops/ides/jupyter-jupyterlab-notebook/template","title":"Template","description":"","sidebar":"tutorialSidebar"},"devops/ides/jupyter-jupyterlab-notebook/tools":{"id":"devops/ides/jupyter-jupyterlab-notebook/tools","title":"Tools","description":"https://sqlnotebook.com","sidebar":"tutorialSidebar"},"devops/ides/mac":{"id":"devops/ides/mac","title":"Mac","description":"Shortcuts","sidebar":"tutorialSidebar"},"devops/ides/medium-blogging":{"id":"devops/ides/medium-blogging","title":"Medium Blogging","description":"You have reached the pay-walled version of this article. You can read it absolutely for free on my blog, however.","sidebar":"tutorialSidebar"},"devops/ides/obsidian":{"id":"devops/ides/obsidian","title":"Obsidian","description":"Obsidian is a powerful and extensible knowledge base that works on top of your local folder of plain text files.","sidebar":"tutorialSidebar"},"devops/ides/obsidian-in-vscode":{"id":"devops/ides/obsidian-in-vscode","title":"Obsidian + VS Code","description":"Extension - Foam","sidebar":"tutorialSidebar"},"devops/ides/onenote":{"id":"devops/ides/onenote","title":"OneNote","description":"Shortcut Mac","sidebar":"tutorialSidebar"},"devops/ides/others":{"id":"devops/ides/others","title":"Others","description":"Google Meet","sidebar":"tutorialSidebar"},"devops/ides/pycharm":{"id":"devops/ides/pycharm","title":"PyCharm","description":"Shortcuts Mac","sidebar":"tutorialSidebar"},"devops/ides/readme":{"id":"devops/ides/readme","title":"IDEs","description":"- VSCode / VS Code","sidebar":"tutorialSidebar"},"devops/ides/spyder":{"id":"devops/ides/spyder","title":"Spyder","description":"Here you can get help of any object by pressingCmd+Iin front of it, either on the Editor or the Console.","sidebar":"tutorialSidebar"},"devops/ides/vscode-vs-code":{"id":"devops/ides/vscode-vs-code","title":"VSCode / VS Code","description":"Remove empty lines - Regex - ^(s)*$","sidebar":"tutorialSidebar"},"devops/kubernetes/api-resources":{"id":"devops/kubernetes/api-resources","title":"api-resources","description":"Namespaces","sidebar":"tutorialSidebar"},"devops/kubernetes/architecture":{"id":"devops/kubernetes/architecture","title":"Architecture","description":"Kubernetes Architecture","sidebar":"tutorialSidebar"},"devops/kubernetes/cluster-administration/logging-architecture":{"id":"devops/kubernetes/cluster-administration/logging-architecture","title":"Logging Architecture","description":"The easiest and most embraced logging method for containerized applications is to write to the standard output and standard error streams.","sidebar":"tutorialSidebar"},"devops/kubernetes/cluster-administration/others":{"id":"devops/kubernetes/cluster-administration/others","title":"Others","description":"Kubernetes Network Model","sidebar":"tutorialSidebar"},"devops/kubernetes/cluster-administration/readme":{"id":"devops/kubernetes/cluster-administration/readme","title":"Cluster Administration","description":"1. Cluster Administration Overview","sidebar":"tutorialSidebar"},"devops/kubernetes/concepts-and-overview/configuration/readme":{"id":"devops/kubernetes/concepts-and-overview/configuration/readme","title":"Configuration","description":"- Configuration Best Practices","sidebar":"tutorialSidebar"},"devops/kubernetes/concepts-and-overview/configuration/secrets":{"id":"devops/kubernetes/concepts-and-overview/configuration/secrets","title":"Secrets","description":"Kubernetes Secrets let you store and manage sensitive information, such as passwords, OAuth tokens, and ssh keys. Storing confidential information in a Secret is safer and more flexible than putting it verbatim in a Pod definition or in a container image.","sidebar":"tutorialSidebar"},"devops/kubernetes/concepts-and-overview/policies":{"id":"devops/kubernetes/concepts-and-overview/policies","title":"Policies","description":"Limit Ranges","sidebar":"tutorialSidebar"},"devops/kubernetes/concepts-and-overview/readme":{"id":"devops/kubernetes/concepts-and-overview/readme","title":"Concepts & Overview","description":"Kubernetes Objects","sidebar":"tutorialSidebar"},"devops/kubernetes/configuration":{"id":"devops/kubernetes/configuration","title":"Configuration","description":"Pod Priority and Preemtion","sidebar":"tutorialSidebar"},"devops/kubernetes/design-patterns":{"id":"devops/kubernetes/design-patterns","title":"Design Patterns","description":"Foundational Patterns","sidebar":"tutorialSidebar"},"devops/kubernetes/helm":{"id":"devops/kubernetes/helm","title":"Helm","description":"The package manager for Kubernetes","sidebar":"tutorialSidebar"},"devops/kubernetes/intro":{"id":"devops/kubernetes/intro","title":"Intro","description":"One liner - Kubernetes/Mesos - software tools to manage and coordinate containers","sidebar":"tutorialSidebar"},"devops/kubernetes/keda":{"id":"devops/kubernetes/keda","title":"KEDA","description":"Kubernetes Event-driven Autoscaling","sidebar":"tutorialSidebar"},"devops/kubernetes/kubectl-commands":{"id":"devops/kubernetes/kubectl-commands","title":"kubectl Commands","description":"Debugging","sidebar":"tutorialSidebar"},"devops/kubernetes/kubeedge":{"id":"devops/kubernetes/kubeedge","title":"KubeEdge","description":"KubeEdge is an open source system for extending native containerized application orchestration capabilities to hosts at Edge.It is built upon kubernetes and provides fundamental infrastructure support for network, app. deployment and metadata synchronization between cloud and edge. It also supportsMQTTand allows developers to author custom logic and enable resource constrained device communication at the Edge. KubeEdge consists of a cloud part and an edge part.","sidebar":"tutorialSidebar"},"devops/kubernetes/kubernetes-manifests-examples":{"id":"devops/kubernetes/kubernetes-manifests-examples","title":"Kubernetes Manifests Examples","description":"Resource Schema Components (Manifests)","sidebar":"tutorialSidebar"},"devops/kubernetes/operators":{"id":"devops/kubernetes/operators","title":"Operators","description":"https://operatorhub.io","sidebar":"tutorialSidebar"},"devops/kubernetes/optimizations":{"id":"devops/kubernetes/optimizations","title":"Optimizations","description":"Reserving Resources For The System and Kubelet","sidebar":"tutorialSidebar"},"devops/kubernetes/others":{"id":"devops/kubernetes/others","title":"Others","description":"Pricing","sidebar":"tutorialSidebar"},"devops/kubernetes/outline-documentation":{"id":"devops/kubernetes/outline-documentation","title":"Outline Documentation","description":"1. Overview","sidebar":"tutorialSidebar"},"devops/kubernetes/readme":{"id":"devops/kubernetes/readme","title":"Kubernetes","description":"- Intro","sidebar":"tutorialSidebar"},"devops/kubernetes/reference/quality-of-service-qos":{"id":"devops/kubernetes/reference/quality-of-service-qos","title":"Quality of Service (QoS)","description":"CPU requests are made in CPU units, each unit being a millicore / millicpu, using mille - the Latin word for thousand. Thus a request for .7 of a CPU would be 700 millicore.","sidebar":"tutorialSidebar"},"devops/kubernetes/reference/rbac":{"id":"devops/kubernetes/reference/rbac","title":"RBAC","description":"image","sidebar":"tutorialSidebar"},"devops/kubernetes/reference/readme":{"id":"devops/kubernetes/reference/readme","title":"Reference","description":"Admission Controllers","sidebar":"tutorialSidebar"},"devops/kubernetes/services-loadbalancing-and-networking/ingress":{"id":"devops/kubernetes/services-loadbalancing-and-networking/ingress","title":"Ingress","description":"An API object that manages external access to the services in a cluster, typically HTTP.","sidebar":"tutorialSidebar"},"devops/kubernetes/services-loadbalancing-and-networking/others":{"id":"devops/kubernetes/services-loadbalancing-and-networking/others","title":"Others","description":"DNS for services and pods","sidebar":"tutorialSidebar"},"devops/kubernetes/services-loadbalancing-and-networking/readme":{"id":"devops/kubernetes/services-loadbalancing-and-networking/readme","title":"Services, LoadBalancing and Networking","description":"1. Services","sidebar":"tutorialSidebar"},"devops/kubernetes/services-loadbalancing-and-networking/services":{"id":"devops/kubernetes/services-loadbalancing-and-networking/services","title":"Services","description":"A Kubernetes Service is an abstraction which defines a logical set of Pods and a policy by which to access them - sometimes called a microservice.","sidebar":"tutorialSidebar"},"devops/kubernetes/storage":{"id":"devops/kubernetes/storage","title":"Storage","description":"1. Volumes","sidebar":"tutorialSidebar"},"devops/kubernetes/tasks":{"id":"devops/kubernetes/tasks","title":"Tasks","description":"Monitoring, Logging and Debugging","sidebar":"tutorialSidebar"},"devops/kubernetes/tools":{"id":"devops/kubernetes/tools","title":"Tools","description":"https://devops-stack.io","sidebar":"tutorialSidebar"},"devops/kubernetes/tools-scaling":{"id":"devops/kubernetes/tools-scaling","title":"Kubernetes Scaling Tools","description":"Kubernetes Autoscaler","sidebar":"tutorialSidebar"},"devops/kubernetes/tools-serverless":{"id":"devops/kubernetes/tools-serverless","title":"Serverless Tools","description":"- OpenFaas: Offers Docker and Kubernetes support with an active community. Managed with faas-cli, it uses Prometheus for metrics and offers prebuilt triggers and runtimes. Installation via Brew and deployment to Kubernetes using Helm or raw YAML.","sidebar":"tutorialSidebar"},"devops/kubernetes/troubleshooting":{"id":"devops/kubernetes/troubleshooting","title":"Troubleshooting","description":"Linux BPF CPU Profiling with kubectl on Microsoft Azure Kubernetes (AKS)","sidebar":"tutorialSidebar"},"devops/kubernetes/workloads/controllers":{"id":"devops/kubernetes/workloads/controllers","title":"Controllers","description":"Controllers / Operators","sidebar":"tutorialSidebar"},"devops/kubernetes/workloads/others":{"id":"devops/kubernetes/workloads/others","title":"Others","description":"Disruptions","sidebar":"tutorialSidebar"},"devops/kubernetes/workloads/pod-lifecycle":{"id":"devops/kubernetes/workloads/pod-lifecycle","title":"Pod Lifecycle","description":"- Pod phase","sidebar":"tutorialSidebar"},"devops/kubernetes/workloads/pods":{"id":"devops/kubernetes/workloads/pods","title":"Pods","description":"A Pod is the basic building block of Kubernetes -- the smallest and simplest unit in the Kubernetes object model that you create or deploy. A Pod represents a running process on your cluster.","sidebar":"tutorialSidebar"},"devops/kubernetes/workloads/readme":{"id":"devops/kubernetes/workloads/readme","title":"Workloads","description":"1. Pods","sidebar":"tutorialSidebar"},"devops/monitoring/grafana":{"id":"devops/monitoring/grafana","title":"Grafana","description":"The open platform for beautiful analytics and monitoring (open source software for time series analytics) (Expression browser)","sidebar":"tutorialSidebar"},"devops/monitoring/grafana-loki":{"id":"devops/monitoring/grafana-loki","title":"Grafana Loki","description":"Loki is a horizontally-scalable, highly-available, multi-tenant log aggregation system inspired by Prometheus. It is designed to be very cost effective and easy to operate. It does not index the contents of the logs, but rather a set of labels for each log stream.","sidebar":"tutorialSidebar"},"devops/monitoring/graphite":{"id":"devops/monitoring/graphite","title":"Graphite","description":"Graphite does two things","sidebar":"tutorialSidebar"},"devops/monitoring/istio/architecture":{"id":"devops/monitoring/istio/architecture","title":"Architecture","description":"Istio works by having a small network proxy sit alongside each microservice. This so-called \\"sidecar\\" intercepts all of the service\'s traffic, and handles it more intelligently than a simple layer 3 network can. Istio uses the Envoy proxy as its sidecar. Envoy was originally written at Lyft and is now a CNCF project. The whole set of sidecars, one per microservice, is called thedata plane. The work of the sidecars is coordinated by a small number of central components called thecontrol plane. Control and data plane architectures are very common in distributed systems, from network switches to compute farms.","sidebar":"tutorialSidebar"},"devops/monitoring/istio/commands":{"id":"devops/monitoring/istio/commands","title":"Commands","description":"image","sidebar":"tutorialSidebar"},"devops/monitoring/istio/examples":{"id":"devops/monitoring/istio/examples","title":"Examples","description":"apiVersion: networking.istio.io/v1alpha3","sidebar":"tutorialSidebar"},"devops/monitoring/istio/intro":{"id":"devops/monitoring/istio/intro","title":"Istio","description":"Circuit Breaker","sidebar":"tutorialSidebar"},"devops/monitoring/istio/observability":{"id":"devops/monitoring/istio/observability","title":"Observability","description":"O11Y - Observability","sidebar":"tutorialSidebar"},"devops/monitoring/istio/operations":{"id":"devops/monitoring/istio/operations","title":"Operations","description":"Load Balancer","sidebar":"tutorialSidebar"},"devops/monitoring/istio/others":{"id":"devops/monitoring/istio/others","title":"Others","description":"Istio Ingress vs Kubernetes Ingress","sidebar":"tutorialSidebar"},"devops/monitoring/istio/readme":{"id":"devops/monitoring/istio/readme","title":"Istio","description":"- Istio","sidebar":"tutorialSidebar"},"devops/monitoring/istio/security":{"id":"devops/monitoring/istio/security","title":"Security","description":"Istio\'s security capabilities free developers to focus on security at the application level. Istio provides the underlying secure communication channel, and manages authentication, authorization, and encryption of service communication at scale. With Istio, service communications are secured by default, letting you enforce policies consistently across diverse protocols and runtimes -- all with little or no application changes.","sidebar":"tutorialSidebar"},"devops/monitoring/istio/tasks":{"id":"devops/monitoring/istio/tasks","title":"Tasks","description":"Traffic Management","sidebar":"tutorialSidebar"},"devops/monitoring/istio/traffic-management":{"id":"devops/monitoring/istio/traffic-management","title":"Traffic Management","description":"Istio\'s easy rules configuration and traffic routing lets you control the flow of traffic and API calls between services. Istio simplifies configuration of service-level properties like circuit breakers, timeouts, and retries, and makes it a breeze to set up important tasks like A/B testing, canary rollouts, and staged rollouts with percentage-based traffic splits.","sidebar":"tutorialSidebar"},"devops/monitoring/linkerd":{"id":"devops/monitoring/linkerd","title":"Linkerd","description":"Ultralight service mesh for Kubernetes","sidebar":"tutorialSidebar"},"devops/monitoring/metrics":{"id":"devops/monitoring/metrics","title":"Metrics","description":"Monitoring Introduction","sidebar":"tutorialSidebar"},"devops/monitoring/open-tracing":{"id":"devops/monitoring/open-tracing","title":"Open Tracing","description":"What is OpenTracing?","sidebar":"tutorialSidebar"},"devops/monitoring/others":{"id":"devops/monitoring/others","title":"Others","description":"Status pages","sidebar":"tutorialSidebar"},"devops/monitoring/prometheus/alert-manager":{"id":"devops/monitoring/prometheus/alert-manager","title":"Alert Manager","description":"The Alertmanager handles alerts sent by client applications such as the Prometheus server. It takes care of deduplicating, grouping, and routing them to the correct receiver integration such as email, PagerDuty, or OpsGenie. It also takes care of silencing and inhibition of alerts.","sidebar":"tutorialSidebar"},"devops/monitoring/prometheus/intro":{"id":"devops/monitoring/prometheus/intro","title":"Prometheus","description":"A CNCF (Cloud Native Computing Foundation) project, is a systems and service monitoring system. It collects metrics from configured targets at given intervals, evaluates rule expressions, displays the results, and can trigger alerts if some condition is observed to be true.","sidebar":"tutorialSidebar"},"devops/monitoring/prometheus/prometheus-architecture":{"id":"devops/monitoring/prometheus/prometheus-architecture","title":"Prometheus Architecture","description":"Components","sidebar":"tutorialSidebar"},"devops/monitoring/prometheus/querying":{"id":"devops/monitoring/prometheus/querying","title":"Querying","description":"Functions","sidebar":"tutorialSidebar"},"devops/monitoring/prometheus/readme":{"id":"devops/monitoring/prometheus/readme","title":"Prometheus","description":"- Prometheus","sidebar":"tutorialSidebar"},"devops/monitoring/prometheus/rules":{"id":"devops/monitoring/prometheus/rules","title":"Rules","description":"Prometheus supports two types of rules which may be configured and then evaluated at regular intervals: recording rules and alerting rules.","sidebar":"tutorialSidebar"},"devops/monitoring/readme":{"id":"devops/monitoring/readme","title":"Monitoring","description":"- Metrics","sidebar":"tutorialSidebar"},"devops/monitoring/service-mesh":{"id":"devops/monitoring/service-mesh","title":"Service Mesh","description":"A service mesh is a dedicated infrastructure layer for handling service-to-service communication. It\'s responsible for the reliable delivery of requests through the complex topology of services that comprise a modern, cloud native application. In practice, the service mesh is typically implemented as an array of lightweight network proxies that are deployed alongside application code, without the application needing to be aware.","sidebar":"tutorialSidebar"},"devops/monitoring/telegraf/commands-and-configs":{"id":"devops/monitoring/telegraf/commands-and-configs","title":"Commands & Configs","description":"Telegraf","sidebar":"tutorialSidebar"},"devops/monitoring/telegraf/readme":{"id":"devops/monitoring/telegraf/readme","title":"Telegraf","description":"Telegraf is an agent written in Go for collecting, processing, aggregating, and writing metrics.","sidebar":"tutorialSidebar"},"devops/others/backstage":{"id":"devops/others/backstage","title":"Backstage","description":"Internal Developer Portal (IDP)","sidebar":"tutorialSidebar"},"devops/others/coresync-pacemaker":{"id":"devops/others/coresync-pacemaker","title":"CoreSync, Pacemaker","description":"Corosync is an open source program that provides cluster membership and messaging capabilities, often referred to as themessaginglayer, to client servers. Pacemaker is an open source cluster resource manager (CRM), a system that coordinates resources and services that are managed and made highly available by a cluster. In essence, Corosync enables servers to communicate as a cluster, while Pacemaker provides the ability to control how the cluster behaves.","sidebar":"tutorialSidebar"},"devops/others/devtron":{"id":"devops/others/devtron","title":"DevTron","description":"Devtron deeply integrates with products across the lifecycle of microservices, i.e., CI, CD, security, cost, debugging, and observability via an intuitive web interface.","sidebar":"tutorialSidebar"},"devops/others/jenkins":{"id":"devops/others/jenkins","title":"Jenkins","description":"What can you do with Jenkins?","sidebar":"tutorialSidebar"},"devops/others/keycloak":{"id":"devops/others/keycloak","title":"KeyCloak","description":"Add authentication to applications and secure services with minimum fuss.","sidebar":"tutorialSidebar"},"devops/others/kong":{"id":"devops/others/kong","title":"Kong","description":"Kong is a cloud-native, fast, scalable, and distributed Microservice Abstraction Layer (also known as an API Gateway, API Middleware or in some cases Service Mesh). Made available as an open-source project in 2015, its core values are high performance and extensibility.","sidebar":"tutorialSidebar"},"devops/others/other-cicd":{"id":"devops/others/other-cicd","title":"Other - CICD","description":"- CI - Continuous Integration","sidebar":"tutorialSidebar"},"devops/others/other-tools":{"id":"devops/others/other-tools","title":"Other Tools","description":"Resources","sidebar":"tutorialSidebar"},"devops/others/readme":{"id":"devops/others/readme","title":"Other DevOps","description":"- Jenkins","sidebar":"tutorialSidebar"},"devops/readme":{"id":"devops/readme","title":"DevOps","description":"- DevOps","sidebar":"tutorialSidebar"},"devops/servers/apache-server":{"id":"devops/servers/apache-server","title":"Apache Server","description":"Apache HTTP Server","sidebar":"tutorialSidebar"},"devops/servers/gunicorn":{"id":"devops/servers/gunicorn","title":"Gunicorn","description":"Gunicorn was inspired by Ruby\'s Unicorn server (hence the name). It modestly claims that it is \\"simply implemented, light on server resources, and fairly speedy.\\" Unlike Bjoern and CerryPy, Gunicorn is a standalone server. \\"WORKER_COUNT\\" was set to be twice the number of available of processors, plus one. This was based on a recommendation from Gunicorn\'s documentation.","sidebar":"tutorialSidebar"},"devops/servers/nginx/configs":{"id":"devops/servers/nginx/configs","title":"Configs","description":"","sidebar":"tutorialSidebar"},"devops/servers/nginx/readme":{"id":"devops/servers/nginx/readme","title":"NGINX","description":"Designed to address the C10K problem: How can web servers handle 10,000 clients at the same time. With each new incoming connection, NGINX creates a file descriptor, which consumes less memory than an entire thread or process. Because its architecture is event-driven rather than process-based, NGINX also reduces the need for context switching that occurs in process-per-connection web servers.","sidebar":"tutorialSidebar"},"devops/servers/readme":{"id":"devops/servers/readme","title":"Servers","description":"- Apache Server","sidebar":"tutorialSidebar"},"devops/terminal-bash/1-linux-general-unix-linux-commands":{"id":"devops/terminal-bash/1-linux-general-unix-linux-commands","title":"(1) Linux General / Unix / Linux Commands","description":"Display","sidebar":"tutorialSidebar"},"devops/terminal-bash/2-system-calls":{"id":"devops/terminal-bash/2-system-calls","title":"(2) System Calls","description":"man syscalls","sidebar":"tutorialSidebar"},"devops/terminal-bash/3-library-functions":{"id":"devops/terminal-bash/3-library-functions","title":"(3) Library Functions","description":"setvbuf","sidebar":"tutorialSidebar"},"devops/terminal-bash/8-linux-system-administration":{"id":"devops/terminal-bash/8-linux-system-administration","title":"(8) Linux System Administration","description":"sudo","sidebar":"tutorialSidebar"},"devops/terminal-bash/bash-metacharacters":{"id":"devops/terminal-bash/bash-metacharacters","title":"Bash Metacharacters","description":"| Symbol |","sidebar":"tutorialSidebar"},"devops/terminal-bash/bash-shortcuts":{"id":"devops/terminal-bash/bash-shortcuts","title":"Bash Shortcuts","description":"Controlling the Screen","sidebar":"tutorialSidebar"},"devops/terminal-bash/manual-pages":{"id":"devops/terminal-bash/manual-pages","title":"Manual Pages","description":"A man page(short formanual page) is a form of software documentation usually found on a Unix or Unix-likeoperating system. Topics covered include computer programs(including library) and system calls), formal standards and conventions, and even abstract concepts. A user) may invoke a man page by issuing theman command).","sidebar":"tutorialSidebar"},"devops/terminal-bash/networking-tools":{"id":"devops/terminal-bash/networking-tools","title":"Networking tools","description":"image","sidebar":"tutorialSidebar"},"devops/terminal-bash/others":{"id":"devops/terminal-bash/others","title":"Others","description":"Boot","sidebar":"tutorialSidebar"},"devops/terminal-bash/readme":{"id":"devops/terminal-bash/readme","title":"Terminal Bash","description":"- Shell - Intro","sidebar":"tutorialSidebar"},"devops/terminal-bash/shell-bash-script":{"id":"devops/terminal-bash/shell-bash-script","title":"Shell/bash Script","description":"A shell script is a computer program designed to be run by the Unix shell, a command-line interpreter. The various dialects of shell scripts are considered to be scripting languages. Typical operations performed by shell scripts include file manipulation, program execution, and printing text. A script which sets up the environment, runs the program, and does any necessary cleanup, logging, etc. is called a wrapper.","sidebar":"tutorialSidebar"},"devops/terminal-bash/shell-intro":{"id":"devops/terminal-bash/shell-intro","title":"Shell - Intro","description":"Shell","sidebar":"tutorialSidebar"},"devops/terminal-bash/sysctl":{"id":"devops/terminal-bash/sysctl","title":"sysctl","description":"sysctl -- get or set kernel state","sidebar":"tutorialSidebar"},"devops/terminal-bash/tmux-iterm":{"id":"devops/terminal-bash/tmux-iterm","title":"Tmux Iterm","description":"Tmux is a terminal multiplexer.","sidebar":"tutorialSidebar"},"devops/terminal-bash/tools/awk":{"id":"devops/terminal-bash/tools/awk","title":"AWK","description":"man awk - pattern-directed scanning and processing language","sidebar":"tutorialSidebar"},"devops/terminal-bash/tools/crontab":{"id":"devops/terminal-bash/tools/crontab","title":"Crontab","description":"The software utility cron is a time-based job scheduler in Unix-like computer operating systems. People who set up and maintain software environments use cron to schedule jobs (commands or shell scripts) to run periodically at fixed times, dates, or intervals. It typically automates system maintenance or administration - though its general-purpose nature makes it useful for things like downloading files from the Internet and downloading email at regular intervals. The origin of the name cron is from the Greek word for time, \u03c7\u03c1\u03cc\u03bd\u03bf\u03c2 (chronos).","sidebar":"tutorialSidebar"},"devops/terminal-bash/tools/curl":{"id":"devops/terminal-bash/tools/curl","title":"Curl","description":"curl is a tool to transfer data from or to a server, using one of the supported protocols (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET and TFTP). The command is designed to work without user interaction.","sidebar":"tutorialSidebar"},"devops/terminal-bash/tools/editors":{"id":"devops/terminal-bash/tools/editors","title":"Editors","description":"Commenting multiple using the terminal","sidebar":"tutorialSidebar"},"devops/terminal-bash/tools/mosh":{"id":"devops/terminal-bash/tools/mosh","title":"Mosh","description":"Remote terminal application that allowsroaming, supportsintermittent connectivity, and provides intelligentlocal echoand line editing of user keystrokes.","sidebar":"tutorialSidebar"},"devops/terminal-bash/tools/rsync-rclone":{"id":"devops/terminal-bash/tools/rsync-rclone","title":"rsync / rclone","description":"Rsync Algorithm","sidebar":"tutorialSidebar"},"devops/terraform/commands":{"id":"devops/terraform/commands","title":"Commands","description":"Usage: terraform [-version] [-help] [args]","sidebar":"tutorialSidebar"},"devops/terraform/documentation":{"id":"devops/terraform/documentation","title":"Documentation","description":"Providers","sidebar":"tutorialSidebar"},"devops/terraform/examples":{"id":"devops/terraform/examples","title":"Examples","description":"","sidebar":"tutorialSidebar"},"devops/terraform/readme":{"id":"devops/terraform/readme","title":"Terraform","description":"- Documentation","sidebar":"tutorialSidebar"},"devops/terraform/variables":{"id":"devops/terraform/variables","title":"Variables","description":"Defining Variables","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/0-accounting-for-finance":{"id":"economics/accounting-for-finance/0-accounting-for-finance","title":"0 Accounting for Finance","description":"Accounting 101 (taught by a non-accountant)","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/1-accounting-first-steps":{"id":"economics/accounting-for-finance/1-accounting-first-steps","title":"1 Accounting First Steps","description":"The Accountant\'s Role","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/2-income-statements-and-profitability-measures":{"id":"economics/accounting-for-finance/2-income-statements-and-profitability-measures","title":"2 Income Statements & Profitability Measures","description":"Measuring Income: Accrual versus Cash Accounting","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/2a-income-statement-comparisons":{"id":"economics/accounting-for-finance/2a-income-statement-comparisons","title":"2A Income Statement Comparisons","description":"Income Statement: A Life Cycle Perspective","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/3-balance-sheets":{"id":"economics/accounting-for-finance/3-balance-sheets","title":"3 Balance Sheets","description":"Balance Sheets - Assets Owned & Money Owed","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/3a-balance-sheet-comparisons":{"id":"economics/accounting-for-finance/3a-balance-sheet-comparisons","title":"3A: Balance Sheet Comparisons","description":"Balance Sheet: A Life Cycle Perspective","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/4-cash-flow-statements-cash-in-and-cash-out":{"id":"economics/accounting-for-finance/4-cash-flow-statements-cash-in-and-cash-out","title":"4: Cash Flow Statements - Cash In and Cash Out","description":"The End Game with Cash Flows","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/4a-cash-flow-statement-comparisons":{"id":"economics/accounting-for-finance/4a-cash-flow-statement-comparisons","title":"4A: Cash Flow Statement Comparisons","description":"Cash Flows: A Life Cycle Perspective","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/5-cleaning-up-accounting":{"id":"economics/accounting-for-finance/5-cleaning-up-accounting","title":"5: Cleaning Up Accounting","description":"The Accountant\'s Role","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/5a-accounting-inconsistency-examples":{"id":"economics/accounting-for-finance/5a-accounting-inconsistency-examples","title":"5A: Accounting Inconsistency Examples","description":"Tax Rates","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/6-accouting-financial-ratios-profitability-measures":{"id":"economics/accounting-for-finance/6-accouting-financial-ratios-profitability-measures","title":"6: Accouting Financial Ratios - Profitability Measures","description":"From Absolutes to Ratios","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/6a-ratio-analysis":{"id":"economics/accounting-for-finance/6a-ratio-analysis","title":"6A: Ratio Analysis","description":"Financial Ratios: A Life Cycle Perspective","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/readme":{"id":"economics/accounting-for-finance/readme","title":"Accounting for Finance","description":"- Accounting for Finance","sidebar":"tutorialSidebar"},"economics/buy-now-pay-later-bnpl":{"id":"economics/buy-now-pay-later-bnpl","title":"Buy Now Pay Later (BNPL)","description":"Facts","sidebar":"tutorialSidebar"},"economics/corporate-finance/capital-budgeting":{"id":"economics/corporate-finance/capital-budgeting","title":"Capital budgeting","description":"Definition of Capital Budgeting","sidebar":"tutorialSidebar"},"economics/corporate-finance/corporate-actions":{"id":"economics/corporate-finance/corporate-actions","title":"Corporate Actions","description":"A corporate action is initiated by the board of directors and approved by the company\'s shareholders.","sidebar":"tutorialSidebar"},"economics/corporate-finance/readme":{"id":"economics/corporate-finance/readme","title":"Corporate Finance","description":"Corporate finance is an area of finance that deals with sources of funding, the capital structure of corporations, the actions that managers take to increase the value of the firm to the shareholders, and the tools and analysis used to allocate financial resources. The primary goal of corporate finance is to maximize or increase shareholder value).Although it is in principle different from managerial finance which studies the financial management of all firms, rather than corporations alone, the main concepts in the study of corporate finance are applicable to the financial problems of all kinds of firms.","sidebar":"tutorialSidebar"},"economics/course-investing-zerodha-varsity":{"id":"economics/course-investing-zerodha-varsity","title":"Course - Investing Zerodha Varsity","description":"1 - Introduction to Stock Markets","sidebar":"tutorialSidebar"},"economics/finance-investing/asset-classes":{"id":"economics/finance-investing/asset-classes","title":"Asset Classes","description":"https://freefincal.com/hdfc-corporate-bond-fund","sidebar":"tutorialSidebar"},"economics/finance-investing/checklist-tips":{"id":"economics/finance-investing/checklist-tips","title":"Checklist / Tips","description":"Choosing companies","sidebar":"tutorialSidebar"},"economics/finance-investing/company-analysis":{"id":"economics/finance-investing/company-analysis","title":"Company Analysis","description":"Atlas SOIC Market Temp check","sidebar":"tutorialSidebar"},"economics/finance-investing/company-management":{"id":"economics/finance-investing/company-management","title":"Company\'s Management","description":"Evaluating Company\'s Management For Stock Buying | ET Money","sidebar":"tutorialSidebar"},"economics/finance-investing/financial-independence-fire":{"id":"economics/finance-investing/financial-independence-fire","title":"Financial Independence, Retire Early (FIRE)","description":"FIRE means to save and invest aggressively in your 20s and 30s so that you can live the latter years of your life freely","sidebar":"tutorialSidebar"},"economics/finance-investing/huf-private-trust":{"id":"economics/finance-investing/huf-private-trust","title":"HUF / Private Trust","description":"HUF","sidebar":"tutorialSidebar"},"economics/finance-investing/indian-company-types":{"id":"economics/finance-investing/indian-company-types","title":"Indian Company Types","description":"Types of companies in India","sidebar":"tutorialSidebar"},"economics/finance-investing/industry-sectors":{"id":"economics/finance-investing/industry-sectors","title":"Industry Sectors","description":"- Communication Services","sidebar":"tutorialSidebar"},"economics/finance-investing/personal-finance":{"id":"economics/finance-investing/personal-finance","title":"Personal Finance","description":"4 pillars","sidebar":"tutorialSidebar"},"economics/finance-investing/portfolio-management-services-pms":{"id":"economics/finance-investing/portfolio-management-services-pms","title":"Portfolio Management Services (PMS)","description":"- Marcellus - 10L-50L","sidebar":"tutorialSidebar"},"economics/finance-investing/portfolios":{"id":"economics/finance-investing/portfolios","title":"Portfolios","description":"Portfolio","sidebar":"tutorialSidebar"},"economics/finance-investing/quotes":{"id":"economics/finance-investing/quotes","title":"Quotes","description":"Diversification using portfolio allocation and goal based investing are the only things that works in personal finance investing","sidebar":"tutorialSidebar"},"economics/finance-investing/readme":{"id":"economics/finance-investing/readme","title":"Finance / Investing","description":"- Financial Independence (FIRE)","sidebar":"tutorialSidebar"},"economics/finance-investing/returns-tax-taxes-itr":{"id":"economics/finance-investing/returns-tax-taxes-itr","title":"Returns / Tax / Taxes / ITR","description":"https://taxbuddy.com","sidebar":"tutorialSidebar"},"economics/finance-investing/stocks-equity":{"id":"economics/finance-investing/stocks-equity","title":"Stocks / Equity","description":"The stock market is a device for transferring money from the impatient to the patient - Warren Buffet","sidebar":"tutorialSidebar"},"economics/finance-terms":{"id":"economics/finance-terms","title":"Finance Terms","description":"Asset Classes","sidebar":"tutorialSidebar"},"economics/financial-facts":{"id":"economics/financial-facts","title":"Facts","description":"- Real state capitalization, economy - 340 trillion dollar","sidebar":"tutorialSidebar"},"economics/fintech-nbfc-banking-terms":{"id":"economics/fintech-nbfc-banking-terms","title":"Fintech / NBFC / Banking Terms","description":"Banking Parameters","sidebar":"tutorialSidebar"},"economics/government-terms":{"id":"economics/government-terms","title":"Government Terms","description":"Equitable Distribution","sidebar":"tutorialSidebar"},"economics/gross-domestic-product-gdp":{"id":"economics/gross-domestic-product-gdp","title":"Gross Domestic Product (GDP)","description":"A monetary measure of the market value of all final goods and services produced in a period (quarterly or yearly).","sidebar":"tutorialSidebar"},"economics/inflation-indexes":{"id":"economics/inflation-indexes","title":"Inflation Indexes","description":"Inflation is a sustained increase in the general prices of goods and services. Increasing inflation erodes the purchasing power of money.","sidebar":"tutorialSidebar"},"economics/insurance":{"id":"economics/insurance","title":"Insurance","description":"Term Insurance","sidebar":"tutorialSidebar"},"economics/intro":{"id":"economics/intro","title":"Intro","description":"https://en.wikipedia.org/wiki/Outline_of_economics","sidebar":"tutorialSidebar"},"economics/investment-banking":{"id":"economics/investment-banking","title":"Investment Banking","description":"Careers in finance - Investment Banking (Part 2) - YouTube","sidebar":"tutorialSidebar"},"economics/investment-terms":{"id":"economics/investment-terms","title":"Investment Terms","description":"Annual vs Trailing vs Rolling Returns Explained | ET Money","sidebar":"tutorialSidebar"},"economics/learning":{"id":"economics/learning","title":"Learning","description":"Course - Corporate Governance","sidebar":"tutorialSidebar"},"economics/market-terms/fundamental-analysis":{"id":"economics/market-terms/fundamental-analysis","title":"Fundamental Analysis","description":"Links","sidebar":"tutorialSidebar"},"economics/market-terms/futures-options-trading":{"id":"economics/market-terms/futures-options-trading","title":"Futures / Options / Trading","description":"Buy the rumor, sell the news","sidebar":"tutorialSidebar"},"economics/market-terms/ipo":{"id":"economics/market-terms/ipo","title":"IPO","description":"https://zerodha.com/varsity/chapter/the-ipo-markets-part-1/","sidebar":"tutorialSidebar"},"economics/market-terms/others":{"id":"economics/market-terms/others","title":"Others","description":"Nifty VIX (India Volatility Index)","sidebar":"tutorialSidebar"},"economics/market-terms/readme":{"id":"economics/market-terms/readme","title":"Market Terms","description":"- IPO","sidebar":"tutorialSidebar"},"economics/market-terms/swing-trading":{"id":"economics/market-terms/swing-trading","title":"Swing Trading","description":"- Technical swing","sidebar":"tutorialSidebar"},"economics/market-terms/technical-analysis":{"id":"economics/market-terms/technical-analysis","title":"Technical Analysis","description":"Technical Analysis helps identify trading opportunities using actions of Market Participants through charts, patterns, and indicators.","sidebar":"tutorialSidebar"},"economics/market-terms/technical-indicators":{"id":"economics/market-terms/technical-indicators","title":"Technical Indicators","description":"Relative strength index (RSI) (14)","sidebar":"tutorialSidebar"},"economics/market-terms/valuation-metrics":{"id":"economics/market-terms/valuation-metrics","title":"Valuation Metrics","description":"4 Most Popular Valuation Metrics That Every Investor Must Know | ET Money","sidebar":"tutorialSidebar"},"economics/market-terms/wyckoff-method":{"id":"economics/market-terms/wyckoff-method","title":"Wyckoff Method","description":"- The Wyckoff Method is a technical analysis approach that can help investors decide what stocks to buy and when to buy them.","sidebar":"tutorialSidebar"},"economics/mental-models/economics-mental-models":{"id":"economics/mental-models/economics-mental-models","title":"Economics Mental Models","description":"To read","sidebar":"tutorialSidebar"},"economics/mental-models/inequality":{"id":"economics/mental-models/inequality","title":"Inequality","description":"Gini Coefficient","sidebar":"tutorialSidebar"},"economics/mental-models/macroeconomics":{"id":"economics/mental-models/macroeconomics","title":"Macroeconomics","description":"Macroeconomics (from the Greek prefix makro-meaning \\"large\\" +economics) is a branch of economics dealing with the performance, structure, behavior, and decision-making of an economy as a whole. This includes regional, national, and global economies. Macroeconomists study aggregated indicators such as GDP, unemployment rates, national income, price indices, and the interrelations among the different sectors of the economy to better understand how the whole economy functions. They also develop models that explain the relationship between such factors as national income, output), consumption), unemployment, inflation, saving, investment), international trade, and international finance.","sidebar":"tutorialSidebar"},"economics/mental-models/marginal-utility-analysis":{"id":"economics/mental-models/marginal-utility-analysis","title":"Marginal Utility / Analysis","description":"Marginal Analysis","sidebar":"tutorialSidebar"},"economics/mental-models/microeconomics":{"id":"economics/mental-models/microeconomics","title":"Microeconomics","description":"Microeconomics (from Greek prefixmikro-meaning \\"small\\" +economics) is a branch of economics that studies the behaviour of individuals and firms in making decisions regarding the allocation of scarce resources and the interactions among these individuals and firms.","sidebar":"tutorialSidebar"},"economics/mental-models/rankings":{"id":"economics/mental-models/rankings","title":"Rankings","description":"List of international rankings - Wikipedia","sidebar":"tutorialSidebar"},"economics/mental-models/recession-shapes-recovery":{"id":"economics/mental-models/recession-shapes-recovery","title":"Recession shapes (Recovery types)","description":"image","sidebar":"tutorialSidebar"},"economics/monetary-policies":{"id":"economics/monetary-policies","title":"Monetary Policy","description":"Monetary policy is the process by which the monetary authority of a country, typically the central bank or currency board, controls either the cost of very short-term borrowing or the money supply, often targeting an inflation rate or interest rate to ensure price stability and general trust in the currency.","sidebar":"tutorialSidebar"},"economics/mutual-funds/debentures-bonds":{"id":"economics/mutual-funds/debentures-bonds","title":"Debentures / Bonds","description":"A long-term security yielding a fixed rate of interest, issued by a company and secured against assets.","sidebar":"tutorialSidebar"},"economics/mutual-funds/debt-mutual-funds":{"id":"economics/mutual-funds/debt-mutual-funds","title":"Debt Mutual Funds","description":"- The debt part of the portfolio is to provide stability to the portfolio, not to generate a higher return. If investors want a higher return from their portfolio, they should ideally increase equity allocation in the portfolio.","sidebar":"tutorialSidebar"},"economics/mutual-funds/debt-mutual-funds-analysis":{"id":"economics/mutual-funds/debt-mutual-funds-analysis","title":"Debt Mutual Funds Analysis","description":"How to select a debt mutual fund?","sidebar":"tutorialSidebar"},"economics/mutual-funds/debt-mutual-funds-risks":{"id":"economics/mutual-funds/debt-mutual-funds-risks","title":"Debt Mutual Funds Risks","description":"Cashflow risk","sidebar":"tutorialSidebar"},"economics/mutual-funds/equity-mutual-funds":{"id":"economics/mutual-funds/equity-mutual-funds","title":"Equity Mutual Funds","description":"Equity funds or growth funds","sidebar":"tutorialSidebar"},"economics/mutual-funds/fixed-income":{"id":"economics/mutual-funds/fixed-income","title":"Fixed income","description":"Fixed income refers to any type of investment under which the borrower or issuer is obliged to make payments of a fixed amount on a fixed schedule. For example, the borrower may have to pay interest at a fixed rate once a year, and to repay the principal amount on maturity. Fixed-income securities) can be contrasted with equity securities -- often referred to as stocks and shares -- that create no obligation to pay dividends or any other form of income.","sidebar":"tutorialSidebar"},"economics/mutual-funds/index-investing-etf":{"id":"economics/mutual-funds/index-investing-etf","title":"Index Investing / ETF","description":"What is a factor-based index?","sidebar":"tutorialSidebar"},"economics/mutual-funds/mutual-funds-indicators":{"id":"economics/mutual-funds/mutual-funds-indicators","title":"Mutual Funds Indicators","description":"How to Measure Mutual Fund Risk | Alpha, Beta, SD, Sharpe, R-squared, Sortino | Learn with ETMONEY","sidebar":"tutorialSidebar"},"economics/mutual-funds/nifty-indexes-indices":{"id":"economics/mutual-funds/nifty-indexes-indices","title":"Nifty Indexes / Indices","description":"Sensex then versus now","sidebar":"tutorialSidebar"},"economics/mutual-funds/others":{"id":"economics/mutual-funds/others","title":"Others","description":"ESG - Environmental, social and corporate governance","sidebar":"tutorialSidebar"},"economics/mutual-funds/readme":{"id":"economics/mutual-funds/readme","title":"Mutual Funds","description":"- Fixed Income","sidebar":"tutorialSidebar"},"economics/readme":{"id":"economics/readme","title":"Economics","description":"- Intro","sidebar":"tutorialSidebar"},"economics/schools-of-economic-thought":{"id":"economics/schools-of-economic-thought","title":"Schools of Economic Thought","description":"Schools of economic thought - Wikipedia","sidebar":"tutorialSidebar"},"frontend/frontend-intro/design-system":{"id":"frontend/frontend-intro/design-system","title":"Design System","description":"The complete set of design standards, documentation, UI patterns, and components. Design systems allow you to manage design at scale","sidebar":"tutorialSidebar"},"frontend/frontend-intro/frontend-architecture":{"id":"frontend/frontend-intro/frontend-architecture","title":"Frontend Architecture","description":"PRPL pattern","sidebar":"tutorialSidebar"},"frontend/frontend-intro/gestalt-principles":{"id":"frontend/frontend-intro/gestalt-principles","title":"Gestalt Principles","description":"- Human visual system is optimized to see structure and relationships","sidebar":"tutorialSidebar"},"frontend/frontend-intro/google-crawlers-crawling":{"id":"frontend/frontend-intro/google-crawlers-crawling","title":"Google Crawlers / Crawling","description":"How Google Search crawls pages - YouTube","sidebar":"tutorialSidebar"},"frontend/frontend-intro/intro":{"id":"frontend/frontend-intro/intro","title":"Intro","description":"The HTTP protocol is one of the most important protocols for smooth communication between the server and the client. The main disadvantage of the HTTP protocol it is a stateless protocol that means it does not track any kind of information of response and request by the server and the client, So in order to resolve this problem, there are three ways to track useful information.","sidebar":"tutorialSidebar"},"frontend/frontend-intro/jamstack-cms":{"id":"frontend/frontend-intro/jamstack-cms","title":"JAMstack / CMS","description":"Modern Web-development architecture based on Client-side JavaScript, resuable APIs and prebuild Markup","sidebar":"tutorialSidebar"},"frontend/frontend-intro/microfrontend-architecture":{"id":"frontend/frontend-intro/microfrontend-architecture","title":"Microfrontend Architecture","description":"Micro-frontend architecture is a design approach in which a front-end app is decomposed into individual, semi-independent \\"microapps\\" working loosely together.","sidebar":"tutorialSidebar"},"frontend/frontend-intro/others":{"id":"frontend/frontend-intro/others","title":"Others","description":"BFCache","sidebar":"tutorialSidebar"},"frontend/frontend-intro/performance":{"id":"frontend/frontend-intro/performance","title":"Performance","description":"Steps to build a hyper-light website","sidebar":"tutorialSidebar"},"frontend/frontend-intro/pwa":{"id":"frontend/frontend-intro/pwa","title":"PWA: Progressive Web Apps","description":"- Look great on all screen sizes","sidebar":"tutorialSidebar"},"frontend/frontend-intro/readme":{"id":"frontend/frontend-intro/readme","title":"Frontend","description":"- Intro","sidebar":"tutorialSidebar"},"frontend/frontend-intro/seo-aso":{"id":"frontend/frontend-intro/seo-aso","title":"SEO / ASO","description":"SEO - Search Engine Optimization","sidebar":"tutorialSidebar"},"frontend/frontend-intro/ui-ux-ixd-design-frontend":{"id":"frontend/frontend-intro/ui-ux-ixd-design-frontend","title":"UI / UX / IxD / Design / Frontend","description":"\\"Design is not just what it looks like and feels like. Design is how it works.\\"---Steve Jobs, 2003","sidebar":"tutorialSidebar"},"frontend/frontend-intro/web-vitals":{"id":"frontend/frontend-intro/web-vitals","title":"Web Vitals","description":"https://web.dev/vitals","sidebar":"tutorialSidebar"},"frontend/frontend-intro/wordpress":{"id":"frontend/frontend-intro/wordpress","title":"Wordpress","description":"https://wordpress.com/home/deepaksood619.wordpress.com","sidebar":"tutorialSidebar"},"frontend/html-css/component-libraries/components":{"id":"frontend/html-css/component-libraries/components","title":"Components","description":"https://material.io/components","sidebar":"tutorialSidebar"},"frontend/html-css/component-libraries/others":{"id":"frontend/html-css/component-libraries/others","title":"Others","description":"Bootstrap","sidebar":"tutorialSidebar"},"frontend/html-css/component-libraries/readme":{"id":"frontend/html-css/component-libraries/readme","title":"Component Libraries","description":"https://lwc.dev","sidebar":"tutorialSidebar"},"frontend/html-css/css-intro/centering":{"id":"frontend/html-css/css-intro/centering","title":"Centering","description":"http://www.tipue.com/blog/center-a-div","sidebar":"tutorialSidebar"},"frontend/html-css/css-intro/css-positions":{"id":"frontend/html-css/css-intro/css-positions","title":"CSS Positions","description":"CSS Positions allow you to manipulate how elements are positioned to achieve many different visual effects.","sidebar":"tutorialSidebar"},"frontend/html-css/css-intro/css-transitions":{"id":"frontend/html-css/css-intro/css-transitions","title":"CSS Transitions","description":"The simplest (and most straightforward) way to animate your components is through CSS Transitions. In this article, you\'ll learn how CSS Transitions work, and how to make animations with it.","sidebar":"tutorialSidebar"},"frontend/html-css/css-intro/mastering-css":{"id":"frontend/html-css/css-intro/mastering-css","title":"Mastering CSS","description":"The Anatomy of a Rule Set and three types of Style Sheets","sidebar":"tutorialSidebar"},"frontend/html-css/css-intro/others":{"id":"frontend/html-css/css-intro/others","title":"Others","description":"CSS Keyframe Animation","sidebar":"tutorialSidebar"},"frontend/html-css/css-intro/readme":{"id":"frontend/html-css/css-intro/readme","title":"CSS Intro","description":"Cascading Style Sheets, fondly referred to as CSS, is a simple design language intended to simplify the process of making web pages presentable.","sidebar":"tutorialSidebar"},"frontend/html-css/html-intro/html-entities-attributes":{"id":"frontend/html-css/html-intro/html-entities-attributes","title":"HTML Entities / Attributes","description":"Reserved characters in HTML must be replaced with character entities.","sidebar":"tutorialSidebar"},"frontend/html-css/html-intro/readme":{"id":"frontend/html-css/html-intro/readme","title":"HTML Intro","description":"DOM (Document Object Model) [parent, child, siblings] (description of the relationship that all of the HTML elements have with each other ) (It takes html tags as input and browser converts it to DOM that is rendered in the webpage)","sidebar":"tutorialSidebar"},"frontend/html-css/html-intro/tags":{"id":"frontend/html-css/html-intro/tags","title":"Tags","description":"Semantic Elements in HTML5","sidebar":"tutorialSidebar"},"frontend/html-css/readme":{"id":"frontend/html-css/readme","title":"HTML-CSS","description":"- Component Libraries","sidebar":"tutorialSidebar"},"frontend/js-javascript/basic":{"id":"frontend/js-javascript/basic","title":"Basic","description":"https://medium.freecodecamp.org/the-definitive-javascript-handbook-for-a-developer-interview-44ffc6aeb54e","sidebar":"tutorialSidebar"},"frontend/js-javascript/intro":{"id":"frontend/js-javascript/intro","title":"Intro","description":"Javascript","sidebar":"tutorialSidebar"},"frontend/js-javascript/libraries":{"id":"frontend/js-javascript/libraries","title":"Libraries","description":"Axios","sidebar":"tutorialSidebar"},"frontend/js-javascript/others":{"id":"frontend/js-javascript/others","title":"Others","description":"Debouncing in JavaScript","sidebar":"tutorialSidebar"},"frontend/js-javascript/promises":{"id":"frontend/js-javascript/promises","title":"Promises","description":"1. Is single threaded","sidebar":"tutorialSidebar"},"frontend/js-javascript/questions":{"id":"frontend/js-javascript/questions","title":"Questions","description":"Event Delegation","sidebar":"tutorialSidebar"},"frontend/js-javascript/readme":{"id":"frontend/js-javascript/readme","title":"Javascript","description":"- Intro","sidebar":"tutorialSidebar"},"frontend/js-javascript/typescript":{"id":"frontend/js-javascript/typescript","title":"TypeScript","description":"TypeScript is an open source syntactic superset of javascript that compiles to JS. Allows to use optional static typing as well as support for the latest evolving features of ES2015.","sidebar":"tutorialSidebar"},"frontend/js-javascript/web-api":{"id":"frontend/js-javascript/web-api","title":"Web API","description":"Application Programming Interfaces (APIs) are constructs made available in programming languages to allow developers to create complex functionality more easily. They abstract more complex code away from you, providing some easier syntax to use in its place.","sidebar":"tutorialSidebar"},"frontend/others/angularjs/01-intro":{"id":"frontend/others/angularjs/01-intro","title":"1. Intro","description":"It is used in Single Page Applications Project.","sidebar":"tutorialSidebar"},"frontend/others/angularjs/03-modules":{"id":"frontend/others/angularjs/03-modules","title":"3. Modules","description":"Modules","sidebar":"tutorialSidebar"},"frontend/others/angularjs/06-components":{"id":"frontend/others/angularjs/06-components","title":"6. Components","description":"Angular Components","sidebar":"tutorialSidebar"},"frontend/others/angularjs/08-metadata":{"id":"frontend/others/angularjs/08-metadata","title":"8. Metadata","description":"Decorators are functions that modify JavaScript classes. Angular has many decorators that attach metadata to classes so that it knows what those classes mean and how they should work.","sidebar":"tutorialSidebar"},"frontend/others/angularjs/09-data-binding":{"id":"frontend/others/angularjs/09-data-binding","title":"9. Data Binding","description":"Without a framework, you would be responsible for pushing data values into the HTML controls and turning user responses into actions and value updates. Writing such push/pull logic by hand is tedious, error-prone, and a nightmare to read as any experienced jQuery programmer can attest.","sidebar":"tutorialSidebar"},"frontend/others/angularjs/10-directives":{"id":"frontend/others/angularjs/10-directives","title":"10. Directives","description":"image","sidebar":"tutorialSidebar"},"frontend/others/angularjs/11-services":{"id":"frontend/others/angularjs/11-services","title":"11. Services","description":"Service is a broad category encompassing any value, function, or feature that your application needs.","sidebar":"tutorialSidebar"},"frontend/others/angularjs/12-dependency-injection":{"id":"frontend/others/angularjs/12-dependency-injection","title":"12. Dependency Injection","description":"Dependency injection is a way to supply a new instance of a class with the fully-formed dependencies it requires. Most dependencies are services. Angular uses dependency injection to provide new components with the services they need.","sidebar":"tutorialSidebar"},"frontend/others/angularjs/intro":{"id":"frontend/others/angularjs/intro","title":"AngularJS","description":"https://www.toptal.com/angular/angular-9-tutorial-angular-ivy","sidebar":"tutorialSidebar"},"frontend/others/angularjs/readme":{"id":"frontend/others/angularjs/readme","title":"AngularJS","description":"- AngularJS","sidebar":"tutorialSidebar"},"frontend/others/angularjs/tour-of-heroes":{"id":"frontend/others/angularjs/tour-of-heroes","title":"Tour of Heroes","description":"Directives","sidebar":"tutorialSidebar"},"frontend/others/docusaurus":{"id":"frontend/others/docusaurus","title":"Docusaurus","description":"https://docusaurus.io/docs","sidebar":"tutorialSidebar"},"frontend/others/frontend-frameworks":{"id":"frontend/others/frontend-frameworks","title":"Frontend Frameworks","description":"Frontend Frameworks","sidebar":"tutorialSidebar"},"frontend/others/gatsby":{"id":"frontend/others/gatsby","title":"Gatsby","description":"Gatsby is a free and open source framework based on React that helps developers build blazing fast websites and apps","sidebar":"tutorialSidebar"},"frontend/others/jquery":{"id":"frontend/others/jquery","title":"JQuery","description":"Introduction","sidebar":"tutorialSidebar"},"frontend/others/nestjs/documentation":{"id":"frontend/others/nestjs/documentation","title":"Documentation","description":"INTRODUCTION","sidebar":"tutorialSidebar"},"frontend/others/nestjs/readme":{"id":"frontend/others/nestjs/readme","title":"NestJs","description":"A progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications on top of TypeScript & JavaScript (ES6, ES7, ES8)","sidebar":"tutorialSidebar"},"frontend/others/nextjs/data-fetching":{"id":"frontend/others/nextjs/data-fetching","title":"Data Fetching","description":"Note: Next.js 13 introduces the app/ directory (beta). This new directory has support for colocated data fetching at the component level, using the new React use hook and an extended fetch Web API.","sidebar":"tutorialSidebar"},"frontend/others/nextjs/others":{"id":"frontend/others/nextjs/others","title":"Others","description":"Libraries","sidebar":"tutorialSidebar"},"frontend/others/nextjs/readme":{"id":"frontend/others/nextjs/readme","title":"NextJS","description":"Why NextJS","sidebar":"tutorialSidebar"},"frontend/others/nodejs/libraries":{"id":"frontend/others/nodejs/libraries","title":"Libraries","description":"Frontends","sidebar":"tutorialSidebar"},"frontend/others/nodejs/nodejs-frameworks":{"id":"frontend/others/nodejs/nodejs-frameworks","title":"Nodejs Frameworks","description":"Things to consider while selecting a node framework","sidebar":"tutorialSidebar"},"frontend/others/nodejs/npm-commands":{"id":"frontend/others/nodejs/npm-commands","title":"npm commands","description":"npx - npm package runner","sidebar":"tutorialSidebar"},"frontend/others/nodejs/readme":{"id":"frontend/others/nodejs/readme","title":"Nodejs","description":"Node.js is an open-source, cross-platformJavaScriptrun-time environment that executes JavaScript code outside of a browser. JavaScript is used primarily for client-side scripting, in which scripts written in JavaScript are embedded in a webpage\'s HTML and run client-side by a JavaScript engine in the user\'s web browser. Node.js lets developers use JavaScript to write command line tools and for server-side scripting-running scripts server-side to produce dynamic web page contentbeforethe page is sent to the user\'s web browser. Consequently, Node.js represents a \\"JavaScript everywhere\\" paradigm, unifying web application development around a single programming language, rather than different languages for server side and client side scripts.","sidebar":"tutorialSidebar"},"frontend/others/readme":{"id":"frontend/others/readme","title":"Others","description":"- JQuery","sidebar":"tutorialSidebar"},"frontend/others/static-site-generators":{"id":"frontend/others/static-site-generators","title":"Static Site Generators","description":"GitHub - myles/awesome-static-generators: A curated list of static web site generators.","sidebar":"tutorialSidebar"},"frontend/react/code-commands-snippets":{"id":"frontend/react/code-commands-snippets","title":"Code / Commands / Snippets","description":"dependencies are the packages your project depends on","sidebar":"tutorialSidebar"},"frontend/react/components":{"id":"frontend/react/components","title":"Components","description":"- Always component name should start with Capital letter","sidebar":"tutorialSidebar"},"frontend/react/course":{"id":"frontend/react/course","title":"Course","description":"Roadmap - https://www.youtube.com/watch?v=Ip_jOSpThSg","sidebar":"tutorialSidebar"},"frontend/react/docs":{"id":"frontend/react/docs","title":"Docs","description":"MAIN CONCEPTS","sidebar":"tutorialSidebar"},"frontend/react/events":{"id":"frontend/react/events","title":"Events","description":"Your event handlers will be passed instances ofSyntheticEvent, a cross-browser wrapper around the browser\'s native event. It has the same interface as the browser\'s native event, includingstopPropagation()andpreventDefault(), except the events work identically across all browsers.","sidebar":"tutorialSidebar"},"frontend/react/hooks":{"id":"frontend/react/hooks","title":"Hooks","description":"- 1. Introducing Hooks","sidebar":"tutorialSidebar"},"frontend/react/intro":{"id":"frontend/react/intro","title":"Intro","description":"image","sidebar":"tutorialSidebar"},"frontend/react/jsx":{"id":"frontend/react/jsx","title":"JSX","description":"JSX Rules","sidebar":"tutorialSidebar"},"frontend/react/libraries":{"id":"frontend/react/libraries","title":"Libraries","description":"TODO","sidebar":"tutorialSidebar"},"frontend/react/mordern-react-with-redux":{"id":"frontend/react/mordern-react-with-redux","title":"Mordern React with Redux","description":"An Intro to React","sidebar":"tutorialSidebar"},"frontend/react/react-admin-templates":{"id":"frontend/react/react-admin-templates","title":"React admin / Templates","description":"- https://marmelab.com/react-admin/doc/2.8/Authentication.html","sidebar":"tutorialSidebar"},"frontend/react/react-dom":{"id":"frontend/react/react-dom","title":"React DOM","description":"What is DOM?","sidebar":"tutorialSidebar"},"frontend/react/react-native":{"id":"frontend/react/react-native","title":"React Native","description":"Expo","sidebar":"tutorialSidebar"},"frontend/react/react-router":{"id":"frontend/react/react-router","title":"React Router","description":"This is of high significance as it\'s anentry point of your application. There can be several routes in your application and you would need functionalities like validation, authentication, redirection, etc. depending upon the requirement.","sidebar":"tutorialSidebar"},"frontend/react/readme":{"id":"frontend/react/readme","title":"React","description":"- Intro","sidebar":"tutorialSidebar"},"frontend/react/redux":{"id":"frontend/react/redux","title":"Redux","description":"Redux is a library which controls the state of your JavaScript application. It provides a \\"unidirectional data flow\\" that helps to manage and organise data better and makes debugging a lot easier.","sidebar":"tutorialSidebar"},"frontend/react/state":{"id":"frontend/react/state","title":"State","description":"Props vs State","sidebar":"tutorialSidebar"},"frontend/react/tools":{"id":"frontend/react/tools","title":"Tools","description":"https://medium.com/dubizzletechblog/setting-up-prettier-and-eslint-for-js-and-react-apps-bbc779d29062","sidebar":"tutorialSidebar"},"frontend/readme":{"id":"frontend/readme","title":"Frontend","description":"- Frontend","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/chemical-engineering":{"id":"knowledge/applied-sciences/chemical-engineering","title":"Chemical Engineering","description":"Chemical Engineering","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/civil-engineering":{"id":"knowledge/applied-sciences/civil-engineering","title":"Civil Engineering","description":"Civil Engineering","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/control-engineering":{"id":"knowledge/applied-sciences/control-engineering","title":"Control Engineering","description":"Control engineeringorcontrol systems engineeringis an engineering discipline that applies automatic control theory to design systems with desired behaviors in control environments.The discipline of controls overlaps and is usually taught along with electrical engineering at many institutions around the world","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/crash-course-engineering":{"id":"knowledge/applied-sciences/crash-course-engineering","title":"Crash Course Engineering","description":"1. What is engineering","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/electrical-engineering":{"id":"knowledge/applied-sciences/electrical-engineering","title":"Electrical Engineering","description":"- William Gilbert: De Magnete (On a Magnet) - He was the first to describe the phenomena we now associate with electrical attraction and magnetic poles, which is why many view him as the father of electrical studies","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/embedded-systems-electronics":{"id":"knowledge/applied-sciences/embedded-systems-electronics","title":"Embedded Systems / Electronics","description":"Linear-feedback shift register (LSFR)","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/hvac-systems":{"id":"knowledge/applied-sciences/hvac-systems","title":"HVAC Systems","description":"- H - Heating","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/mechanical-engineering":{"id":"knowledge/applied-sciences/mechanical-engineering","title":"Mechanical Engineering","description":"Outline","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/others-power-energy":{"id":"knowledge/applied-sciences/others-power-energy","title":"Others / Power / Energy","description":"Usage","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/readme":{"id":"knowledge/applied-sciences/readme","title":"Applied Sciences","description":"- Crash Course Engineering","sidebar":"tutorialSidebar"},"knowledge/biology/alternative-medicine":{"id":"knowledge/biology/alternative-medicine","title":"Alternative Medicine","description":"Alternative medicine\xa0is any practice that aims to achieve the healing effects of\xa0medicine\xa0despite lacking\xa0biological plausibility,\xa0testability,\xa0repeatability\xa0or evidence of effectiveness.","sidebar":"tutorialSidebar"},"knowledge/biology/digestive-system":{"id":"knowledge/biology/digestive-system","title":"Digestive System","description":"Metabolic chart of the Human Body","sidebar":"tutorialSidebar"},"knowledge/biology/diseases-tests":{"id":"knowledge/biology/diseases-tests","title":"Diseases / Tests","description":"Listening to your own body over a lifetime can tell you far more than any doctor in a small room for a rushed 10 minutes appointment.","sidebar":"tutorialSidebar"},"knowledge/biology/exercise-stretching/gym":{"id":"knowledge/biology/exercise-stretching/gym","title":"Gym","description":"- The best exercise for gaining strength is not missing workouts","sidebar":"tutorialSidebar"},"knowledge/biology/exercise-stretching/gym-nutrition":{"id":"knowledge/biology/exercise-stretching/gym-nutrition","title":"GYM Nutrition","description":"Proteins","sidebar":"tutorialSidebar"},"knowledge/biology/exercise-stretching/gym-routine":{"id":"knowledge/biology/exercise-stretching/gym-routine","title":"Gym Routine","description":"Tips","sidebar":"tutorialSidebar"},"knowledge/biology/exercise-stretching/home-exercise-routine":{"id":"knowledge/biology/exercise-stretching/home-exercise-routine","title":"Home Exercise Routine","description":"Youtube - Athlean X","sidebar":"tutorialSidebar"},"knowledge/biology/exercise-stretching/home-gym":{"id":"knowledge/biology/exercise-stretching/home-gym","title":"Home + Gym","description":"Gym","sidebar":"tutorialSidebar"},"knowledge/biology/exercise-stretching/intro":{"id":"knowledge/biology/exercise-stretching/intro","title":"Exercise / Stretching","description":"Your entire life happens inside your body. It\'s the one home you will always occupy and can never sell.","sidebar":"tutorialSidebar"},"knowledge/biology/exercise-stretching/readme":{"id":"knowledge/biology/exercise-stretching/readme","title":"Exercise / Stretching","description":"- Exercise / Stretching","sidebar":"tutorialSidebar"},"knowledge/biology/genetics":{"id":"knowledge/biology/genetics","title":"Genetics","description":"Phenotype","sidebar":"tutorialSidebar"},"knowledge/biology/human-skeleton":{"id":"knowledge/biology/human-skeleton","title":"Human Skeleton","description":"Thehuman skeletonis the internal framework of the body. It is composed of around 270 bones at birth -- this total decreases to around 206 bones by adulthood after some bones get fused together.The bone mass in the skeleton reaches maximum density around age 21. The human skeleton can be divided into the axial skeleton and the appendicular skeleton. The axial skeleton is formed by the vertebral column, the rib cage, the skull and other associated bones. The appendicular skeleton, which is attached to the axial skeleton, is formed by the shoulder girdle, the pelvic girdle and the bones of the upper and lower limbs.","sidebar":"tutorialSidebar"},"knowledge/biology/intro":{"id":"knowledge/biology/intro","title":"Biology","description":"Live longer","sidebar":"tutorialSidebar"},"knowledge/biology/mbbs-medicine-medical-health":{"id":"knowledge/biology/mbbs-medicine-medical-health","title":"MBBS / Medicine / Medical / Health","description":"The Map of Medicine - YouTube","sidebar":"tutorialSidebar"},"knowledge/biology/muscles":{"id":"knowledge/biology/muscles","title":"Muscles","description":"Muscles","sidebar":"tutorialSidebar"},"knowledge/biology/nerves-system":{"id":"knowledge/biology/nerves-system","title":"Nerves System","description":"Your cranial nerves are pairs of nerves that connect your brain to different parts of your head, neck, and trunk. There are 12 of them, each named for their function or structure.","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/chart":{"id":"knowledge/biology/nutrition/chart","title":"Chart","description":"Sodium is a necessary mineral. But health organizations typically recommend that healthy adults limit sodium intake to less than 2,300 mg (about one teaspoon of salt) per day to prevent conditions like high blood pressure.","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/daily-requirements":{"id":"knowledge/biology/nutrition/daily-requirements","title":"Daily Requirements","description":"Macronutrients","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/diet":{"id":"knowledge/biology/nutrition/diet","title":"Diet","description":"Humans evolved for Feast - famine","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/ecology":{"id":"knowledge/biology/nutrition/ecology","title":"Ecology","description":"Troglobites - animals that live in cave","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/essentiality":{"id":"knowledge/biology/nutrition/essentiality","title":"Essentiality","description":"Essential nutrients","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/fatigue":{"id":"knowledge/biology/nutrition/fatigue","title":"Fatigue","description":"1. Stress","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/food":{"id":"knowledge/biology/nutrition/food","title":"Food","description":"The way you eat not only decides your physical health, but the very way you think, feel, and experience life. -- Sadhguru","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/honey":{"id":"knowledge/biology/nutrition/honey","title":"Honey","description":"1. Honey is the only food that has every single substance to sustain life.","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/intro":{"id":"knowledge/biology/nutrition/intro","title":"Nutrition","description":"Biohacking","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/plants-gardening":{"id":"knowledge/biology/nutrition/plants-gardening","title":"Plants / Gardening","description":"Aloe vera, English ivy air purifying plants","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/pulses-daal-lentils":{"id":"knowledge/biology/nutrition/pulses-daal-lentils","title":"Pulses / Daal / Lentils","description":"How To identify Indian Dals | Basic Cooking Skills For Beginners | Easy Guide To Lentils & Pulses - YouTube","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/readme":{"id":"knowledge/biology/nutrition/readme","title":"Nutrition","description":"- Nutrition","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/recipe":{"id":"knowledge/biology/nutrition/recipe","title":"Recipe","description":"Tips","sidebar":"tutorialSidebar"},"knowledge/biology/omics":{"id":"knowledge/biology/omics","title":"Omics","description":"The branches of\xa0science\xa0known informally as\xa0omics\xa0are various disciplines in\xa0biology\xa0whose names end in the suffix\xa0-omics, such as\xa0genomics,\xa0proteomics,\xa0metabolomics,\xa0metagenomics,\xa0phenomics\xa0and\xa0transcriptomics. Omics aims at the collective characterization and quantification of pools of biological molecules that translate into the structure, function, and dynamics of an organism or organisms.","sidebar":"tutorialSidebar"},"knowledge/biology/organ-systems":{"id":"knowledge/biology/organ-systems","title":"Organ Systems","description":"1. Circulatory system:","sidebar":"tutorialSidebar"},"knowledge/biology/others":{"id":"knowledge/biology/others","title":"Others","description":"Blinkists","sidebar":"tutorialSidebar"},"knowledge/biology/pregnancy-baby":{"id":"knowledge/biology/pregnancy-baby","title":"Pregnancy / Baby","description":"Pregnancy","sidebar":"tutorialSidebar"},"knowledge/biology/readme":{"id":"knowledge/biology/readme","title":"Biology","description":"- Exercise / Stretching","sidebar":"tutorialSidebar"},"knowledge/games/chess":{"id":"knowledge/games/chess","title":"Chess","description":"King - Priceless, Queen - 9, Rook - 5, Bishop (better than knight) - 3, Knight - 3, Pawn - 1","sidebar":"tutorialSidebar"},"knowledge/games/couple-activities":{"id":"knowledge/games/couple-activities","title":"Couple Activities","description":"Activities","sidebar":"tutorialSidebar"},"knowledge/games/family-games-gifts":{"id":"knowledge/games/family-games-gifts","title":"Family Games / Gifts","description":"- Family Weekly game night","sidebar":"tutorialSidebar"},"knowledge/games/marathon-running":{"id":"knowledge/games/marathon-running","title":"Marathon / Running","description":"https://www.youtube.com/watch?v=b-iGZPtWXzE","sidebar":"tutorialSidebar"},"knowledge/games/others":{"id":"knowledge/games/others","title":"Others","description":"PC Games","sidebar":"tutorialSidebar"},"knowledge/games/readme":{"id":"knowledge/games/readme","title":"Games","description":"- Sudoku Techniques","sidebar":"tutorialSidebar"},"knowledge/games/rubix-rubics-cube":{"id":"knowledge/games/rubix-rubics-cube","title":"Rubix Rubics Cube","description":"Formulas","sidebar":"tutorialSidebar"},"knowledge/games/skiing-sking":{"id":"knowledge/games/skiing-sking","title":"Skiing / Sking","description":"- Stance","sidebar":"tutorialSidebar"},"knowledge/games/sudoku-techniques":{"id":"knowledge/games/sudoku-techniques","title":"Sudoku Techniques","description":"https://www.learn-sudoku.com/basic-techniques.html","sidebar":"tutorialSidebar"},"knowledge/games/swimming":{"id":"knowledge/games/swimming","title":"Swimming","description":"0. Warm Up Exercises","sidebar":"tutorialSidebar"},"knowledge/games/touch-typing":{"id":"knowledge/games/touch-typing","title":"Touch Typing","description":"Hunt and Peck Typing","sidebar":"tutorialSidebar"},"knowledge/general/important-dates-timelines":{"id":"knowledge/general/important-dates-timelines","title":"Important Dates / Timelines","description":"| | |","sidebar":"tutorialSidebar"},"knowledge/general/intro":{"id":"knowledge/general/intro","title":"Intro","description":"Knowledge is a familiarity, awareness, or understanding of someone or something, such as facts, information, descriptions, or skills, which is acquired through experience or education by perceiving, discovering), or learning.","sidebar":"tutorialSidebar"},"knowledge/general/knowledge-of-humanity":{"id":"knowledge/general/knowledge-of-humanity","title":"Knowledge of Humanity","description":"Humanities","sidebar":"tutorialSidebar"},"knowledge/general/mental-models":{"id":"knowledge/general/mental-models","title":"Mental Models","description":"Links","sidebar":"tutorialSidebar"},"knowledge/general/others":{"id":"knowledge/general/others","title":"Others","description":"Top 20 Indexes of 2022 | For all competitive exams - YouTube","sidebar":"tutorialSidebar"},"knowledge/general/outline-of-knowledge":{"id":"knowledge/general/outline-of-knowledge","title":"Outline of Knowledge","description":"Knowledge is making the right choice with all the information.","sidebar":"tutorialSidebar"},"knowledge/general/readme":{"id":"knowledge/general/readme","title":"General","description":"- Intro","sidebar":"tutorialSidebar"},"knowledge/general/science":{"id":"knowledge/general/science","title":"Science","description":"Science is not a collection of facts about the world. That is called knowledge.","sidebar":"tutorialSidebar"},"knowledge/geography/continents":{"id":"knowledge/geography/continents","title":"Continents","description":"| Continent | Area (km\xb2) | Area (mi\xb2) | Percent total landmass | Population | Percent total pop. | Most populous city |","sidebar":"tutorialSidebar"},"knowledge/geography/countries":{"id":"knowledge/geography/countries","title":"Countries","description":"Apps","sidebar":"tutorialSidebar"},"knowledge/geography/home-house-building":{"id":"knowledge/geography/home-house-building","title":"Home / House Building","description":"Glass Types - Know The Different Types of Window Glass & Their Uses | AIS Glass","sidebar":"tutorialSidebar"},"knowledge/geography/india":{"id":"knowledge/geography/india","title":"India","description":"Population Distribution","sidebar":"tutorialSidebar"},"knowledge/geography/indian-states-and-uts":{"id":"knowledge/geography/indian-states-and-uts","title":"Indian States and UTs","description":"India is a federal union comprising 28 states and 9 union territories, for a total of 37 entities. The states and union territories are further subdivided into districts and smaller administrative divisions.","sidebar":"tutorialSidebar"},"knowledge/geography/living":{"id":"knowledge/geography/living","title":"Living","description":"Digital Nomad","sidebar":"tutorialSidebar"},"knowledge/geography/new-home-place-house":{"id":"knowledge/geography/new-home-place-house","title":"New Home / Place Buying / House","description":"Living","sidebar":"tutorialSidebar"},"knowledge/geography/others":{"id":"knowledge/geography/others","title":"Others","description":"Summer Solstice - 21 June, 22 June","sidebar":"tutorialSidebar"},"knowledge/geography/readme":{"id":"knowledge/geography/readme","title":"Geography","description":"- Continents","sidebar":"tutorialSidebar"},"knowledge/geography/rivers":{"id":"knowledge/geography/rivers","title":"Rivers","description":"Important Geographical Terms Features Landforms Of Earth","sidebar":"tutorialSidebar"},"knowledge/geography/wildlife":{"id":"knowledge/geography/wildlife","title":"Wildlife","description":"IUCN Red List of Threatened Species","sidebar":"tutorialSidebar"},"knowledge/history/crash-course-history-of-science":{"id":"knowledge/history/crash-course-history-of-science","title":"Crash Course History of Science","description":"Nullius in verba - in no one words","sidebar":"tutorialSidebar"},"knowledge/history/crash-course-world-history":{"id":"knowledge/history/crash-course-world-history","title":"Crash Course World History","description":"Crash Course World History 1","sidebar":"tutorialSidebar"},"knowledge/history/histomap":{"id":"knowledge/history/histomap","title":"Histomap","description":"Timeline of World History | Major Time Periods & Ages","sidebar":"tutorialSidebar"},"knowledge/history/human-history-anthropology":{"id":"knowledge/history/human-history-anthropology","title":"Human History / Anthropology","description":"Human Origins 101 | National Geographic - YouTube","sidebar":"tutorialSidebar"},"knowledge/history/indian-history-timeline":{"id":"knowledge/history/indian-history-timeline","title":"Indian History Timeline","description":"Books","sidebar":"tutorialSidebar"},"knowledge/history/others":{"id":"knowledge/history/others","title":"Others","description":"Blinkist - The future is history","sidebar":"tutorialSidebar"},"knowledge/history/readme":{"id":"knowledge/history/readme","title":"History","description":"- Histomap","sidebar":"tutorialSidebar"},"knowledge/history/religion":{"id":"knowledge/history/religion","title":"Religion","description":"What has religion done for this world? - Quora","sidebar":"tutorialSidebar"},"knowledge/language/figures-of-speech":{"id":"knowledge/language/figures-of-speech","title":"Figures of Speech","description":"A word or phrase used in a non-literal sense for rhetorical or vivid effect","sidebar":"tutorialSidebar"},"knowledge/language/general":{"id":"knowledge/language/general","title":"General","description":"Subject Object Verbs","sidebar":"tutorialSidebar"},"knowledge/language/grammer-vocabulary":{"id":"knowledge/language/grammer-vocabulary","title":"Grammer / Vocabulary","description":"In linguistics]$1 $2) is the set of [structural rules governing the composition of clauses), phrases and words in a natural language. The term refers also to the study of such rules and this field includes phonology, morphology) and syntax, often complemented by phonetics, semantics and pragmatics.","sidebar":"tutorialSidebar"},"knowledge/language/languages-others":{"id":"knowledge/language/languages-others","title":"Languages Others","description":"What Is Wrong With Hindi? - YouTube","sidebar":"tutorialSidebar"},"knowledge/language/linguistics":{"id":"knowledge/language/linguistics","title":"Linguistics","description":"Writing Systems of the World | Abjads, Alphabets, Abugidas, Syllabaries & Logosyllabaries","sidebar":"tutorialSidebar"},"knowledge/language/mistakes":{"id":"knowledge/language/mistakes","title":"Mistakes","description":"Usage Mistakes","sidebar":"tutorialSidebar"},"knowledge/language/parts-of-speech":{"id":"knowledge/language/parts-of-speech","title":"Parts of Speech","description":"The eight parts of speech are nouns, pronouns, verbs, adjectives, adverbs, conjunctions, prepositions, and interjections.","sidebar":"tutorialSidebar"},"knowledge/language/readme":{"id":"knowledge/language/readme","title":"Language","description":"- General","sidebar":"tutorialSidebar"},"knowledge/language/spanish":{"id":"knowledge/language/spanish","title":"Spanish","description":"Duolingo Spanish Podcast","sidebar":"tutorialSidebar"},"knowledge/law/constitution-of-india/constitution":{"id":"knowledge/law/constitution-of-india/constitution","title":"Constitution of India","description":"Original","sidebar":"tutorialSidebar"},"knowledge/law/constitution-of-india/others":{"id":"knowledge/law/constitution-of-india/others","title":"Others","description":"9 Dec 1946 - Started writing","sidebar":"tutorialSidebar"},"knowledge/law/constitution-of-india/schedules":{"id":"knowledge/law/constitution-of-india/schedules","title":"Schedules","description":"Schedules - Additional details (like languages list)","sidebar":"tutorialSidebar"},"knowledge/law/judgements-2023":{"id":"knowledge/law/judgements-2023","title":"Judgements 2023","description":"25 Judgements of 2023","sidebar":"tutorialSidebar"},"knowledge/law/laws":{"id":"knowledge/law/laws","title":"Laws","description":"Thoughts","sidebar":"tutorialSidebar"},"knowledge/law/lsat":{"id":"knowledge/law/lsat","title":"LSAT","description":"LSAT (Law School Admission Test) (Score - 120 to 180, above 160 is good)","sidebar":"tutorialSidebar"},"knowledge/law/mcat":{"id":"knowledge/law/mcat","title":"MCAT","description":"CARS - Critical Analysis and Reasoning Skills","sidebar":"tutorialSidebar"},"knowledge/law/others":{"id":"knowledge/law/others","title":"Others","description":"RPAD (Registered Post with Acknowledgement Due)","sidebar":"tutorialSidebar"},"knowledge/law/readme":{"id":"knowledge/law/readme","title":"Law","description":"- Laws","sidebar":"tutorialSidebar"},"knowledge/links":{"id":"knowledge/links","title":"Links","description":"Daily","sidebar":"tutorialSidebar"},"knowledge/others/chemistry-outline":{"id":"knowledge/others/chemistry-outline","title":"Chemistry","description":"- Agrochemistry","sidebar":"tutorialSidebar"},"knowledge/others/climate-change":{"id":"knowledge/others/climate-change","title":"Climate Change","description":"Earth overshoot day - 27 July","sidebar":"tutorialSidebar"},"knowledge/others/clothes-textiles":{"id":"knowledge/others/clothes-textiles","title":"Cloth Fibers / Textiles","description":"1. Cotton","sidebar":"tutorialSidebar"},"knowledge/others/education-phd":{"id":"knowledge/others/education-phd","title":"Education / PhD","description":"Education is not preparation for life; education is life itself.","sidebar":"tutorialSidebar"},"knowledge/others/international-relations-ir":{"id":"knowledge/others/international-relations-ir","title":"International Relations IR","description":"In international relations there are no permanent friends or enemies only permanent interests","sidebar":"tutorialSidebar"},"knowledge/others/mythology":{"id":"knowledge/others/mythology","title":"Mythology","description":"Akshay Patra","sidebar":"tutorialSidebar"},"knowledge/others/news-problems":{"id":"knowledge/others/news-problems","title":"News / Problems","description":"\\"We are in a debt trap\\" - Nouriel Roubini on 10 \u2018megathreats\u2019 to our world and how to stop them - YouTube","sidebar":"tutorialSidebar"},"knowledge/others/others":{"id":"knowledge/others/others","title":"Others","description":"Poverty","sidebar":"tutorialSidebar"},"knowledge/others/philosophy":{"id":"knowledge/others/philosophy","title":"Philosophy","description":"Outline","sidebar":"tutorialSidebar"},"knowledge/others/politics/indian-polity":{"id":"knowledge/others/politics/indian-polity","title":"India Polity","description":"Complete M Laxmikanth Polity in 100 Parts by Dr Sidharth Arora | Crack UPSC CSE/IAS 2021/22/23","sidebar":"tutorialSidebar"},"knowledge/others/politics/others":{"id":"knowledge/others/politics/others","title":"Others","description":"Free Speech","sidebar":"tutorialSidebar"},"knowledge/others/politics/readme":{"id":"knowledge/others/politics/readme","title":"Politics","description":"Lennon will always remain a freedom seeker, a liberal globalizer who dreamed of a world with no country, with nothing to kill or die for, and no religion too. Impossible? Maybe , but dreams need to go beyond the mere possible.","sidebar":"tutorialSidebar"},"knowledge/others/politics/types-of-governments":{"id":"knowledge/others/politics/types-of-governments","title":"Types of Governments","description":"turtles move slow, the government moves slower","sidebar":"tutorialSidebar"},"knowledge/others/readme":{"id":"knowledge/others/readme","title":"Others","description":"- Politics","sidebar":"tutorialSidebar"},"knowledge/physics/astronomy":{"id":"knowledge/physics/astronomy","title":"Astronomy","description":"Earth\'s motion around the Sun, not as simple as I thought","sidebar":"tutorialSidebar"},"knowledge/physics/crash-course-physics":{"id":"knowledge/physics/crash-course-physics","title":"Crash Course Physics","description":"1. Motion in a Straight Line","sidebar":"tutorialSidebar"},"knowledge/physics/intro":{"id":"knowledge/physics/intro","title":"Intro","description":"1. Retrocausality - That future can effect the past. Ex - if I spill the coffee tomorrow then I can see the stain today.","sidebar":"tutorialSidebar"},"knowledge/physics/khan-academy-physics":{"id":"knowledge/physics/khan-academy-physics","title":"Khan Academy Physics","description":"1. One-dimensional motion","sidebar":"tutorialSidebar"},"knowledge/physics/others":{"id":"knowledge/physics/others","title":"Others","description":"Wave-particle duality","sidebar":"tutorialSidebar"},"knowledge/physics/readme":{"id":"knowledge/physics/readme","title":"Physics","description":"- Intro","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/business-management":{"id":"knowledge/quotes-proverbs/business-management","title":"Business / Management","description":"97.42% is a fictional number that figuratively conveys the idea of a significant percentage","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/coding":{"id":"knowledge/quotes-proverbs/coding","title":"Coding","description":"Only ~0.3% of the world\'s population today can code, and this small group has built all of the world\'s ~6.3 million mobile apps. Which means that 99.7% of the world fully depends on 0.3%, which is huge","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/funny":{"id":"knowledge/quotes-proverbs/funny","title":"Funny","description":"Once I was travelling by train from Mumbai to Delhi!","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/habits":{"id":"knowledge/quotes-proverbs/habits","title":"Habits","description":"When in doubt do","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/hindi":{"id":"knowledge/quotes-proverbs/hindi","title":"Hindi","description":"\u0930\u0939\u093f\u092e\u0928 \u0927\u093e\u0917\u093e \u092a\u094d\u0930\u0947\u092e \u0915\u093e, \u092e\u0924 \u0924\u094b\u0930\u094b \u091a\u091f\u0915\u093e\u092f | \u091f\u0942\u091f\u0947 \u092a\u0947 \u092b\u093f\u0930 \u0928\u093e \u091c\u0941\u0930\u0947, \u091c\u0941\u0930\u0947 \u0917\u093e\u0901\u0920 \u092a\u0930\u0940 \u091c\u093e\u092f || -- Kabir Doha","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/life":{"id":"knowledge/quotes-proverbs/life","title":"Life","description":"It\u2019s almost always about money.","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/motivation":{"id":"knowledge/quotes-proverbs/motivation","title":"Motivation","description":"Quotes","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/my-quotes":{"id":"knowledge/quotes-proverbs/my-quotes","title":"My Quotes","description":"Pros outweight the cons","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/poems":{"id":"knowledge/quotes-proverbs/poems","title":"Poems","description":"The Cookie Thief by Valerie Cox","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/readme":{"id":"knowledge/quotes-proverbs/readme","title":"Quotes Proverbs","description":"- Life","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/science":{"id":"knowledge/quotes-proverbs/science","title":"Science","description":"Science is a 6 decimal approximation to real knowledge","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/stories":{"id":"knowledge/quotes-proverbs/stories","title":"Stories","description":"Two men were sent to Africa on reporting if shoes can be a viable business.","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/tatoos-quotes":{"id":"knowledge/quotes-proverbs/tatoos-quotes","title":"Tatoos Quotes","description":"||||| (number of jobs you changed, getting new line when get a new job)","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/tips":{"id":"knowledge/quotes-proverbs/tips","title":"Tips","description":"To improve, compare little things.","sidebar":"tutorialSidebar"},"knowledge/readme":{"id":"knowledge/readme","title":"Knowledge","description":"- General","sidebar":"tutorialSidebar"},"knowledge/youtube-podcasts-magazine-apps":{"id":"knowledge/youtube-podcasts-magazine-apps","title":"Youtube / Podcasts / Magazine / Apps","description":"Youtube","sidebar":"tutorialSidebar"},"languages/c++/constructor":{"id":"languages/c++/constructor","title":"Constructor","description":"1. Default Constructor","sidebar":"tutorialSidebar"},"languages/c++/frameworks":{"id":"languages/c++/frameworks","title":"Frameworks","description":"Qt (pronounced cute)","sidebar":"tutorialSidebar"},"languages/c++/friend-function":{"id":"languages/c++/friend-function","title":"Friend Function","description":"A friend function of a class is defined outside that class\' scope but it has the right to access all private and protected members of the class. Even though the prototypes for friend functions appear in the class definition, friends are not member functions.","sidebar":"tutorialSidebar"},"languages/c++/header-files":{"id":"languages/c++/header-files","title":"Header files","description":"","sidebar":"tutorialSidebar"},"languages/c++/intro":{"id":"languages/c++/intro","title":"Intro","description":"C++ is a compiled language. For a program to run, its source text has to be processed by a compiler, producing object files, which are combined by a linker yielding an executable program. A C++ program typically consists of many source code files (usually simply called source files).","sidebar":"tutorialSidebar"},"languages/c++/io":{"id":"languages/c++/io","title":"IO","description":"Char input","sidebar":"tutorialSidebar"},"languages/c++/others":{"id":"languages/c++/others","title":"Others","description":"Log2","sidebar":"tutorialSidebar"},"languages/c++/printf":{"id":"languages/c++/printf","title":"printf","description":"A format specifier follows this prototype:","sidebar":"tutorialSidebar"},"languages/c++/readme":{"id":"languages/c++/readme","title":"C++","description":"- Intro","sidebar":"tutorialSidebar"},"languages/c++/stl-containers":{"id":"languages/c++/stl-containers","title":"STL Containers","description":"1. Sequences","sidebar":"tutorialSidebar"},"languages/c++/stl-iterators-algorithms":{"id":"languages/c++/stl-iterators-algorithms","title":"STL Iterators Algorithms","description":"C++ Iterators","sidebar":"tutorialSidebar"},"languages/c++/storage-classes":{"id":"languages/c++/storage-classes","title":"Storage classes","description":"https://www.tutorialspoint.com/cplusplus/cppstorageclasses.htm","sidebar":"tutorialSidebar"},"languages/c++/tc-pl4":{"id":"languages/c++/tc-pl4","title":"TC++PL4","description":"Part I: Introductory Material","sidebar":"tutorialSidebar"},"languages/c++/templates":{"id":"languages/c++/templates","title":"Templates","description":"http://www.geeksforgeeks.org/templates-cpp","sidebar":"tutorialSidebar"},"languages/frameworks/android/jetpack":{"id":"languages/frameworks/android/jetpack","title":"Jetpack","description":"Jetpack is a set of libraries, tools and architectural guidance to help make it quick and easy to build great Android apps. It provides common infrastructure code so you can focus on what makes your app unique.","sidebar":"tutorialSidebar"},"languages/frameworks/android/kotlin":{"id":"languages/frameworks/android/kotlin","title":"Kotlin","description":"https://proandroiddev.com/android-unidirectional-state-flow-without-rx-596f2f7637bb","sidebar":"tutorialSidebar"},"languages/frameworks/android/questions":{"id":"languages/frameworks/android/questions","title":"Questions","description":"Activity Lifecycle","sidebar":"tutorialSidebar"},"languages/frameworks/android/readme":{"id":"languages/frameworks/android/readme","title":"Android","description":"- jetpack","sidebar":"tutorialSidebar"},"languages/frameworks/android/service":{"id":"languages/frameworks/android/service","title":"Service","description":"A Service is an application component that can perform long-running operations in the background. It does not provide a user interface. Once started, a service might continue running for some time, even after the user switches to another application. Additionally, a component can bind to a service to interact with it and even perform interprocess communication (IPC). For example, a service can handle network transactions, play music, perform file I/O, or interact with a content provider, all from the background.","sidebar":"tutorialSidebar"},"languages/frameworks/android/testing":{"id":"languages/frameworks/android/testing","title":"Testing","description":"Android Code analysis tools","sidebar":"tutorialSidebar"},"languages/frameworks/android/tools":{"id":"languages/frameworks/android/tools","title":"Tools","description":"- Hierarchy Viewer","sidebar":"tutorialSidebar"},"languages/frameworks/comparison":{"id":"languages/frameworks/comparison","title":"Comparison","description":"Python vs Nodejs","sidebar":"tutorialSidebar"},"languages/frameworks/dash":{"id":"languages/frameworks/dash","title":"Dash","description":"Dash is a productive Python framework for building web applications.","sidebar":"tutorialSidebar"},"languages/frameworks/flutter":{"id":"languages/frameworks/flutter","title":"Flutter","description":"Flutter is used to develop apps that run on Android and iOS and deliver the same user experience. Flutter will also be able to target Fuchsia, the upcoming OS from Google","sidebar":"tutorialSidebar"},"languages/frameworks/intro":{"id":"languages/frameworks/intro","title":"Intro","description":"Web Framework","sidebar":"tutorialSidebar"},"languages/frameworks/ios":{"id":"languages/frameworks/ios","title":"iOS","description":"- Swift, Objective-C","sidebar":"tutorialSidebar"},"languages/frameworks/masonite":{"id":"languages/frameworks/masonite","title":"Masonite","description":"The Modern And Developer Centric Python Web Framework.","sidebar":"tutorialSidebar"},"languages/frameworks/others":{"id":"languages/frameworks/others","title":"Others","description":"OpenCL","sidebar":"tutorialSidebar"},"languages/frameworks/readme":{"id":"languages/frameworks/readme","title":"Frameworks","description":"- Intro","sidebar":"tutorialSidebar"},"languages/frameworks/server-driven-mobile-uis":{"id":"languages/frameworks/server-driven-mobile-uis","title":"Server Driven Mobile UIs","description":"Apps","sidebar":"tutorialSidebar"},"languages/frameworks/stacks":{"id":"languages/frameworks/stacks","title":"Stacks","description":"Java stack","sidebar":"tutorialSidebar"},"languages/golang/concepts":{"id":"languages/golang/concepts","title":"Concepts","description":"Goroutines & Channels","sidebar":"tutorialSidebar"},"languages/golang/data-types":{"id":"languages/golang/data-types","title":"Data Types","description":"1. Boolean types","sidebar":"tutorialSidebar"},"languages/golang/examples":{"id":"languages/golang/examples","title":"Examples","description":"https://github.com/marcel-dempers/docker-development-youtube-series/blob/master/messaging/rabbitmq/applications/publisher/publisher.go","sidebar":"tutorialSidebar"},"languages/golang/hello-world":{"id":"languages/golang/hello-world","title":"Hello World","description":"hello.go","sidebar":"tutorialSidebar"},"languages/golang/interview-questions":{"id":"languages/golang/interview-questions","title":"Interview Questions","description":"1. Using\xa0sync.Mutex\xa0in Go","sidebar":"tutorialSidebar"},"languages/golang/intro":{"id":"languages/golang/intro","title":"Intro","description":"Go language is a programming language initially developed at Google in the year 2007 by Robert Griesemer, Rob Pike, and Ken Thompson. It is a statically-typed language having syntax similar to that of C.","sidebar":"tutorialSidebar"},"languages/golang/readme":{"id":"languages/golang/readme","title":"golang","description":"- Intro","sidebar":"tutorialSidebar"},"languages/golang/syntax":{"id":"languages/golang/syntax","title":"Syntax","description":"Reserved Words","sidebar":"tutorialSidebar"},"languages/golang/testing":{"id":"languages/golang/testing","title":"Testing","description":"|Tool|Description|Features|Pros|Cons|","sidebar":"tutorialSidebar"},"languages/golang/tools":{"id":"languages/golang/tools","title":"Tools","description":"dep","sidebar":"tutorialSidebar"},"languages/java/collections":{"id":"languages/java/collections","title":"Collections","description":"Acollection--- sometimes called a container - is simply an object that groups multiple elements into a single unit. Collections are used to store, retrieve, manipulate, and communicate aggregate data.","sidebar":"tutorialSidebar"},"languages/java/comparable-interface":{"id":"languages/java/comparable-interface","title":"Comparable Interface","description":"image","sidebar":"tutorialSidebar"},"languages/java/concurrency":{"id":"languages/java/concurrency","title":"Concurrency","description":"Concurrent Modification","sidebar":"tutorialSidebar"},"languages/java/defining-constants":{"id":"languages/java/defining-constants","title":"Defining Constants","description":"","sidebar":"tutorialSidebar"},"languages/java/frameworks":{"id":"languages/java/frameworks","title":"Frameworks","description":"Micronaut","sidebar":"tutorialSidebar"},"languages/java/hash-collection":{"id":"languages/java/hash-collection","title":"Hash Collection","description":"SparseArray","sidebar":"tutorialSidebar"},"languages/java/intro":{"id":"languages/java/intro","title":"Intro","description":"Installation","sidebar":"tutorialSidebar"},"languages/java/jmx":{"id":"languages/java/jmx","title":"JMX","description":"The Java Management Extensions (JMX) API is a standard -developed through the\xa0Java Community Process\xa0(JCP) as\xa0JSR 3-for managing and monitoring applications and services. It defines a management architecture, design patterns, APIs, and services for building web-based, distributed, dynamic, and modular solutions to manage Java-enabled resources. The JMX APIs make it possible to add manageability to Java-enabled equipment, from web phones to set-top boxes to network devices and servers. Using JMX technology to manage applications and services increases their value to vendors and clients by making applications easier to install, configure, and maintain.","sidebar":"tutorialSidebar"},"languages/java/jvm-architecture":{"id":"languages/java/jvm-architecture","title":"JVM Architecture","description":"image","sidebar":"tutorialSidebar"},"languages/java/knowledge":{"id":"languages/java/knowledge","title":"Knowledge","description":"- Parent class can hold child class reference but not vice-versa","sidebar":"tutorialSidebar"},"languages/java/lambda-expressions":{"id":"languages/java/lambda-expressions","title":"Lambda Expressions","description":"A lambda expression is an unnamed function with parameters and a body.","sidebar":"tutorialSidebar"},"languages/java/libraries":{"id":"languages/java/libraries","title":"Libraries","description":"jvisualvm","sidebar":"tutorialSidebar"},"languages/java/others":{"id":"languages/java/others","title":"Others","description":"Jshell for java REPL (Read-Eval-Print Loop, interactive toplevel or language shell)","sidebar":"tutorialSidebar"},"languages/java/questions":{"id":"languages/java/questions","title":"Questions","description":"Topics","sidebar":"tutorialSidebar"},"languages/java/readme":{"id":"languages/java/readme","title":"Java","description":"- Intro","sidebar":"tutorialSidebar"},"languages/java/reflection":{"id":"languages/java/reflection","title":"Reflection","description":"Reflection is an api used to examine or modify the behavior of methods, classes or interfaces at runtime.","sidebar":"tutorialSidebar"},"languages/java/spring":{"id":"languages/java/spring","title":"Spring","description":"Spring Boot","sidebar":"tutorialSidebar"},"languages/java/template-fastio":{"id":"languages/java/template-fastio","title":"Template FastIO","description":"","sidebar":"tutorialSidebar"},"languages/java/threading-in-javafx":{"id":"languages/java/threading-in-javafx","title":"Threading in JavaFX","description":"JavaFX Scene Graph","sidebar":"tutorialSidebar"},"languages/others/erlang":{"id":"languages/others/erlang","title":"Erlang","description":"Erlang is a programming language used to build massively scalable soft real-time systems with requirements on high availability. Some of its uses are in telecoms, banking, e-commerce, computer telephony and instant messaging. Erlang\'s runtime system has built-in support for concurrency, distribution and fault tolerance.","sidebar":"tutorialSidebar"},"languages/others/general":{"id":"languages/others/general","title":"General","description":"Domain Specific Languages (DSLs)","sidebar":"tutorialSidebar"},"languages/others/javascript-templating":{"id":"languages/others/javascript-templating","title":"JavaScript Templating","description":"https://medium.com/@BuildMySite1/javascript-templating-what-is-templating-7ff49d97db6b","sidebar":"tutorialSidebar"},"languages/others/json":{"id":"languages/others/json","title":"JSON","description":"JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. It is based on a subset of the JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999. JSON is a text format that is completely language independent but uses conventions that are familiar to programmers of the C-family of languages, including C, C++, C#, Java, JavaScript, Perl, Python, and many others. These properties make JSON an ideal data-interchange language.","sidebar":"tutorialSidebar"},"languages/others/markdown":{"id":"languages/others/markdown","title":"Markdown","description":"Markdown is a way to style text on the web. You control the display of the document; formatting words as bold or italic, adding images, and creating lists are just a few of the things we can do with Markdown. Mostly, Markdown is just regular text with a few non-alphabetic characters thrown in, like # or *.","sidebar":"tutorialSidebar"},"languages/others/other-languages":{"id":"languages/others/other-languages","title":"Other Languages","description":"https://dev.to/raygun/top-43-programming-languages-when-and-how-to-use-them-515n","sidebar":"tutorialSidebar"},"languages/others/r-language":{"id":"languages/others/r-language","title":"R","description":"Introduction","sidebar":"tutorialSidebar"},"languages/others/readme":{"id":"languages/others/readme","title":"Other Languages","description":"- General","sidebar":"tutorialSidebar"},"languages/others/regular-expressions-regex":{"id":"languages/others/regular-expressions-regex","title":"Regular Expressions / Regex","description":"Its different from wildcards (Wildcards have very few metacharacters than Regular Expressions)","sidebar":"tutorialSidebar"},"languages/others/ruby":{"id":"languages/others/ruby","title":"Ruby","description":"Gems","sidebar":"tutorialSidebar"},"languages/others/rust":{"id":"languages/others/rust","title":"Rust","description":"Rust is a multi-paradigmsystem programming language focused on safety, especially safe concurrency).Rust is syntactically) similar to C++, but is designed to provide better memory safety while maintaining high performance).","sidebar":"tutorialSidebar"},"languages/others/scala":{"id":"languages/others/scala","title":"Scala","description":"Scalais a general-purposeprogramming language providing support for functional programming and a strong statictype system. Designed to be concise, many of Scala\'s design decisions aimed to address criticisms of Java.","sidebar":"tutorialSidebar"},"languages/others/swift":{"id":"languages/others/swift","title":"Swift","description":"Basic Syntax -","sidebar":"tutorialSidebar"},"languages/others/tla-plus":{"id":"languages/others/tla-plus","title":"TLA+","description":"TLA+(pronounced astee ell a plus, /\u02c8ti\u02d0\u025ble\u026apl\u028cs/) is a formal specification language developed by Leslie Lamport. It is used to design, model, document, and verify concurrent systems. TLA+has been described as exhaustively-testable pseudocode, and its use likened to drawing blueprints for software systems;TLAis an acronym for Temporal Logic of Actions.","sidebar":"tutorialSidebar"},"languages/others/toml":{"id":"languages/others/toml","title":"TOML","description":"Tom\'s Obvious, Minimal Language","sidebar":"tutorialSidebar"},"languages/others/web-assembly":{"id":"languages/others/web-assembly","title":"Web Assembly","description":"https://medium.com/javascript-scene/what-is-webassembly-the-dawn-of-a-new-era-61256ec5a8f6","sidebar":"tutorialSidebar"},"languages/others/yaml":{"id":"languages/others/yaml","title":"Yaml","description":"YAML Ain\'t Markup Language is a data serialization language that matches user\'s expectations about data. It designed to be human friendly and works perfectly with other programming languages. It is useful to manage data and includes Unicode printable characters. This chapter will give you an introduction to YAML and gives you an idea about its features.","sidebar":"tutorialSidebar"},"languages/php/codeigniter/application-architecture":{"id":"languages/php/codeigniter/application-architecture","title":"Application Architecture","description":"Application Architecture","sidebar":"tutorialSidebar"},"languages/php/codeigniter/basic-concepts":{"id":"languages/php/codeigniter/basic-concepts","title":"Basic Concepts","description":"Routing","sidebar":"tutorialSidebar"},"languages/php/codeigniter/commands":{"id":"languages/php/codeigniter/commands","title":"Commands","description":"Dockerfile","sidebar":"tutorialSidebar"},"languages/php/codeigniter/configurations":{"id":"languages/php/codeigniter/configurations","title":"Configurations","description":"The database of the site can be configured in application/config/database.php file. Often we need to set up database for different environment like development and production. With the multidimensional array provided in the CodeIgniter, we can setup database for different environment. The configuration settings are stored in the array as shown below \u2212","sidebar":"tutorialSidebar"},"languages/php/codeigniter/helpers-functions":{"id":"languages/php/codeigniter/helpers-functions","title":"Helpers / Functions","description":"As the name suggests, it will help you build your system. It is divided into small functions to serve different functionality. A number of helpers are available in CodeIgniter, which are listed in the table below. We can build our own helpers too.","sidebar":"tutorialSidebar"},"languages/php/codeigniter/http":{"id":"languages/php/codeigniter/http","title":"HTTP","description":"Working with Requests and Responses","sidebar":"tutorialSidebar"},"languages/php/codeigniter/intro":{"id":"languages/php/codeigniter/intro","title":"CodeIgniter","description":"CodeIgniter is a powerful PHP framework with a very small footprint, built for developers who need a simple and elegant toolkit to create full-featured web applications. CodeIgniter was created by EllisLab, and is now a project of the British Columbia Institute of Technology.","sidebar":"tutorialSidebar"},"languages/php/codeigniter/mvc":{"id":"languages/php/codeigniter/mvc","title":"MVC","description":"image","sidebar":"tutorialSidebar"},"languages/php/codeigniter/others":{"id":"languages/php/codeigniter/others","title":"Others","description":"Logging","sidebar":"tutorialSidebar"},"languages/php/codeigniter/readme":{"id":"languages/php/codeigniter/readme","title":"CodeIgnitor","description":"- CodeIgniter","sidebar":"tutorialSidebar"},"languages/php/documentation":{"id":"languages/php/documentation","title":"Documentation","description":"- Language Reference","sidebar":"tutorialSidebar"},"languages/php/example":{"id":"languages/php/example","title":"Example","description":"","sidebar":"tutorialSidebar"},"languages/php/frameworks":{"id":"languages/php/frameworks","title":"Frameworks","description":"https://kinsta.com/blog/php-frameworks","sidebar":"tutorialSidebar"},"languages/php/intro":{"id":"languages/php/intro","title":"Intro","description":"PHPis a general-purpose programming language originally designed for web development. It was originally created by Rasmus Lerdorf in 1994;the PHP reference implementation is now produced by The PHP Group.PHP originally stood forPersonal Home Page, but it now stands for the recursive initialism PHP: Hypertext Preprocessor.","sidebar":"tutorialSidebar"},"languages/php/operators":{"id":"languages/php/operators","title":"Operators","description":"- Arithmetic Operators","sidebar":"tutorialSidebar"},"languages/php/others":{"id":"languages/php/others","title":"Others","description":"PHP Package Manager","sidebar":"tutorialSidebar"},"languages/php/readme":{"id":"languages/php/readme","title":"PHP","description":"- Intro","sidebar":"tutorialSidebar"},"languages/php/syntax":{"id":"languages/php/syntax","title":"Syntax","description":"Compile-time constants","sidebar":"tutorialSidebar"},"languages/php/web-concepts":{"id":"languages/php/web-concepts","title":"Web Concepts","description":"Browser Redirection","sidebar":"tutorialSidebar"},"languages/readme":{"id":"languages/readme","title":"Languages","description":"- SQL","sidebar":"tutorialSidebar"},"languages/sql/concepts":{"id":"languages/sql/concepts","title":"Concepts","description":"Predicate","sidebar":"tutorialSidebar"},"languages/sql/cte-subquery":{"id":"languages/sql/cte-subquery","title":"CTE / Subquery","description":"SQL Subqueries","sidebar":"tutorialSidebar"},"languages/sql/databricks-sql":{"id":"languages/sql/databricks-sql","title":"Databricks SQL","description":"SQL language reference | Databricks on AWS","sidebar":"tutorialSidebar"},"languages/sql/databricks-sql-functions":{"id":"languages/sql/databricks-sql-functions","title":"Databricks SQL Functions","description":"Built-in functions | Databricks on AWS","sidebar":"tutorialSidebar"},"languages/sql/dcl-data-control-language":{"id":"languages/sql/dcl-data-control-language","title":"DCL - Data Control Language","description":"Data Control Language (DCL) / Data Management Language (DML)","sidebar":"tutorialSidebar"},"languages/sql/ddl-data-definition-language/create-table":{"id":"languages/sql/ddl-data-definition-language/create-table","title":"Create Table","description":"CREATE TABLE","sidebar":"tutorialSidebar"},"languages/sql/ddl-data-definition-language/readme":{"id":"languages/sql/ddl-data-definition-language/readme","title":"DDL - Data Definition Language","description":"DDL (Data Definition Language)","sidebar":"tutorialSidebar"},"languages/sql/ddl-data-definition-language/truncate-delete":{"id":"languages/sql/ddl-data-definition-language/truncate-delete","title":"Truncate vs Delete","description":"| Truncate | Delete |","sidebar":"tutorialSidebar"},"languages/sql/dml-data-manipulation-language":{"id":"languages/sql/dml-data-manipulation-language","title":"DML - Data Manipulation Language","description":"DML (Data Manipulation Language) commands need to be commited/rolled back","sidebar":"tutorialSidebar"},"languages/sql/dql-data-query-language/aggregation-queries":{"id":"languages/sql/dql-data-query-language/aggregation-queries","title":"Aggregation Queries","description":"AVG","sidebar":"tutorialSidebar"},"languages/sql/dql-data-query-language/analytical-queries":{"id":"languages/sql/dql-data-query-language/analytical-queries","title":"Analytical Queries","description":"Aggregate functions perform calculations based on sets of rows","sidebar":"tutorialSidebar"},"languages/sql/dql-data-query-language/readme":{"id":"languages/sql/dql-data-query-language/readme","title":"DQL - Data Query Language","description":"Gotchas / Keep in mind","sidebar":"tutorialSidebar"},"languages/sql/dql-data-query-language/window-functions":{"id":"languages/sql/dql-data-query-language/window-functions","title":"Window Functions","description":"Window functions can be simply explained as calculation functions similar to aggregating, but where normal aggregating via the GROUP BY clause combines then hides the individual rows being aggregated, window functions have access to individual rows and can add some of the attributes from those rows into the result set.","sidebar":"tutorialSidebar"},"languages/sql/functions":{"id":"languages/sql/functions","title":"Functions","description":"MySQL String Functions","sidebar":"tutorialSidebar"},"languages/sql/intro":{"id":"languages/sql/intro","title":"Intro","description":"SQL is a declarative language, you tell the system what do you want, and system figures it out how to give it to you","sidebar":"tutorialSidebar"},"languages/sql/join-algorithms":{"id":"languages/sql/join-algorithms","title":"Join Algorithms","description":"nested loop join","sidebar":"tutorialSidebar"},"languages/sql/keys":{"id":"languages/sql/keys","title":"Keys","description":"Keys","sidebar":"tutorialSidebar"},"languages/sql/operators-wildcards":{"id":"languages/sql/operators-wildcards","title":"Operators / Wildcards","description":"SQL Arithmetic Operators","sidebar":"tutorialSidebar"},"languages/sql/others":{"id":"languages/sql/others","title":"Others","description":"When should I use a unique constraint instead of a unique index","sidebar":"tutorialSidebar"},"languages/sql/partiql":{"id":"languages/sql/partiql","title":"PartiQL","description":"Data may also reside in the data lake, stored in formats that may lack schema, or may involve nesting or multiple values (e.g., Parquet, JSON). Every different type and flavor of data store may suit a particular use case, but each also comes with its own query language. The result is tight coupling between the query language and the format in which data is stored. Hence, if you want to change your data to another format, or change the database engine you use to access/process that data (which is not uncommon in a data lake world), or change the location of your data, you may also need to change your application and queries. This is a very large obstacle to the agility and flexibility needed to effectively use data lakes.","sidebar":"tutorialSidebar"},"languages/sql/postgres-commands":{"id":"languages/sql/postgres-commands","title":"Postgres Commands","description":"psql - start postgres sql query engine","sidebar":"tutorialSidebar"},"languages/sql/readme":{"id":"languages/sql/readme","title":"SQL","description":"- Intro","sidebar":"tutorialSidebar"},"languages/sql/sql-commands":{"id":"languages/sql/sql-commands","title":"SQL Commands","description":"Types","sidebar":"tutorialSidebar"},"languages/sql/sql-data-types":{"id":"languages/sql/sql-data-types","title":"SQL Data Types","description":"SQL data type rules","sidebar":"tutorialSidebar"},"languages/sql/sql-examples-queries":{"id":"languages/sql/sql-examples-queries","title":"SQL Examples / Queries","description":"Online SQL Playground with Data | W3 Schools","sidebar":"tutorialSidebar"},"languages/sql/sql-joins":{"id":"languages/sql/sql-joins","title":"SQL Joins","description":"The SQL Joins clause is used to combine records from two or more tables in a database. A JOIN is a means for combining fields from two tables by using values common to each.","sidebar":"tutorialSidebar"},"languages/sql/sql-views":{"id":"languages/sql/sql-views","title":"SQL Views","description":"Database Administrator and Database Users will face two challenges: writing complex SQL queries and securing database access. Sometimes SQL queries become more complicated due to the use of multiple joins, subqueries, and GROUP BY in a single query. To simplify such queries, you can use some proxy over the original table. Also, Sometimes from the security side, the database administrator wants to restrict direct access to the database. For example, if a table contains various columns but the user only needs 3 columns of data in such case DBA will create a virtual table of 3 columns. For both purposes, you can use the view. Views can act as a proxy or virtual table. Views reduce the complexity of SQL queries and provide secure access to underlying tables.","sidebar":"tutorialSidebar"},"languages/sql/stored-procedure":{"id":"languages/sql/stored-procedure","title":"Stored Procedure","description":"A stored procedure (also termed proc, storp, sproc, StoPro, StoredProc, StoreProc, sp, or SP) is a subroutine available to applications that access a relational database management system(RDBMS). Such procedures are stored in the database data dictionary.","sidebar":"tutorialSidebar"},"languages/sql/types":{"id":"languages/sql/types","title":"Types","description":"- SQL is a query language to operate on sets.","sidebar":"tutorialSidebar"},"management/books-blinkist-management":{"id":"management/books-blinkist-management","title":"Books / Blinkist Management","description":"Books","sidebar":"tutorialSidebar"},"management/business/business-case-studies":{"id":"management/business/business-case-studies","title":"Business Case Studies","description":"https://www.youtube.com/c/AdityaSaini1505/videos","sidebar":"tutorialSidebar"},"management/business/business-terms":{"id":"management/business/business-terms","title":"Business Terms","description":"Operating Models","sidebar":"tutorialSidebar"},"management/business/indian-market":{"id":"management/business/indian-market","title":"Indian Market","description":"Indus Valley Annual Report 2024 - Blume Ventures","sidebar":"tutorialSidebar"},"management/business/readme":{"id":"management/business/readme","title":"Business","description":"https://hbr.org","sidebar":"tutorialSidebar"},"management/business/service-based-model":{"id":"management/business/service-based-model","title":"Service Based Model","description":"Dedicated Team","sidebar":"tutorialSidebar"},"management/community-building":{"id":"management/community-building","title":"Community Building","description":"Companies like Atlassian, Glossier, Datadog, Twitch, dbt, Salesforce, Peloton, and many others have succeeded in large part due to the passionate community they built around their early products. A thriving community creates a sticky and evangelical user base, becomes a great source of ideas, and can even become a clever way to scale customer support (e.g. Airbnb):","sidebar":"tutorialSidebar"},"management/customer-engagement-cx":{"id":"management/customer-engagement-cx","title":"Customer Engagement / CX","description":"When it comes to payments and finances, customers are anxious and impatient when they encounter issues.","sidebar":"tutorialSidebar"},"management/decision-making/ethics":{"id":"management/decision-making/ethics","title":"Ethics","description":"Panoticon","sidebar":"tutorialSidebar"},"management/decision-making/readme":{"id":"management/decision-making/readme","title":"Decision Making","description":"Ensure that decisions are made at the level where the best information is available","sidebar":"tutorialSidebar"},"management/growth-hacking":{"id":"management/growth-hacking","title":"Growth Hacking","description":"A growth hacker is not a replacement for a marketer. A growth hacker is not better than marketer. A growth hacker is just different than a marketer. To use the most succinct definition from Sean\'s post,\\"A growth hacker is a person whose true north is growth.\\"","sidebar":"tutorialSidebar"},"management/growth-hacking-metrics":{"id":"management/growth-hacking-metrics","title":"Growth Hacking Metrics","description":"Startup Metrics for Pirates","sidebar":"tutorialSidebar"},"management/jobs/career":{"id":"management/jobs/career","title":"Career","description":"Understand how your job works, once you understand your career, create projects that will force improvement in specific skills","sidebar":"tutorialSidebar"},"management/jobs/companies":{"id":"management/jobs/companies","title":"Companies","description":"- FAANGM / MAANG - Facebook, Apple, Amazon, Netflix, Google, Microsoft","sidebar":"tutorialSidebar"},"management/jobs/finance-equity-stocks-esops-questions":{"id":"management/jobs/finance-equity-stocks-esops-questions","title":"Finance / Equity / Stocks / ESOPS Questions","description":"ESOPS, Restricted Stock, Stock Options, and Phantom Stock","sidebar":"tutorialSidebar"},"management/jobs/good-profiles":{"id":"management/jobs/good-profiles","title":"Good Profiles","description":"- linkedin.com/in/dr-vinod-ebinezer-44b2981/details/experience/","sidebar":"tutorialSidebar"},"management/jobs/hiring-plan-hr-recruiting":{"id":"management/jobs/hiring-plan-hr-recruiting","title":"Hiring Plan + HR / Recruiting","description":"Platform / Services / Vendor","sidebar":"tutorialSidebar"},"management/jobs/questions-to-company":{"id":"management/jobs/questions-to-company","title":"Questions to company","description":"Always don\'t say yes to any offer at that time, always sleep over it","sidebar":"tutorialSidebar"},"management/jobs/readme":{"id":"management/jobs/readme","title":"Job Hunting","description":"- Career","sidebar":"tutorialSidebar"},"management/jobs/resume-keywords-pointers":{"id":"management/jobs/resume-keywords-pointers","title":"Resume Keywords Pointers","description":"Backend - PHP","sidebar":"tutorialSidebar"},"management/marketing":{"id":"management/marketing","title":"Marketing","description":"AI Tools","sidebar":"tutorialSidebar"},"management/mental-models":{"id":"management/mental-models","title":"Mental Models","description":"- Weekly 1--1s - \\"1--1\'s can add a whole new level of speed and agility to your company.\\"","sidebar":"tutorialSidebar"},"management/others":{"id":"management/others","title":"Others","description":"SWOT Analysis","sidebar":"tutorialSidebar"},"management/people-management/culture":{"id":"management/people-management/culture","title":"Culture","description":"Culture eats strategy for breakfast - Peter Drucker","sidebar":"tutorialSidebar"},"management/people-management/leadership-interview-questions":{"id":"management/people-management/leadership-interview-questions","title":"Leadership Interview Questions","description":"Can you tell me about a time when you demonstrated leadership capabilities on the job?","sidebar":"tutorialSidebar"},"management/people-management/mentoring-teaching-coaching-leading-leader-leadership":{"id":"management/people-management/mentoring-teaching-coaching-leading-leader-leadership","title":"Mentoring / Leading","description":"Leadership is the ability to guide, support, and nurture others. Leaders are adept at finding ways for others to be at their best.","sidebar":"tutorialSidebar"},"management/people-management/onboarding":{"id":"management/people-management/onboarding","title":"Onboarding","description":"IDE - VSCode","sidebar":"tutorialSidebar"},"management/people-management/people-team-management":{"id":"management/people-management/people-team-management","title":"People / Team Management","description":"I am available anytime, I can mentor, Any help you need you can always come to me. -- Deepak","sidebar":"tutorialSidebar"},"management/people-management/readme":{"id":"management/people-management/readme","title":"People Management","description":"- People / Team Management","sidebar":"tutorialSidebar"},"management/people-management/remote-working-teams":{"id":"management/people-management/remote-working-teams","title":"Remote Working / Teams","description":"Teams of 1 are the best teams, and 1 of the most hard to create","sidebar":"tutorialSidebar"},"management/people-management/types-of-leadership":{"id":"management/people-management/types-of-leadership","title":"Types of Leadership","description":"1. Transformational leadership","sidebar":"tutorialSidebar"},"management/product-management/behavioral-design-economics":{"id":"management/product-management/behavioral-design-economics","title":"Behavioral Design / Economics","description":"https://www.lennysnewsletter.com/p/how-to-use-behavioral-science-to","sidebar":"tutorialSidebar"},"management/product-management/coursera-pm":{"id":"management/product-management/coursera-pm","title":"Coursera - PM","description":"https://www.coursera.org/specializations/real-world-product-management","sidebar":"tutorialSidebar"},"management/product-management/intro":{"id":"management/product-management/intro","title":"Intro","description":"Only the best is good enough -- lego group","sidebar":"tutorialSidebar"},"management/product-management/kano-model":{"id":"management/product-management/kano-model","title":"Kano Model","description":"image","sidebar":"tutorialSidebar"},"management/product-management/product-book-summaries":{"id":"management/product-management/product-book-summaries","title":"Product Book Summaries","description":"Purple Cow by Seth Godin","sidebar":"tutorialSidebar"},"management/product-management/product-design-questions":{"id":"management/product-management/product-design-questions","title":"Product Design / Questions","description":"https://www.toptal.com/designers/product-design/interview-questions","sidebar":"tutorialSidebar"},"management/product-management/product-design-stages":{"id":"management/product-management/product-design-stages","title":"Product Design Stages","description":"Designing a product involves several stages that help ensure the successful development and launch of a product that meets customer needs. Here are the typical stages of product design:","sidebar":"tutorialSidebar"},"management/product-management/product-manager-role":{"id":"management/product-management/product-manager-role","title":"Product Manager PM Role","description":"product-manager-skills","sidebar":"tutorialSidebar"},"management/product-management/product-market-fit-pmf":{"id":"management/product-management/product-market-fit-pmf","title":"Product Market Fit (PMF)","description":"Finding product/market fit is the main objective of all new products. However, it\'s crucial to acknowledge that according to Harvard studies, the majority of startups and established organizations fail to achieve PMF. To ensure that we don\'t fall into the same trap with our product, or to achieve PMF quickly and efficiently, we need to take a purposeful approach. This means proactively addressing the six most common dimensions where new products fail and comprehensively focusing on all critical steps that ladder up to building a successful product.","sidebar":"tutorialSidebar"},"management/product-management/product-terms-saas":{"id":"management/product-management/product-terms-saas","title":"Product - Terms - SAAS","description":"Ecommerce","sidebar":"tutorialSidebar"},"management/product-management/readme":{"id":"management/product-management/readme","title":"Product Management","description":"- Intro","sidebar":"tutorialSidebar"},"management/product-management/retail-offline-sales":{"id":"management/product-management/retail-offline-sales","title":"Retail / Offline / Sales","description":"Well, a few years ago, professors at Wharton and Harvard delved into this phenomenon and found something quite interesting. Customers who visit a physical store spend more money. In fact, they spend 60% more on average per order. They\u2019re willing to splurge on higher-priced items. Instead of simply buying casual T-shirts, they might spend more on buying formal shirts. They\u2019re expanding their shopping basket.","sidebar":"tutorialSidebar"},"management/project-management/agile":{"id":"management/project-management/agile","title":"Agile","description":"https://www.atlassian.com/agile","sidebar":"tutorialSidebar"},"management/project-management/atlas":{"id":"management/project-management/atlas","title":"Atlas","description":"Introducing The Loop communication framework | Atlas Help Center","sidebar":"tutorialSidebar"},"management/project-management/goals-setting":{"id":"management/project-management/goals-setting","title":"Goals Setting","description":"SMART Goals","sidebar":"tutorialSidebar"},"management/project-management/intro":{"id":"management/project-management/intro","title":"Intro","description":"https://blog.trello.com/project-management-methodologies","sidebar":"tutorialSidebar"},"management/project-management/jira":{"id":"management/project-management/jira","title":"JIRA","description":"Atlassian","sidebar":"tutorialSidebar"},"management/project-management/others":{"id":"management/project-management/others","title":"Others","description":"Tools","sidebar":"tutorialSidebar"},"management/project-management/pert-and-cpm":{"id":"management/project-management/pert-and-cpm","title":"PERT & CPM","description":"PERT - Program Evaluation and Review Technique","sidebar":"tutorialSidebar"},"management/project-management/pm101":{"id":"management/project-management/pm101","title":"PM101","description":"Project Management 101 Training | Introduction to Project Management | Project Management Basics","sidebar":"tutorialSidebar"},"management/project-management/program-management":{"id":"management/project-management/program-management","title":"Program Management","description":"Program management is the management of multiple related projects at the same time. A program is a set of interconnected projects overseen by a program manager whose main goal is to ensure that all work ties back into company-wide goals and objectives.","sidebar":"tutorialSidebar"},"management/project-management/project-contraints":{"id":"management/project-management/project-contraints","title":"Project Contraints","description":"Triple Constraint Triangle (Iron Triangle of Project Management)","sidebar":"tutorialSidebar"},"management/project-management/readme":{"id":"management/project-management/readme","title":"Project Management","description":"- Intro","sidebar":"tutorialSidebar"},"management/project-management/scrum-meetings":{"id":"management/project-management/scrum-meetings","title":"Scrum / Meetings","description":"- Video Calls","sidebar":"tutorialSidebar"},"management/project-management/sdlc-methodologies":{"id":"management/project-management/sdlc-methodologies","title":"SDLC Methodologies","description":"- Agile: Flexible, Fast, And Short Collaborative Sprint Projects","sidebar":"tutorialSidebar"},"management/project-management/template":{"id":"management/project-management/template","title":"1. Summary","description":"1. Start Date","sidebar":"tutorialSidebar"},"management/project-product-business-tools-saas":{"id":"management/project-product-business-tools-saas","title":"Project / Product / Business - Tools - SAAS","description":"PM Templates - by Pawe\u0142 Huryn","sidebar":"tutorialSidebar"},"management/readme":{"id":"management/readme","title":"Management","description":"- Mental Models","sidebar":"tutorialSidebar"},"management/roles/data":{"id":"management/roles/data","title":"Data","description":"You join a 100 person company as the head of data. What should you do?","sidebar":"tutorialSidebar"},"management/roles/engineering-manager":{"id":"management/roles/engineering-manager","title":"Engineering Manager / Tech Lead","description":"- The tech lead is the owner of the technological vision for a project, and the technical leader of the project team.","sidebar":"tutorialSidebar"},"management/roles/others":{"id":"management/roles/others","title":"Others","description":"CTO","sidebar":"tutorialSidebar"},"management/roles/principle-software-engineer":{"id":"management/roles/principle-software-engineer","title":"Principle Software Engineer","description":"My thoughts about the Principal role","sidebar":"tutorialSidebar"},"management/sales":{"id":"management/sales","title":"Sales","description":"Sales model","sidebar":"tutorialSidebar"},"management/six-sigma":{"id":"management/six-sigma","title":"Six Sigma","description":"Enhanced Problem-Solving Skills","sidebar":"tutorialSidebar"},"mathematics/algebra/cheatsheet":{"id":"mathematics/algebra/cheatsheet","title":"Cheatsheet","description":"image","sidebar":"tutorialSidebar"},"mathematics/algebra/complex-numbers":{"id":"mathematics/algebra/complex-numbers","title":"2.2 Complex Numbers","description":"1. Principle Square root","sidebar":"tutorialSidebar"},"mathematics/algebra/exponential-and-logarithms":{"id":"mathematics/algebra/exponential-and-logarithms","title":"2.7. Exponential & logarithms","description":"1. Introduction to logarithms","sidebar":"tutorialSidebar"},"mathematics/algebra/functions":{"id":"mathematics/algebra/functions","title":"2.1 Functions","description":"1. Combining functions","sidebar":"tutorialSidebar"},"mathematics/algebra/intro":{"id":"mathematics/algebra/intro","title":"Intro","description":"Algebra - 1","sidebar":"tutorialSidebar"},"mathematics/algebra/others":{"id":"mathematics/algebra/others","title":"Others","description":"Slope","sidebar":"tutorialSidebar"},"mathematics/algebra/readme":{"id":"mathematics/algebra/readme","title":"Algebra","description":"- Intro","sidebar":"tutorialSidebar"},"mathematics/algebra/root":{"id":"mathematics/algebra/root","title":"Root","description":"Roots get back the base number from the solution of an exponential equation.","sidebar":"tutorialSidebar"},"mathematics/algebra/series":{"id":"mathematics/algebra/series","title":"2.9. Series","description":"1. Arithmetic sequences (Arithmeric Progression)","sidebar":"tutorialSidebar"},"mathematics/algebra/sets":{"id":"mathematics/algebra/sets","title":"Sets","description":"Symmetric Difference (\u25b3) - The symmetric difference of two sets is the collection of elements which are members of either set but not both - in other words, the union of the sets excluding their intersection. Forming the symmetric difference of two sets is simple, but forming the symmetric difference of three sets is a bit trickier","sidebar":"tutorialSidebar"},"mathematics/aptitude/chinese-remainder-theorem":{"id":"mathematics/aptitude/chinese-remainder-theorem","title":"Chinese Remainder Theorem","description":"The Chinese remainder theorem is a theorem of number theory, which states that if one knows the remainders of the Euclidean division of an integer n by several integers, then one can determine uniquely the remainder of the division of n by the product of these integers, under the condition that the divisors are pairwise coprime.","sidebar":"tutorialSidebar"},"mathematics/aptitude/cube-cutting":{"id":"mathematics/aptitude/cube-cutting","title":"Cube Cutting","description":"Concepts -","sidebar":"tutorialSidebar"},"mathematics/aptitude/distance-speed-and-time":{"id":"mathematics/aptitude/distance-speed-and-time","title":"Distance Speed and Time","description":"HOW TO CALCULATE TIME AND DISTANCE FROM ACCELERATION AND VELOCITY","sidebar":"tutorialSidebar"},"mathematics/aptitude/readme":{"id":"mathematics/aptitude/readme","title":"Aptitude","description":"- Distance Speed and Time","sidebar":"tutorialSidebar"},"mathematics/calculus/essence-of-calculus-3blue1brown":{"id":"mathematics/calculus/essence-of-calculus-3blue1brown","title":"Essence of Calculus - 3Blue1Brown","description":"1. Introduction","sidebar":"tutorialSidebar"},"mathematics/calculus/functions":{"id":"mathematics/calculus/functions","title":"Functions","description":"Elementary Functions","sidebar":"tutorialSidebar"},"mathematics/calculus/gradient":{"id":"mathematics/calculus/gradient","title":"Gradient","description":"In mathematics, the gradient is a multi-variable generalization of the derivative. While a derivative can be defined on functions of a single variable, for functions of several variables, the gradient takes its place. The gradient is a vector-valued function, as opposed to a derivative, which is scalar-valued.","sidebar":"tutorialSidebar"},"mathematics/calculus/intro":{"id":"mathematics/calculus/intro","title":"Intro","description":"The word Calculus comes from Latin meaning \\"small stone\\", Because it is like understanding something by looking at small pieces.","sidebar":"tutorialSidebar"},"mathematics/calculus/others":{"id":"mathematics/calculus/others","title":"Others","description":"Laplace Transform","sidebar":"tutorialSidebar"},"mathematics/calculus/precalculus-intro":{"id":"mathematics/calculus/precalculus-intro","title":"Intro","description":"1. Trigonometry","sidebar":"tutorialSidebar"},"mathematics/calculus/product-rule-for-derivatives":{"id":"mathematics/calculus/product-rule-for-derivatives","title":"Product Rule for Derivatives","description":"image","sidebar":"tutorialSidebar"},"mathematics/calculus/quotient-rule":{"id":"mathematics/calculus/quotient-rule","title":"Quotient Rule","description":"image","sidebar":"tutorialSidebar"},"mathematics/calculus/readme":{"id":"mathematics/calculus/readme","title":"Calculus","description":"- Precalculus Intro","sidebar":"tutorialSidebar"},"mathematics/calculus/tangent-line-and-the-derivative":{"id":"mathematics/calculus/tangent-line-and-the-derivative","title":"Tangent Line and the Derivative","description":"Tangent Line","sidebar":"tutorialSidebar"},"mathematics/combinatorics/birthday-paradox":{"id":"mathematics/combinatorics/birthday-paradox","title":"Birthday Paradox","description":"Problem - Exponents aren\'t intuitive","sidebar":"tutorialSidebar"},"mathematics/combinatorics/conditional-probability":{"id":"mathematics/combinatorics/conditional-probability","title":"Conditional Probability","description":"Conditional probability is calculating the probability of an event given that another event has already occured .","sidebar":"tutorialSidebar"},"mathematics/combinatorics/inclusion-exclusion-principle":{"id":"mathematics/combinatorics/inclusion-exclusion-principle","title":"Inclusion-Exclusion Principle","description":"In combinatorics(combinatorial mathematics), theinclusion--exclusion principleis a counting technique which generalizes the familiar method of obtaining the number of elements in the union) of two finite sets); symbolically expressed as","sidebar":"tutorialSidebar"},"mathematics/combinatorics/intro":{"id":"mathematics/combinatorics/intro","title":"Intro","description":"Combinatorics is an area of mathematics primarily concerned with counting, both as a means and an end in obtaining results, and certain properties of finitestructures. It is closely related to many other areas of mathematics and has many applications ranging from logic to statistical physics, from evolutionary biology to computer science, etc","sidebar":"tutorialSidebar"},"mathematics/combinatorics/permutation-and-combination":{"id":"mathematics/combinatorics/permutation-and-combination","title":"Permutation and Combination","description":"Permutation - Order matters","sidebar":"tutorialSidebar"},"mathematics/combinatorics/pigeonhole-principle":{"id":"mathematics/combinatorics/pigeonhole-principle","title":"Pigeonhole Principle","description":"In mathematics, the pigeonhole principle states that if n items are put into m containers, with n>m, then at least one container must contain more than one item.","sidebar":"tutorialSidebar"},"mathematics/combinatorics/readme":{"id":"mathematics/combinatorics/readme","title":"Combinatorics","description":"- Intro","sidebar":"tutorialSidebar"},"mathematics/general/ackermann-function":{"id":"mathematics/general/ackermann-function","title":"Ackermann Function","description":"In computability theory, the**Ackermann function**, named after Wilhelm Ackermann, is one of the simplest and earliest-discovered examples of a totalcomputable function that is not primitive recursive. All primitive recursive functions are total and computable, but the Ackermann function illustrates that not all total computable functions are primitive recursive.","sidebar":"tutorialSidebar"},"mathematics/general/advanced-topics":{"id":"mathematics/general/advanced-topics","title":"Advanced Topics","description":"Bayes\' Theorem and Conditional Probability (https://brilliant.org/wiki/bayes-theorem)","sidebar":"tutorialSidebar"},"mathematics/general/conjecture":{"id":"mathematics/general/conjecture","title":"Conjecture","description":"Conjecture - Is a conclusion or proposition based on incomplete information, for which no proof has been found.","sidebar":"tutorialSidebar"},"mathematics/general/discrete-mathematics":{"id":"mathematics/general/discrete-mathematics","title":"Discrete Mathematics","description":"Discrete mathematicsis the study of mathematical structures that are fundamentally discrete rather than continuous. In contrast to real numbers that have the property of varying \\"smoothly\\", the objects studied in discrete mathematics -- such as integers, graphs), and statements) in logic-- do not vary smoothly in this way, but have distinct, separated values.Discrete mathematics therefore excludes topics in \\"continuous mathematics\\" such as calculus or Euclidean geometry. Discrete objects can often be enumerated by integers. More formally, discrete mathematics has been characterized as the branch of mathematics dealing with countable sets(finite sets or sets with the same cardinality as the natural numbers). However, there is no exact definition of the term \\"discrete mathematics.\\"Indeed, discrete mathematics is described less by what is included than by what is excluded: continuously varying quantities and related notions.","sidebar":"tutorialSidebar"},"mathematics/general/fermat-last-theorem":{"id":"mathematics/general/fermat-last-theorem","title":"Fermat\'s Last Theorem","description":"In number theory, **Fermat\'s Last Theorem**(sometimes called**Fermat\'s conjecture**, especially in older texts) states that no three positiveintegers a, b, and c satisfy the equation a^n^+b^n^=c^n^ for any integer value of n greater than 2. The cases n = 1 and n = 2 have been known to have infinitely many solutions since antiquity.","sidebar":"tutorialSidebar"},"mathematics/general/fermat-little-theorem":{"id":"mathematics/general/fermat-little-theorem","title":"Fermat\'s Little Theorem","description":"Fermat\'s little theoremis a fundamental theorem in elementary number theory, which helps compute powers of integers moduloprime numbers. It is a special case of Euler\'s theorem, and is important in applications of elementary number theory, including primality testing and public-key cryptography.","sidebar":"tutorialSidebar"},"mathematics/general/gcd-lcm":{"id":"mathematics/general/gcd-lcm","title":"GCD / LCM","description":"GCD","sidebar":"tutorialSidebar"},"mathematics/general/godel-incompleteness-theorem":{"id":"mathematics/general/godel-incompleteness-theorem","title":"Godel\'s Incompleteness Theorem","description":"G\xf6del\'s incompleteness theoremsare two theorems of mathematical logic that demonstrate the inherent limitations of every formal axiomatic system containing basic arithmetic. These results, published by Kurt G\xf6del in 1931, are important both in mathematical logic and in the philosophy of mathematics. The theorems are widely, but not universally, interpreted as showing that Hilbert\'s program to find a complete and consistent set of axioms for all mathematics is impossible.","sidebar":"tutorialSidebar"},"mathematics/general/golden-ratio-phi":{"id":"mathematics/general/golden-ratio-phi","title":"Golden Ratio - phi","description":"Two quantities are in thegolden ratio if their ratio is the same as the ratio of their sum to the larger of the two quantities. Expressed algebraically, for quantities a and b w itha>b>0,","sidebar":"tutorialSidebar"},"mathematics/general/greek-letters-latin":{"id":"mathematics/general/greek-letters-latin","title":"Greek Letters / Latin","description":"| Name | Symbol | Name | Symbol | Name | Symbol | Name | Symbol | Name | Symbol |","sidebar":"tutorialSidebar"},"mathematics/general/handshaking-lemma":{"id":"mathematics/general/handshaking-lemma","title":"Handshaking Lemma","description":"In any group of people the number of people who have shaken hands with an odd number of other people from the group is even.","sidebar":"tutorialSidebar"},"mathematics/general/logic":{"id":"mathematics/general/logic","title":"Logic","description":"Conceptions of logic","sidebar":"tutorialSidebar"},"mathematics/general/numbers":{"id":"mathematics/general/numbers","title":"Numbers","description":"image","sidebar":"tutorialSidebar"},"mathematics/general/others":{"id":"mathematics/general/others","title":"Others","description":"Arity","sidebar":"tutorialSidebar"},"mathematics/general/pie":{"id":"mathematics/general/pie","title":"Pie","description":"Pie is the ratio of circumference of a circle to its diameter","sidebar":"tutorialSidebar"},"mathematics/general/properties":{"id":"mathematics/general/properties","title":"Properties","description":"1. The Commutative Property of Addition ( x + y = y + x )","sidebar":"tutorialSidebar"},"mathematics/general/readme":{"id":"mathematics/general/readme","title":"General","description":"- Numbers","sidebar":"tutorialSidebar"},"mathematics/geometry/analytic-geometry":{"id":"mathematics/geometry/analytic-geometry","title":"Analytic Geometry","description":"Distance and midpoints:Analytic geometry","sidebar":"tutorialSidebar"},"mathematics/geometry/circles":{"id":"mathematics/geometry/circles","title":"Circles","description":"Circle basics:Circles","sidebar":"tutorialSidebar"},"mathematics/geometry/congruence":{"id":"mathematics/geometry/congruence","title":"Congruence","description":"Transformations & congruence:Congruence","sidebar":"tutorialSidebar"},"mathematics/geometry/geometry-foundations":{"id":"mathematics/geometry/geometry-foundations","title":"Geometry Foundations","description":"Intro to Euclidean geometry","sidebar":"tutorialSidebar"},"mathematics/geometry/others":{"id":"mathematics/geometry/others","title":"Others","description":"1. Law of haversines / Haversine formula","sidebar":"tutorialSidebar"},"mathematics/geometry/readme":{"id":"mathematics/geometry/readme","title":"Geometry","description":"- Geometry Foundations","sidebar":"tutorialSidebar"},"mathematics/geometry/right-triangles-and-geometry":{"id":"mathematics/geometry/right-triangles-and-geometry","title":"Right Triangles and Geometry","description":"1. Pythagorean theorem","sidebar":"tutorialSidebar"},"mathematics/geometry/similarity":{"id":"mathematics/geometry/similarity","title":"Similarity","description":"Definitions of similarity:Similarity","sidebar":"tutorialSidebar"},"mathematics/geometry/solid-geometry":{"id":"mathematics/geometry/solid-geometry","title":"Solid Geometry","description":"Solid geometry intro:Solid geometry","sidebar":"tutorialSidebar"},"mathematics/geometry/transformations":{"id":"mathematics/geometry/transformations","title":"Transformations","description":"Introduction to rigid transformations:Transformations","sidebar":"tutorialSidebar"},"mathematics/linear-algebra/3blue1brown":{"id":"mathematics/linear-algebra/3blue1brown","title":"3Blue1Brown","description":"1. Vectors","sidebar":"tutorialSidebar"},"mathematics/linear-algebra/alternate-coordinate-systems-bases":{"id":"mathematics/linear-algebra/alternate-coordinate-systems-bases","title":"Alternate Coordinate systems (bases)","description":"1. Orthogonal complements","sidebar":"tutorialSidebar"},"mathematics/linear-algebra/cheatsheet":{"id":"mathematics/linear-algebra/cheatsheet","title":"Cheatsheet","description":"https://www.freecodecamp.org/news/linear-algebra-full-course","sidebar":"tutorialSidebar"},"mathematics/linear-algebra/matrix-transformations":{"id":"mathematics/linear-algebra/matrix-transformations","title":"Matrix Transformations","description":"1. Functions and linear transformations","sidebar":"tutorialSidebar"},"mathematics/linear-algebra/others":{"id":"mathematics/linear-algebra/others","title":"Others","description":"Concepts","sidebar":"tutorialSidebar"},"mathematics/linear-algebra/readme":{"id":"mathematics/linear-algebra/readme","title":"Linear Algebra","description":"- Vectors and Spaces","sidebar":"tutorialSidebar"},"mathematics/linear-algebra/vectors-and-spaces":{"id":"mathematics/linear-algebra/vectors-and-spaces","title":"Vectors and Spaces","description":"Vectors","sidebar":"tutorialSidebar"},"mathematics/probability/365-ds-probability":{"id":"mathematics/probability/365-ds-probability","title":"365 DS - Probability","description":"The Basics of Probability","sidebar":"tutorialSidebar"},"mathematics/probability/binomial-random-variables":{"id":"mathematics/probability/binomial-random-variables","title":"Binomial Random Variables","description":"1. Binomial Random Variables","sidebar":"tutorialSidebar"},"mathematics/probability/central-limit-theorem":{"id":"mathematics/probability/central-limit-theorem","title":"Central Limit Theorem","description":"In probability theory, thecentral limit theorem(CLT) establishes that, in some situations, when independent random variables are added, their properly normalized sum tends toward a normal distribution(informally a \\"bell curve\\") even if the original variables themselves are not normally distributed. The theorem is a key concept in probability theory because it implies that probabilistic and statistical methods that work for normal distributions can be applicable to many problems involving other types of distributions.","sidebar":"tutorialSidebar"},"mathematics/probability/cheatsheet":{"id":"mathematics/probability/cheatsheet","title":"Cheatsheet","description":"MVN - MultiVariate Normal Distribution","sidebar":"tutorialSidebar"},"mathematics/probability/intro":{"id":"mathematics/probability/intro","title":"Intro","description":"Two types of probability","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/1.-probability-models-and-axioms":{"id":"mathematics/probability/intro-to-probability/1.-probability-models-and-axioms","title":"1. Probability Models and Axioms","description":"Basic structure of probability models, including the sample space and the axioms that any probabilistic model should obey, together with some consequences of the axioms and some simple examples.","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/1.1-set-sequences-limits-and-series-un-countable-sets":{"id":"mathematics/probability/intro-to-probability/1.1-set-sequences-limits-and-series-un-countable-sets","title":"1.1 Set, Sequences, Limits and Series, (un)countable sets","description":"imagecountable-sets-image1.jpg)","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/10-conditioning-on-a-random-variable-independence-bayes-rule":{"id":"mathematics/probability/intro-to-probability/10-conditioning-on-a-random-variable-independence-bayes-rule","title":"10. Conditioning on a random variable; Independence; Bayes\' rule","description":"image","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/11.-derived-distributions":{"id":"mathematics/probability/intro-to-probability/11.-derived-distributions","title":"11. Derived Distributions","description":"1. Derived distributions - how to find the distribution, that is the PMF or the PDF of a random variable that is defined as a function of other random variables known as distributions","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/12.-sums-of-independent-rv-covariance-and-correlation":{"id":"mathematics/probability/intro-to-probability/12.-sums-of-independent-rv-covariance-and-correlation","title":"12. Sums of independent r.v.\'s; Covariance and Correlation","description":"image","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/13.-conditional-expectation-and-variance-revisited":{"id":"mathematics/probability/intro-to-probability/13.-conditional-expectation-and-variance-revisited","title":"13. Conditional expectation and variance revisited","description":"Law of iterated expectations - Expectation of a conditional expectation, is the same as the unconditional expectation","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/14.-intro-to-bayesian-inference":{"id":"mathematics/probability/intro-to-probability/14.-intro-to-bayesian-inference","title":"14. Intro to Bayesian Inference","description":"The power of Bayesian statistics","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/2.-conditioning-and-independence":{"id":"mathematics/probability/intro-to-probability/2.-conditioning-and-independence","title":"2. Conditioning and Independence","description":"Conditioning leads to revised (\\"conditional\\") probabilities that take into account partial information on the outcome of a probabilistic experiment. Conditioning is a very useful tool that allows us to \\"divide and conquer\\" complex problems. Independence is used to model situations involving non-interacting probabilistic phenomena and also plays an important role in building complex models from more elementary ones.","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/3.-independence":{"id":"mathematics/probability/intro-to-probability/3.-independence","title":"3. Independence","description":"Introduces the concepts of independence of two events, independence of multiple events, and pairwise independence, together with examples related to coin tossing and system reliability.","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/4.-counting":{"id":"mathematics/probability/intro-to-probability/4.-counting","title":"4. Counting","description":"The basic principle of counting, uses it to count subsets, permutations, combinations, and partitions, and applies it to some probability problems.","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/5.-probability-mass-functions-and-expectations":{"id":"mathematics/probability/intro-to-probability/5.-probability-mass-functions-and-expectations","title":"5. Probability Mass Functions and Expectations","description":"image","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/6-variance-conditioning-of-an-event-multiple-rv":{"id":"mathematics/probability/intro-to-probability/6-variance-conditioning-of-an-event-multiple-rv","title":"6. Variance; Conditioning of an event; Multiple r.v.\'s","description":"Variance - Is a quantity that measures the amount of spread, of a dispersion of a probability mass function. It is defined as the expected value of the squared distance from the mean. Always non negative","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/7-conditioning-on-a-rv-independence-of-rv":{"id":"mathematics/probability/intro-to-probability/7-conditioning-on-a-rv-independence-of-rv","title":"7. Conditioning on a rv; Independence of r.v.\'s","description":"Joint PMF","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/8.-probability-density-functions":{"id":"mathematics/probability/intro-to-probability/8.-probability-density-functions","title":"8. Probability density functions","description":"PDF\'s are not probabilities, they are densities. Their unit is probability per unit length","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/9.-conditioning-on-an-event-multiple-continuous-rv":{"id":"mathematics/probability/intro-to-probability/9.-conditioning-on-an-event-multiple-continuous-rv","title":"9. Conditioning on an event; Multiple continuous r.v.\'s","description":"Green PDF is the form of a conditional PDF","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/additional-theoretical-material":{"id":"mathematics/probability/intro-to-probability/additional-theoretical-material","title":"Additional Theoretical Material","description":"Functions","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/intro-syllabus":{"id":"mathematics/probability/intro-to-probability/intro-syllabus","title":"Intro - Syllabus","description":"Introduction to Probability - The Science of Uncertainty - MITx - 6.041x","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/readme":{"id":"mathematics/probability/intro-to-probability/readme","title":"Intro to Probability","description":"- Intro - Syllabus","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/unit-1-solved-problems":{"id":"mathematics/probability/intro-to-probability/unit-1-solved-problems","title":"Unit 1 - Solved Problems","description":"The probability of difference of two sets","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/unit-2-solved-problems":{"id":"mathematics/probability/intro-to-probability/unit-2-solved-problems","title":"Unit 2 - Solved Problems","description":"Conditional probability example","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/unit-3-solved-problems":{"id":"mathematics/probability/intro-to-probability/unit-3-solved-problems","title":"Unit 3 - Solved Problems","description":"The birthday problem","sidebar":"tutorialSidebar"},"mathematics/probability/monte-carlo-simulation":{"id":"mathematics/probability/monte-carlo-simulation","title":"Monte Carlo Simulation","description":"Monte Carlo simulation(also known as the Monte Carlo Method) lets you see all the possible outcomes of your decisions and assess the impact of risk, allowing for better decision making under uncertainty.","sidebar":"tutorialSidebar"},"mathematics/probability/normal-distributions":{"id":"mathematics/probability/normal-distributions","title":"Normal Distributions","description":"In probability theory, the normal(or Gaussian or Gauss or Laplace--Gauss) distribution is a very common continuous probability distribution. Normal distributions are important in statistics and are often used in the natural and social sciences to represent real-valued random variables whose distributions are not known. A random variable with a Gaussian distribution is said to be normally distributed and is called a normal deviate.","sidebar":"tutorialSidebar"},"mathematics/probability/others":{"id":"mathematics/probability/others","title":"Others","description":"Quantile","sidebar":"tutorialSidebar"},"mathematics/probability/probability-distribution":{"id":"mathematics/probability/probability-distribution","title":"Probability Distribution","description":"In probability theory and statistics, a**probability distribution** is a mathematical function that provides the probabilities of occurrence of different possible outcomes in an experiment). In more technical terms, the probability distribution is a description of a random phenomenon in terms of the probabilities of events). For instance, if the random variableXis used to denote the outcome of a coin toss (\\"the experiment\\"), then the probability distribution of X would take the value 0.5 forX= heads, and 0.5 forX= tails(assuming the coin is fair). Examples of random phenomena can include the results of an experiment) or survey.","sidebar":"tutorialSidebar"},"mathematics/probability/random-variables":{"id":"mathematics/probability/random-variables","title":"Random Variables","description":"In probability and statistics, arandom variable, random quantity, aleatory variable, orstochastic variable is a variable whose possible values are outcomes) of a random phenomenon.As a function, a random variable is required to be measurable, which rules out certain pathological) cases where the quantity which the random variable returns is infinitely sensitive to small changes in the outcome.","sidebar":"tutorialSidebar"},"mathematics/probability/readme":{"id":"mathematics/probability/readme","title":"Probability","description":"- Intro","sidebar":"tutorialSidebar"},"mathematics/readme":{"id":"mathematics/readme","title":"Mathematics","description":"- Mahematics General","sidebar":"tutorialSidebar"},"mathematics/statistics/bivariate-analysis":{"id":"mathematics/statistics/bivariate-analysis","title":"Bivariate Analysis","description":"Bivariate analysis is one of the simplest forms of quantitative (statistical) analysis.It involves the analysis of two variables(often denoted asX,Y), for the purpose of determining the empirical relationship between them","sidebar":"tutorialSidebar"},"mathematics/statistics/confidence-intervals":{"id":"mathematics/statistics/confidence-intervals","title":"Confidence Intervals","description":"Definition of confidence intervals","sidebar":"tutorialSidebar"},"mathematics/statistics/correlation-and-covariance":{"id":"mathematics/statistics/correlation-and-covariance","title":"Correlation and Covariance","description":"Data Relationships","sidebar":"tutorialSidebar"},"mathematics/statistics/crash-course-statistics":{"id":"mathematics/statistics/crash-course-statistics","title":"Crash Course Statistics","description":"Statistics","sidebar":"tutorialSidebar"},"mathematics/statistics/crosstab":{"id":"mathematics/statistics/crosstab","title":"Crosstab","description":"A\xa0crosstab\xa0is a\xa0table showing the relationship between two or more variables. Where the table only shows the relationship between two categorical variables, a crosstab is also known as a\xa0contingency table.","sidebar":"tutorialSidebar"},"mathematics/statistics/descriptive-statistics":{"id":"mathematics/statistics/descriptive-statistics","title":"Descriptive Statistics","description":"Levels of measurement","sidebar":"tutorialSidebar"},"mathematics/statistics/discriminant-analysis":{"id":"mathematics/statistics/discriminant-analysis","title":"Discriminant Analysis","description":"During a study, there are often questions that strike the researcher that must be answered. These questions include questions like \'are the groups different?\', \'on what variables, are the groups most different?\', \'can one predict which group a person belongs to using such variables?\' etc. In answering such questions, discriminant analysis is quite helpful.","sidebar":"tutorialSidebar"},"mathematics/statistics/estimation-statistics":{"id":"mathematics/statistics/estimation-statistics","title":"Estimation Statistics","description":"Estimation statistics may be used as an alternative to statistical hypothesis tests. Statistical hypothesis tests can be used to indicate whether the difference between two samples is due to random chance, but cannot comment on the size of the difference. A group of methods referred to as new statistics are seeing increased use instead of or in addition to p-values in order to quantify the magnitude of effects and the amount of uncertainty for estimated values. This group of statistical methods is referred to as estimation statistics. Estimation statistics is a term to describe three main classes of methods. The three main classes of methods include:","sidebar":"tutorialSidebar"},"mathematics/statistics/glossary":{"id":"mathematics/statistics/glossary","title":"Glossary","description":"| Word | Definition |","sidebar":"tutorialSidebar"},"mathematics/statistics/hypothesis-testing":{"id":"mathematics/statistics/hypothesis-testing","title":"Hypothesis Testing","description":"Null vs Alternative","sidebar":"tutorialSidebar"},"mathematics/statistics/inferential-statistics":{"id":"mathematics/statistics/inferential-statistics","title":"Inferential Statistics","description":"Introduction","sidebar":"tutorialSidebar"},"mathematics/statistics/intro":{"id":"mathematics/statistics/intro","title":"Intro","description":"Statistics is a subfield of mathematics. It refers to a collection of methods for working with data and using data to answer questions.","sidebar":"tutorialSidebar"},"mathematics/statistics/nonparametric-statistics":{"id":"mathematics/statistics/nonparametric-statistics","title":"Nonparametric Statistics","description":"Nonparametric statisticsis the branch of statistics that is not based solely on parametrized families of probability distributions(common examples of parameters are the mean and variance). Nonparametric statistics is based on either being distribution-free or having a specified distribution but with the distribution\'s parameters unspecified. Nonparametric statistics includes both descriptive statistics and statistical inference.","sidebar":"tutorialSidebar"},"mathematics/statistics/other-statistics":{"id":"mathematics/statistics/other-statistics","title":"Other Statistics","description":"Gaussian Noise","sidebar":"tutorialSidebar"},"mathematics/statistics/percentiles":{"id":"mathematics/statistics/percentiles","title":"Percentiles","description":"Tell you what percentage of the population has a score or value that\'s lower than yours.","sidebar":"tutorialSidebar"},"mathematics/statistics/ranking":{"id":"mathematics/statistics/ranking","title":"Ranking","description":"Strategies for assigning rankings","sidebar":"tutorialSidebar"},"mathematics/statistics/readme":{"id":"mathematics/statistics/readme","title":"Statistics","description":"- Intro","sidebar":"tutorialSidebar"},"mathematics/statistics/sampling":{"id":"mathematics/statistics/sampling","title":"Sampling","description":"- Sampling is the main technique employed for data selection","sidebar":"tutorialSidebar"},"networking/mqtt/client-broker-and-connection-establishment":{"id":"networking/mqtt/client-broker-and-connection-establishment","title":"Client, Broker & Connection Establishment","description":"Client","sidebar":"tutorialSidebar"},"networking/mqtt/intro":{"id":"networking/mqtt/intro","title":"Intro","description":"Features","sidebar":"tutorialSidebar"},"networking/mqtt/keep-alive-and-client-take-over":{"id":"networking/mqtt/keep-alive-and-client-take-over","title":"Keep Alive & Client Take-Over","description":"The problem of half-open TCP connections","sidebar":"tutorialSidebar"},"networking/mqtt/last-will-and-testament":{"id":"networking/mqtt/last-will-and-testament","title":"Last Will and Testament","description":"Because MQTT is often used in scenarios that include unreliable networks, it\'s reasonable to assume that some of the MQTT clients in these scenarios will occasionally disconnect ungracefully. An ungraceful disconnect can occur due to loss of connection, empty batteries, or many other reasons. Knowing whether a client disconnected gracefully (with an MQTTDISCONNECT message) or ungracefully (without a disconnect message), helps you respond correctly. The Last Will and Testament feature provides a way for clients to respond to ungraceful disconnects in an appropriate way.","sidebar":"tutorialSidebar"},"networking/mqtt/libraries":{"id":"networking/mqtt/libraries","title":"Libraries","description":"MQTT BROKER IMPLEMENTATIONS","sidebar":"tutorialSidebar"},"networking/mqtt/messages":{"id":"networking/mqtt/messages","title":"Messages","description":"MQTT has 14 different message types. Typically, end users only need to employ the CONNECT, PUBLISH, SUBSCRIBE, and UNSUBSCRIBE message types. The other message types are used for internal mechanisms and message flows.","sidebar":"tutorialSidebar"},"networking/mqtt/mqtt-5.0":{"id":"networking/mqtt/mqtt-5.0","title":"MQTT 5.0","description":"- Enhancements for scalability and large scale systems in respect to setups with 1000s and millions of devices.","sidebar":"tutorialSidebar"},"networking/mqtt/mqtt-over-websockets":{"id":"networking/mqtt/mqtt-over-websockets","title":"MQTT over WebSockets","description":"We\'ve seen that MQTT is ideal for constrained devices and unreliable networks and that it is perfect for sending messages with a very low overhead. Naturally, it would be quite nice to send and receive MQTT messages directly in a browser. For example, on a mobile phone.MQTT over WebSockets is the answer. MQTT over WebSockets enables the browser to leverage all MQTT features. You can use these capabilities for many interesting use cases:","sidebar":"tutorialSidebar"},"networking/mqtt/mqtt-sn":{"id":"networking/mqtt/mqtt-sn","title":"MQTT - SN","description":"MQTT for Sensor Networks","sidebar":"tutorialSidebar"},"networking/mqtt/mqtt-vs-http":{"id":"networking/mqtt/mqtt-vs-http","title":"MQTT vs HTTP","description":"- MQTT transfers data as a byte array and publish/subscribe model, which makes it perfect for resource-constrained devices and help to save battery.","sidebar":"tutorialSidebar"},"networking/mqtt/paho-client":{"id":"networking/mqtt/paho-client","title":"Paho Client","description":"References","sidebar":"tutorialSidebar"},"networking/mqtt/persistent-session-and-queuing-messages":{"id":"networking/mqtt/persistent-session-and-queuing-messages","title":"Persistent Session & Queuing Messages","description":"To receive messages from an MQTT broker, a client connects to the broker and creates subscriptions to the topics in which it is interested. If the connection between the client and broker is interrupted during a non-persistent session, these topics are lost and the client needs to subscribe again on reconnect. Re-subscribing every time the connection is interrupted is a burden for constrained clients with limited resources. To avoid this problem, the client can request a persistent session when it connects to the broker. Persistent sessions save all information that is relevant for the client on the broker. The clientId that the client provides when it establishes connection to the broker identifies the session","sidebar":"tutorialSidebar"},"networking/mqtt/publish-subscribe-and-unsubscribe":{"id":"networking/mqtt/publish-subscribe-and-unsubscribe","title":"Publish, Subscribe & Unsubscribe","description":"Publish","sidebar":"tutorialSidebar"},"networking/mqtt/publish-subscribe-pattern":{"id":"networking/mqtt/publish-subscribe-pattern","title":"Publish Subscribe Pattern","description":"The publish/subscribe pattern (also known as pub/sub) provides an alternative to traditional client-server architecture. In the client-sever model, a client communicates directly with an endpoint.The pub/sub model decouples the client that sends a message (the publisher) from the client or clients that receive the messages (the subscribers). The publishers and subscribers never contact each other directly. In fact, they are not even aware that the other exists. The connection between them is handled by a third component (the broker). The job of the broker is to filter all incoming messages and distribute them correctly to subscribers.","sidebar":"tutorialSidebar"},"networking/mqtt/qos-levels":{"id":"networking/mqtt/qos-levels","title":"QoS Levels","description":"What is Quality of Service?","sidebar":"tutorialSidebar"},"networking/mqtt/readme":{"id":"networking/mqtt/readme","title":"MQTT","description":"- Intro","sidebar":"tutorialSidebar"},"networking/mqtt/retained-messages":{"id":"networking/mqtt/retained-messages","title":"Retained Messages","description":"In MQTT, the client that publishes a message has no guarantee that a subscribing client actually receives the message. The publishing client can only make sure that the message gets delivered safely to the broker. Basically, the same is true for a subscribing client. The client that connects and subscribes to topics has no guarantee on when the publishing client will publish a message in one of their topics of interest. It can take a few seconds, minutes, or hours for the publisher to send a new message in one of the subscribed topics. Until the next message is published, the subscribing client is totally in the dark about the current status of the topic. This situation is where retained messages come into play.","sidebar":"tutorialSidebar"},"networking/mqtt/scaling":{"id":"networking/mqtt/scaling","title":"Scaling","description":"In a brokered architecture it\'s critical to avoid a single point of failure and to think about scaling out, since typically only one broker node is used. In the context of MQTT there are two different popular strategies applicable:","sidebar":"tutorialSidebar"},"networking/mqtt/security":{"id":"networking/mqtt/security","title":"Security","description":"Security is a very important part of any communication. MQTT itself keeps everything as simple as possible and relies on other proven technologies for safeguards instead of reinventing the wheel.","sidebar":"tutorialSidebar"},"networking/mqtt/topics-and-best-practices":{"id":"networking/mqtt/topics-and-best-practices","title":"Topics & Best Practices","description":"In MQTT, the word topic refers to an UTF-8 string that the broker uses to filter messages for each connected client. The topic consists of one or more topic levels. Each topic level is separated by a forward slash (topic level separator).","sidebar":"tutorialSidebar"},"networking/networking-concepts/addressing-methods-cast-protocols":{"id":"networking/networking-concepts/addressing-methods-cast-protocols","title":"Addressing Methods / cast protocols","description":"The cast term here signifies some data(stream of packets) is being transmitted to the recipient(s) from client(s) side over the communication channel that help them to communicate. Let\'s see some of the \\"cast\\" concepts that are prevailing in the computer networks field.","sidebar":"tutorialSidebar"},"networking/networking-concepts/book-computer-networks":{"id":"networking/networking-concepts/book-computer-networks","title":"Book - Computer Networks","description":"Andrew S Tanenbaum and DAVID J. WETHERALL","sidebar":"tutorialSidebar"},"networking/networking-concepts/cidr":{"id":"networking/networking-concepts/cidr","title":"CIDR","description":"Classless Inter-Domain Routing","sidebar":"tutorialSidebar"},"networking/networking-concepts/data-center-networking":{"id":"networking/networking-concepts/data-center-networking","title":"Data Center Networking","description":"Data center is a pool of resources (computational, storage, network) interconnected using a communication network. Data Center Network (DCN) holds a pivotal role in a data center, as it interconnects all of the data center resources together. DCNs need to be scalable and efficient to connect tens or even hundreds of thousands of servers to handle the growing demands of Cloud computing.Today\'s data centers are constrained by the interconnection network.","sidebar":"tutorialSidebar"},"networking/networking-concepts/forward-error-correction":{"id":"networking/networking-concepts/forward-error-correction","title":"Forward Error Correction","description":"Error Detection and Correction Codes","sidebar":"tutorialSidebar"},"networking/networking-concepts/intro":{"id":"networking/networking-concepts/intro","title":"Intro","description":"Connection","sidebar":"tutorialSidebar"},"networking/networking-concepts/ip":{"id":"networking/networking-concepts/ip","title":"IP","description":"IP addresses are typically made of two separate components. The first part of the address is used to identify the network that the address is a part of. The part that comes afterwards is used to specify a specific host within that network.","sidebar":"tutorialSidebar"},"networking/networking-concepts/network-sockets-ports":{"id":"networking/networking-concepts/network-sockets-ports","title":"Network Sockets/Ports","description":"Network Sockets","sidebar":"tutorialSidebar"},"networking/networking-concepts/networking-fabric":{"id":"networking/networking-concepts/networking-fabric","title":"Networking Fabric","description":"The networking switch fabric is the basic topology of how a network is laid out and connected to switch traffic on a data or circuit-switched network.","sidebar":"tutorialSidebar"},"networking/networking-concepts/osi-layers":{"id":"networking/networking-concepts/osi-layers","title":"OSI Layers","description":"Mnemonic - All people seem to need data processing","sidebar":"tutorialSidebar"},"networking/networking-concepts/others":{"id":"networking/networking-concepts/others","title":"Others","description":"Interface Definition Languages","sidebar":"tutorialSidebar"},"networking/networking-concepts/peer-to-peer":{"id":"networking/networking-concepts/peer-to-peer","title":"Peer to Peer Networks","description":"A\xa0P2P\xa0network is a type of network in which different computers communicate with each other directly without the need for a central server. The peer\xa0in the term indicates that all participating computers/systems are equal. These computers are also called\xa0nodes.","sidebar":"tutorialSidebar"},"networking/networking-concepts/questions":{"id":"networking/networking-concepts/questions","title":"Questions","description":"1. Where would you use exact-match packet forwarding? Where would you use longest-prefix? Whyis 2-choice better than standard hashing?","sidebar":"tutorialSidebar"},"networking/networking-concepts/readme":{"id":"networking/networking-concepts/readme","title":"Networking Concepts","description":"- Intro","sidebar":"tutorialSidebar"},"networking/networking-concepts/routing":{"id":"networking/networking-concepts/routing","title":"Routing","description":"IP addresses are classified into several classes of operational characteristics: unicast, multicast, anycast and broadcast addressing.","sidebar":"tutorialSidebar"},"networking/networking-concepts/sockets":{"id":"networking/networking-concepts/sockets","title":"Sockets","description":"Socket","sidebar":"tutorialSidebar"},"networking/networking-concepts/tcp-ip":{"id":"networking/networking-concepts/tcp-ip","title":"TCP/IP","description":"The OSI Model we just looked at is just a reference/logical model. It was designed to describe the functions of the communication system by dividing the communication procedure into smaller and simpler components. But when we talk about the TCP/IP model, it was designed and developed by Department of Defense (DoD) in 1960s and is based on standard protocols. It stands for Transmission Control Protocol/Internet Protocol. TheTCP/IP modelis a concise version of the OSI model. It contains four layers, unlike seven layers in the OSI model. The layers are:","sidebar":"tutorialSidebar"},"networking/others/5g-wireless-networking":{"id":"networking/others/5g-wireless-networking","title":"5G Wireless Networking","description":"Wireless Network Design","sidebar":"tutorialSidebar"},"networking/others/apache-avro":{"id":"networking/others/apache-avro","title":"Apache Avro","description":"Apache Avro is a language-neutral fast data serialization system. It was developed by Doug Cutting, the father of Hadoop. Since Hadoop writable classes lack language portability, Avro becomes quite helpful, as it deals with data formats that can be processed by multiple languages. Avro is a preferred tool to serialize data in Hadoop.","sidebar":"tutorialSidebar"},"networking/others/apache-parquet":{"id":"networking/others/apache-parquet","title":"Apache Parquet","description":"Apache Parquet is a free and open-sourcecolumn-oriented data store of the Apache Hadoop ecosystem. It is similar to the other columnar-storage file formats available in Hadoop namely RCFile and Optimized RCFile (ORC). It is compatible with most of the data processing frameworks in the Hadoop environment. It provides efficient data compression and encoding schemes with enhanced performance to handle complex data in bulk","sidebar":"tutorialSidebar"},"networking/others/data-formats":{"id":"networking/others/data-formats","title":"Data formats","description":"Hierarchical Data Format","sidebar":"tutorialSidebar"},"networking/others/delta-lake":{"id":"networking/others/delta-lake","title":"Delta Lake","description":"Delta Lake is an open-source storage framework that enables building a Lakehouse architecture with compute engines including Spark, PrestoDB, Flink, Trino, and Hive and APIs for Scala, Java, Rust, Ruby, and Python.","sidebar":"tutorialSidebar"},"networking/others/delta-lake-tutorial":{"id":"networking/others/delta-lake-tutorial","title":"Delta Lake Tutorial","description":"Tutorial: Delta Lake | Databricks on AWS","sidebar":"tutorialSidebar"},"networking/others/falcor":{"id":"networking/others/falcor","title":"Falcor","description":"A JavaScript library for efficient data fetching","sidebar":"tutorialSidebar"},"networking/others/file-formats":{"id":"networking/others/file-formats","title":"File Formats","description":"CSV, TSV, JSON, and Avro, are traditional row-based file formats. Parquet, and ORC file are columnar file formats.","sidebar":"tutorialSidebar"},"networking/others/file-formats-comparisons":{"id":"networking/others/file-formats-comparisons","title":"File Format Comparisons","description":"Avro vs Protobuf","sidebar":"tutorialSidebar"},"networking/others/grpc/commands":{"id":"networking/others/grpc/commands","title":"Commands","description":"Tools","sidebar":"tutorialSidebar"},"networking/others/grpc/comparison":{"id":"networking/others/grpc/comparison","title":"Comparison","description":"Performance benchmarks","sidebar":"tutorialSidebar"},"networking/others/grpc/concepts":{"id":"networking/others/grpc/concepts","title":"Concepts","description":"Flow Control","sidebar":"tutorialSidebar"},"networking/others/grpc/guides":{"id":"networking/others/grpc/guides","title":"Guides","description":"- Authentication","sidebar":"tutorialSidebar"},"networking/others/grpc/intro":{"id":"networking/others/grpc/intro","title":"gRPC","description":"- RPC - Remote Procedure Call framework that uses HTTP 2.0 and Protocol Buffers","sidebar":"tutorialSidebar"},"networking/others/grpc/others":{"id":"networking/others/grpc/others","title":"Others","description":"How to automate grpc generation using git hooks, why grpc over REST + JSON","sidebar":"tutorialSidebar"},"networking/others/grpc/readme":{"id":"networking/others/grpc/readme","title":"gRPC","description":"- gRPC","sidebar":"tutorialSidebar"},"networking/others/other":{"id":"networking/others/other","title":"Others","description":"OpenConnect","sidebar":"tutorialSidebar"},"networking/others/protocol-buffers-protobuf":{"id":"networking/others/protocol-buffers-protobuf","title":"Protocol Buffers Protobuf","description":"Protocol Buffers are a way of encoding structured data in an efficient yet extensible format. Google uses Protocol Buffers for almost all of its internal RPC protocols and file formats.","sidebar":"tutorialSidebar"},"networking/others/readme":{"id":"networking/others/readme","title":"Others","description":"- Falcor","sidebar":"tutorialSidebar"},"networking/others/rpc":{"id":"networking/others/rpc","title":"RPC","description":"https://sbdevel.wordpress.com/2009/12/17/the-case-rpc-vs-messaging","sidebar":"tutorialSidebar"},"networking/others/serialization-deserialization":{"id":"networking/others/serialization-deserialization","title":"Serialization/Deserialization","description":"Serialization is the process of turning structured in-memory objects into a byte stream for transmission over a network or for writing to persistent storage","sidebar":"tutorialSidebar"},"networking/others/vpn":{"id":"networking/others/vpn","title":"VPN","description":"A virtual private network (VPN) extends a private network across a public network, and enables users to send and receive data across shared or public networks as if their computing devices were directly connected to the private network. Applications running on a computing device, e.g., a laptop, desktop, smartphone, across a VPN may therefore benefit from the functionality, security, and management of the private network. Encryption is a common, though not an inherent, part of a VPN connection.","sidebar":"tutorialSidebar"},"networking/others/vpn-tools":{"id":"networking/others/vpn-tools","title":"VPN Tools","description":"Openvpn","sidebar":"tutorialSidebar"},"networking/protocols/amqp":{"id":"networking/protocols/amqp","title":"AMQP","description":"Advanced Message Queuing Protocol (AMQP)","sidebar":"tutorialSidebar"},"networking/protocols/dns-domain-name-system":{"id":"networking/protocols/dns-domain-name-system","title":"DNS Domain Name System","description":"https://dnschecker.org","sidebar":"tutorialSidebar"},"networking/protocols/graphql":{"id":"networking/protocols/graphql","title":"GraphQL","description":"GraphQL will do to REST what JSON did to XML.","sidebar":"tutorialSidebar"},"networking/protocols/http-3-quic":{"id":"networking/protocols/http-3-quic","title":"HTTP/3 QUIC","description":"QUIC - Quick UDP Internet Connections","sidebar":"tutorialSidebar"},"networking/protocols/http-https":{"id":"networking/protocols/http-https","title":"HTTP / HTTPS","description":"- URL - Uniform Resource Locator","sidebar":"tutorialSidebar"},"networking/protocols/http-status-code":{"id":"networking/protocols/http-status-code","title":"Http Status Code","description":"1\xd7\xd7 Informational","sidebar":"tutorialSidebar"},"networking/protocols/intro":{"id":"networking/protocols/intro","title":"Protocols","description":"1. Application Layer","sidebar":"tutorialSidebar"},"networking/protocols/messaging":{"id":"networking/protocols/messaging","title":"Messaging","description":"For Messaging consider it like email, not between people but between different apps on different machines. A message is typically some container-like format with some extra metadata naming the sender and the recipent(s), maybe timestamps and serial numbers. All you can do in a messaging system is basically to send a message to a particular address. Whether or when the resident at that address responds is not possible to determine -- just like email in that sense. For a large scale example of a messaging system we have the internet itself. The very much hyped REST interactions of online services is also an example where messaging is starting to show success.","sidebar":"tutorialSidebar"},"networking/protocols/openapi":{"id":"networking/protocols/openapi","title":"OpenAPI","description":"What Is OpenAPI?","sidebar":"tutorialSidebar"},"networking/protocols/openthread":{"id":"networking/protocols/openthread","title":"OpenThread","description":"Thread","sidebar":"tutorialSidebar"},"networking/protocols/others":{"id":"networking/protocols/others","title":"Others","description":"LWM2M - Light Weight Machine-to-Machine","sidebar":"tutorialSidebar"},"networking/protocols/protocols-intro":{"id":"networking/protocols/protocols-intro","title":"Protocols Intro","description":"Media Access Control (MAC Address)","sidebar":"tutorialSidebar"},"networking/protocols/readme":{"id":"networking/protocols/readme","title":"Protocols","description":"- Protocols","sidebar":"tutorialSidebar"},"networking/protocols/rest-representational-state-transfer-restful":{"id":"networking/protocols/rest-representational-state-transfer-restful","title":"REST Representational State Transfer / RESTFul","description":"REST + JSON over HTTP","sidebar":"tutorialSidebar"},"networking/protocols/rsocket":{"id":"networking/protocols/rsocket","title":"Rsocket","description":"RSocket is a binary protocol for use on byte stream transports such as TCP, WebSockets, and Aeron.","sidebar":"tutorialSidebar"},"networking/protocols/tcp-connection-oriented-protocol/flow-control":{"id":"networking/protocols/tcp-connection-oriented-protocol/flow-control","title":"Flow Control","description":"Flow Control basically means that TCP will ensure that a sender is not overwhelming a receiver by sending packets faster than it can consume. It\'s pretty similar to what\'s normally called Back pressure in the Distributed Systems literature. The idea is that a node receiving data will send some kind of feedback to the node sending the data to let it know about its current condition.","sidebar":"tutorialSidebar"},"networking/protocols/tcp-connection-oriented-protocol/readme":{"id":"networking/protocols/tcp-connection-oriented-protocol/readme","title":"TCP (Connection Oriented Protocol)","description":"TCP stands for transmission control protocol. It is implemented in the transport layer of the IP/TCP model and is used to establish reliable connections.","sidebar":"tutorialSidebar"},"networking/protocols/udp":{"id":"networking/protocols/udp","title":"UDP","description":"In computer networking, theUser Datagram Protocol(UDP) is one of the core members of the Internet protocol suite. The protocol was designed by David P. Reed in 1980 and formally defined in RFC) 768. With UDP, computer applications can send messages, in this case referred to as datagrams, to other hosts on an Internet Protocol(IP) network. Prior communications are not required in order to set up communication channels or data paths.","sidebar":"tutorialSidebar"},"networking/protocols/video-live-streaming":{"id":"networking/protocols/video-live-streaming","title":"Video / Live Streaming","description":"Tools","sidebar":"tutorialSidebar"},"networking/protocols/weave":{"id":"networking/protocols/weave","title":"Weave","description":"Weave is a set of application-level networking protocols built around a common addressing and naming architecture with low overhead serialization protocols and modern security.","sidebar":"tutorialSidebar"},"networking/protocols/websockets":{"id":"networking/protocols/websockets","title":"WebSockets","description":"WebSocket is a computer communications protocol, providing full-duplex communication channels over a single TCP connection. The WebSocket protocol was standardized by the IETF as RFC 6455 in 2011, and the WebSocket API in Web IDL is being standardized by the W3C.","sidebar":"tutorialSidebar"},"networking/protocols/zeromq-distributed-messaging":{"id":"networking/protocols/zeromq-distributed-messaging","title":"ZeroMQ: Distributed Messaging","description":"ZeroMQ (also known as \xd8MQ, 0MQ, or zmq) looks like an embeddable networking library but acts like a concurrency framework. It gives you sockets that carry atomic messages across various transports like in-process, inter-process, TCP, and multicast. You can connect sockets N-to-N with patterns like fan-out, pub-sub, task distribution, and request-reply. It\'s fast enough to be the fabric for clustered products. Its asynchronous I/O model gives you scalable multicore applications, built as asynchronous message-processing tasks. It has a score of language APIs and runs on most operating systems.- Carries messages across inproc, IPC, TCP, TIPC, multicast.","sidebar":"tutorialSidebar"},"networking/readme":{"id":"networking/readme","title":"Networking","description":"- Networking Concepts","sidebar":"tutorialSidebar"},"psychology/biases-fallacies":{"id":"psychology/biases-fallacies","title":"Biases / Fallacies","description":"There are two major types of logical fallacies","sidebar":"tutorialSidebar"},"psychology/brain":{"id":"psychology/brain","title":"Brain","description":"Left side of brain - Logic, Language, Linear (Analytical / Logical)","sidebar":"tutorialSidebar"},"psychology/burnout":{"id":"psychology/burnout","title":"Burnout","description":"Programmers Burnout","sidebar":"tutorialSidebar"},"psychology/consumerism":{"id":"psychology/consumerism","title":"Consumerism","description":"Spending money not equal to happiness","sidebar":"tutorialSidebar"},"psychology/course-mindshift":{"id":"psychology/course-mindshift","title":"Course - Mindshift","description":"Change is Possible","sidebar":"tutorialSidebar"},"psychology/criticism":{"id":"psychology/criticism","title":"Criticism / Criticizing / Criticize / Critic","description":"How to Handle Criticism, Hate and Disrespect?","sidebar":"tutorialSidebar"},"psychology/defence-mechanisms":{"id":"psychology/defence-mechanisms","title":"Defence Mechanisms","description":"Getting to know ourselves better sounds, on the surface, like a project we might all buy into. But this is to underestimate the extent to which are, just below the surface, typically highly invested in not getting to know or feel a range of important but troubling things about who we are. Whatever lipservice we may pay to the project of self-knowledge, we would - it seems - very much like not to know a great deal about our identities.","sidebar":"tutorialSidebar"},"psychology/emotions":{"id":"psychology/emotions","title":"Emotions","description":"Emotion Wheels","sidebar":"tutorialSidebar"},"psychology/habits":{"id":"psychology/habits","title":"Habits","description":"Self-Control","sidebar":"tutorialSidebar"},"psychology/human-psychology-and-thinking":{"id":"psychology/human-psychology-and-thinking","title":"Human Psychology & Thinking","description":"We all crave attention - Therefore if you even know everything, still you ask questions, just for attention","sidebar":"tutorialSidebar"},"psychology/ikigai":{"id":"psychology/ikigai","title":"Ikigai","description":"image","sidebar":"tutorialSidebar"},"psychology/intelligence":{"id":"psychology/intelligence","title":"Intelligence","description":"Howard Gardner, a psychologist & professor at Harvard University, first introduced the concept of 8 types of human intelligence in his 1983 book Frames of Mind.","sidebar":"tutorialSidebar"},"psychology/intro":{"id":"psychology/intro","title":"Psychology","description":"Maslow\'s hierarchy of needs","sidebar":"tutorialSidebar"},"psychology/learning/chunking-the-essentials":{"id":"psychology/learning/chunking-the-essentials","title":"Chunking - The Essentials","description":"Key points","sidebar":"tutorialSidebar"},"psychology/learning/concentration-mindfulness-attention-focus-hard-work":{"id":"psychology/learning/concentration-mindfulness-attention-focus-hard-work","title":"Concentration / Mindfulness / Attention / Focus / Hard Work","description":"I think, therefore I am distracted.","sidebar":"tutorialSidebar"},"psychology/learning/course-learning-how-to-learn":{"id":"psychology/learning/course-learning-how-to-learn","title":"Course - Learning How to Learn","description":"Key Chunks discussed in the course from which you can recall whole course","sidebar":"tutorialSidebar"},"psychology/learning/exams":{"id":"psychology/learning/exams","title":"Exams","description":"The strategy to ace Exams","sidebar":"tutorialSidebar"},"psychology/learning/learning-intro":{"id":"psychology/learning/learning-intro","title":"Learning - Intro","description":"https://guides.lib.uoguelph.ca/c.php?g=697430&p=4949569","sidebar":"tutorialSidebar"},"psychology/learning/memory":{"id":"psychology/learning/memory","title":"Memory","description":"Brain have a visual spatial center - Therefore images are stored very efficiently.","sidebar":"tutorialSidebar"},"psychology/learning/mistakes-apology":{"id":"psychology/learning/mistakes-apology","title":"Mistakes / Apology","description":"Never make the same mistake twice.","sidebar":"tutorialSidebar"},"psychology/learning/note-taking-second-brain-pkm-zettelkasten":{"id":"psychology/learning/note-taking-second-brain-pkm-zettelkasten","title":"Note Taking / Second Brain / PKM / Zettelkasten / Digital Garden","description":"Your brain is for having ideas not holding them","sidebar":"tutorialSidebar"},"psychology/learning/readme":{"id":"psychology/learning/readme","title":"Learning","description":"- Learning Intro","sidebar":"tutorialSidebar"},"psychology/learning/speed-reading":{"id":"psychology/learning/speed-reading","title":"Speed Reading","description":"Read to Lead","sidebar":"tutorialSidebar"},"psychology/learning/tips":{"id":"psychology/learning/tips","title":"Tips","description":"https://en.wikipedia.org/wiki/Listofmnemonics","sidebar":"tutorialSidebar"},"psychology/life-relationship-people":{"id":"psychology/life-relationship-people","title":"Life / Relationship / People","description":"When working with people, assume good intentions.","sidebar":"tutorialSidebar"},"psychology/mental-models":{"id":"psychology/mental-models","title":"Mental Models","description":"80/20 Rule / Pareto Principle","sidebar":"tutorialSidebar"},"psychology/others":{"id":"psychology/others","title":"Others","description":"Classical Conditioning (Pavlov\'s Experiment)","sidebar":"tutorialSidebar"},"psychology/paradox":{"id":"psychology/paradox","title":"Paradox","description":"Omnipotence paradox: Can an omnipotent being create a rock too heavy for itself to lift?","sidebar":"tutorialSidebar"},"psychology/parenting":{"id":"psychology/parenting","title":"Parenting / children","description":"- Use adjectives - Teddy\u2019s fur is soft,\u201d \u201cThe radio is quiet,\u201d \u201cThe tree outside is big","sidebar":"tutorialSidebar"},"psychology/people":{"id":"psychology/people","title":"People","description":"Financial Experts","sidebar":"tutorialSidebar"},"psychology/personality":{"id":"psychology/personality","title":"Personality","description":"Class is permanent and form is temporary","sidebar":"tutorialSidebar"},"psychology/power":{"id":"psychology/power","title":"Power","description":"Power tends to corrupt, absolute power corrupts absolutely","sidebar":"tutorialSidebar"},"psychology/procrastination":{"id":"psychology/procrastination","title":"Procrastination","description":"Procrastination and Lazyness are the biggest disability of all.","sidebar":"tutorialSidebar"},"psychology/productivity-productive-time-management-todo":{"id":"psychology/productivity-productive-time-management-todo","title":"Productivity / Productive / Time Management / TODO","description":"Productivity isn\'t everything, but, in the long run, it is almost everything -- Economist Paul Krugman, in The Age of Diminished Expectations","sidebar":"tutorialSidebar"},"psychology/readme":{"id":"psychology/readme","title":"Psychology","description":"- Learning","sidebar":"tutorialSidebar"},"psychology/research":{"id":"psychology/research","title":"Research","description":"The main point of science is to ask the right questions.","sidebar":"tutorialSidebar"},"psychology/self-awareness":{"id":"psychology/self-awareness","title":"Self Awareness","description":"It is the ability to see ourselves clearly, to understand who we are, how other see us, and how we fit into the world","sidebar":"tutorialSidebar"},"psychology/self-control-will-power":{"id":"psychology/self-control-will-power","title":"Self Control / Will Power","description":"Before you try to increase your willpower, try to decrease the friction in your environment.","sidebar":"tutorialSidebar"},"psychology/sleep":{"id":"psychology/sleep","title":"Sleep","description":"Sleep is a question of ease. If you are totally at ease, your sleep quality will go up and your sleep quota will go down. -- Sadhguru","sidebar":"tutorialSidebar"},"psychology/soft-skills/asking-right-questions":{"id":"psychology/soft-skills/asking-right-questions","title":"Asking Right Questions","description":"A good question is the one that lets you obtain thetype, quality, and quantity of information you need.","sidebar":"tutorialSidebar"},"psychology/soft-skills/disagreement-feedback":{"id":"psychology/soft-skills/disagreement-feedback","title":"Disagreement / Feedback","description":"Giving Feedback","sidebar":"tutorialSidebar"},"psychology/soft-skills/listening":{"id":"psychology/soft-skills/listening","title":"Listening","description":"When we listen, we hear someone into existence -- Laurie Buchanan, PhD","sidebar":"tutorialSidebar"},"psychology/soft-skills/negotiation":{"id":"psychology/soft-skills/negotiation","title":"Negotiation Tips","description":"You want leverage.","sidebar":"tutorialSidebar"},"psychology/soft-skills/prioritization-leverage":{"id":"psychology/soft-skills/prioritization-leverage","title":"Prioritization / Leverage","description":"Many people work hard, but few people work on the highest and best thing.","sidebar":"tutorialSidebar"},"psychology/soft-skills/readme":{"id":"psychology/soft-skills/readme","title":"Soft Skills","description":"- Listening","sidebar":"tutorialSidebar"},"psychology/soft-skills/reasoning":{"id":"psychology/soft-skills/reasoning","title":"Reasoning","description":"Reason is the capacity for consciously making sense of things, applying logic, for establishing and verifying facts, and changing or justifying practices, institutions, and beliefs based on new or existing information. It is closely associated with such characteristically human activities as philosophy, science, language, mathematics, and art, and is normally considered to be a definitive characteristic of human nature.","sidebar":"tutorialSidebar"},"psychology/soft-skills/speaking-phrases-quotes":{"id":"psychology/soft-skills/speaking-phrases-quotes","title":"Speaking - Phrases / Quotes","description":"Quotes","sidebar":"tutorialSidebar"},"psychology/soft-skills/speaking-story-talking-conversation-presentation-phrases":{"id":"psychology/soft-skills/speaking-story-talking-conversation-presentation-phrases","title":"Speaking / Story / Talking / Presentation / Phrases / Body Language","description":"Use english - Indians have a bias towards English","sidebar":"tutorialSidebar"},"psychology/soft-skills/writing":{"id":"psychology/soft-skills/writing","title":"Writing / Newsletter","description":"\\"Don\'t write to sound smart. Write to be useful.","sidebar":"tutorialSidebar"},"psychology/stoicism":{"id":"psychology/stoicism","title":"Stoicism","description":"How to be a stoic","sidebar":"tutorialSidebar"},"psychology/strategic-thinking":{"id":"psychology/strategic-thinking","title":"Strategic Thinking","description":"Defined as the process that determines the manner in which people think about, assess, view, and create the future for themselves and others.It\'s a combination of mindset and techniques that determines one\'s ability to know their goal and how to achieve it.","sidebar":"tutorialSidebar"},"psychology/thinking-mental-models":{"id":"psychology/thinking-mental-models","title":"Thinking Mental Models","description":"- The Scientific Method","sidebar":"tutorialSidebar"},"psychology/travelling":{"id":"psychology/travelling","title":"Travelling","description":"Case Against Travel","sidebar":"tutorialSidebar"},"psychology/trust":{"id":"psychology/trust","title":"Trust","description":"Trust does not mean that others have to do things the way you expect them to. Trust means to become vulnerable.","sidebar":"tutorialSidebar"},"python/advanced/architecture":{"id":"python/advanced/architecture","title":"Architecture","description":"Working","sidebar":"tutorialSidebar"},"python/advanced/concurrency":{"id":"python/advanced/concurrency","title":"Concurrency","description":"Global Interpreter Lock (GIL)","sidebar":"tutorialSidebar"},"python/advanced/cpython":{"id":"python/advanced/cpython","title":"CPython","description":"CPython is a stack-oriented virtual machine","sidebar":"tutorialSidebar"},"python/advanced/faster-python":{"id":"python/advanced/faster-python","title":"Faster Python","description":"1. Line Profiling","sidebar":"tutorialSidebar"},"python/advanced/idiomatic-python":{"id":"python/advanced/idiomatic-python","title":"Idiomatic Python","description":"Idiomatic Python","sidebar":"tutorialSidebar"},"python/advanced/memory-management":{"id":"python/advanced/memory-management","title":"Memory Management","description":"Everything in Python is an object. Some objects can hold other objects, such as lists, tuples, dicts, classes, etc. Because of dynamic Python\'s nature, such approach requires a lot of small memory allocations. To speed-up memory operations and reduce fragmentation Python uses a special manager on top of the general-purpose allocator, called PyMalloc.","sidebar":"tutorialSidebar"},"python/advanced/mixin":{"id":"python/advanced/mixin","title":"Mixin","description":"A mixin is a special kind of multiple inheritance. There are two main situations where mixins are used:","sidebar":"tutorialSidebar"},"python/advanced/others":{"id":"python/advanced/others","title":"Others","description":"The priority of how methods are resolved is from left to right","sidebar":"tutorialSidebar"},"python/advanced/python-tricks":{"id":"python/advanced/python-tricks","title":"Python Tricks","description":"Patterns for Cleaner Python","sidebar":"tutorialSidebar"},"python/advanced/python-versions":{"id":"python/advanced/python-versions","title":"Python Versions","description":"Python2 vs Python3","sidebar":"tutorialSidebar"},"python/advanced/readme":{"id":"python/advanced/readme","title":"Advanced","description":"- Architecture","sidebar":"tutorialSidebar"},"python/advanced/super":{"id":"python/advanced/super","title":"Super","description":"Super considered super - pycon 2015","sidebar":"tutorialSidebar"},"python/advanced/web-scraping":{"id":"python/advanced/web-scraping","title":"Web Scraping","description":"Web Scraping is a technique in which a computer program extracts data from human-readable output coming from websites.","sidebar":"tutorialSidebar"},"python/django/admin-site":{"id":"python/django/admin-site","title":"Admin site","description":"Overview","sidebar":"tutorialSidebar"},"python/django/advanced":{"id":"python/django/advanced","title":"Advanced","description":"1. Atomic Transactions","sidebar":"tutorialSidebar"},"python/django/architecture":{"id":"python/django/architecture","title":"Architecture","description":"Follows Model-View-Template (MVT) architectural pattern.","sidebar":"tutorialSidebar"},"python/django/authentication-authorization":{"id":"python/django/authentication-authorization","title":"Authentication / Authorization","description":"https://docs.djangoproject.com/en/1.11/topics/auth/customizing","sidebar":"tutorialSidebar"},"python/django/cheatsheet":{"id":"python/django/cheatsheet","title":"Cheatsheet","description":"image","sidebar":"tutorialSidebar"},"python/django/commands":{"id":"python/django/commands","title":"Commands","description":"- migrate, which is responsible for applying and unapplying migrations.","sidebar":"tutorialSidebar"},"python/django/content-types":{"id":"python/django/content-types","title":"Content Types","description":"Content Types","sidebar":"tutorialSidebar"},"python/django/django-rest-framework-drf":{"id":"python/django/django-rest-framework-drf","title":"Django Rest Framework DRF","description":"Django REST framework is a powerful and flexible toolkit for building Web APIs.","sidebar":"tutorialSidebar"},"python/django/django-template-language":{"id":"python/django/django-template-language","title":"Django Template Language","description":"{{ foo }} - this is a placeholder in the template, for the variable foo that is passed to the template from a view.","sidebar":"tutorialSidebar"},"python/django/docs-topic-guides":{"id":"python/django/docs-topic-guides","title":"Docs - Topic Guides","description":"- How to install Django","sidebar":"tutorialSidebar"},"python/django/libraries":{"id":"python/django/libraries","title":"Libaries","description":"https://dev.to/sm0ke/django-framework-popular-extensions-a-short-list-130","sidebar":"tutorialSidebar"},"python/django/logging":{"id":"python/django/logging","title":"Logging","description":"Django uses Python\'s builtin logging module to perform system logging.","sidebar":"tutorialSidebar"},"python/django/models":{"id":"python/django/models","title":"Models","description":"A model is the single, definitive source of information about your data. It contains the essential fields and behaviors of the data you\'re storing. Generally, each model maps to a single database table.","sidebar":"tutorialSidebar"},"python/django/optimizations":{"id":"python/django/optimizations","title":"Optimizations","description":"Caching","sidebar":"tutorialSidebar"},"python/django/other-topics":{"id":"python/django/other-topics","title":"Other Topics","description":"The model layer","sidebar":"tutorialSidebar"},"python/django/others":{"id":"python/django/others","title":"Others","description":"Fixtures","sidebar":"tutorialSidebar"},"python/django/overview":{"id":"python/django/overview","title":"Overview","description":"https://www.djangoproject.com/start/overview","sidebar":"tutorialSidebar"},"python/django/queryset-and-query-expressions":{"id":"python/django/queryset-and-query-expressions","title":"QuerySet & Query Expressions","description":"A QuerySet is, in essence, a list of objects of a given Model. QuerySets allow you to read the data from the database, filter it and order it. Internally, a QuerySet can be constructed, filtered, sliced, and generally passed around without actually hitting the database. No database activity actually occurs until you do something to evaluate the queryset.","sidebar":"tutorialSidebar"},"python/django/readme":{"id":"python/django/readme","title":"Django","description":"- Overview","sidebar":"tutorialSidebar"},"python/django/unicode":{"id":"python/django/unicode","title":"Unicode","description":"There are 3 built-in methods for string conversion -","sidebar":"tutorialSidebar"},"python/documentation/01-intro":{"id":"python/documentation/01-intro","title":"1. Intro","description":"Characteristics","sidebar":"tutorialSidebar"},"python/documentation/02-built-in-functions":{"id":"python/documentation/02-built-in-functions","title":"2. Built-in Functions","description":"1. abs()","sidebar":"tutorialSidebar"},"python/documentation/03-built-in-constants":{"id":"python/documentation/03-built-in-constants","title":"3. Built-in Constants","description":"A small number of constants live in the built-in namespace. They are:","sidebar":"tutorialSidebar"},"python/documentation/04-built-in-types":{"id":"python/documentation/04-built-in-types","title":"4. Built-in Types","description":"4.1. Truth Value Testing","sidebar":"tutorialSidebar"},"python/documentation/06-text-processing-services":{"id":"python/documentation/06-text-processing-services","title":"6. Text Processing Services","description":"6.1. string - Common string operations","sidebar":"tutorialSidebar"},"python/documentation/07-binary-data-services":{"id":"python/documentation/07-binary-data-services","title":"7. Binary Data Services","description":"- struct - Interpret bytes as packed binary data","sidebar":"tutorialSidebar"},"python/documentation/08-data-types":{"id":"python/documentation/08-data-types","title":"8. Data Types","description":"8.1. datetime - Basic date and time types","sidebar":"tutorialSidebar"},"python/documentation/09-numeric-and-mathematical-modules":{"id":"python/documentation/09-numeric-and-mathematical-modules","title":"9. Numeric and Mathematical Modules","description":"9.1. numbers - Numeric abstract base classes","sidebar":"tutorialSidebar"},"python/documentation/10-functional-programming-modules":{"id":"python/documentation/10-functional-programming-modules","title":"10. Functional Programming Modules","description":"10.1. itertools - Functions creating iterators for efficient looping","sidebar":"tutorialSidebar"},"python/documentation/11-file-and-directory-access":{"id":"python/documentation/11-file-and-directory-access","title":"11. File and Directory Access","description":"The modules described in this chapter deal with disk files and directories. For example, there are modules for reading the properties of files, manipulating paths in a portable way, and creating temporary files. The full list of modules in this chapter is:","sidebar":"tutorialSidebar"},"python/documentation/12-data-persistence":{"id":"python/documentation/12-data-persistence","title":"12. Data Persistence","description":"- 12.1.pickle - Python object serialization","sidebar":"tutorialSidebar"},"python/documentation/14-file-formats":{"id":"python/documentation/14-file-formats","title":"14. File Formats","description":"- 14.1.csv - CSV File Reading and Writing","sidebar":"tutorialSidebar"},"python/documentation/15-cryptographic-services":{"id":"python/documentation/15-cryptographic-services","title":"15. Cryptographic Services","description":"- hashlib - Secure hashes and message digests","sidebar":"tutorialSidebar"},"python/documentation/16-generic-operating-system-services-logging":{"id":"python/documentation/16-generic-operating-system-services-logging","title":"16. Generic Operating System Services / Logging","description":"16.1.os - Miscellaneous operating system interfaces","sidebar":"tutorialSidebar"},"python/documentation/17-concurrent-execution":{"id":"python/documentation/17-concurrent-execution","title":"17. Concurrent Execution","description":"- 17.1.threading - Thread-based parallelism","sidebar":"tutorialSidebar"},"python/documentation/18-interprocess-communication-and-networking":{"id":"python/documentation/18-interprocess-communication-and-networking","title":"18. Interprocess Communication and Networking","description":"- 18.1.socket - Low-level networking interface","sidebar":"tutorialSidebar"},"python/documentation/19-internet-data-handling":{"id":"python/documentation/19-internet-data-handling","title":"19. Internet Data Handling","description":"- 19.1.email - An email and MIME handling package","sidebar":"tutorialSidebar"},"python/documentation/21-structured-markup-processing-tools":{"id":"python/documentation/21-structured-markup-processing-tools","title":"21. Structured Markup Processing Tools","description":"- html - HyperText Markup Language support","sidebar":"tutorialSidebar"},"python/documentation/22-internet-protocols-and-support":{"id":"python/documentation/22-internet-protocols-and-support","title":"22. Internet Protocols and Support","description":"21.1. webbrowser","sidebar":"tutorialSidebar"},"python/documentation/27-development-tools/readme":{"id":"python/documentation/27-development-tools/readme","title":"27. Development Tools","description":"27.1. typing - Support for type hints","sidebar":"tutorialSidebar"},"python/documentation/27-development-tools/static-code-analysis":{"id":"python/documentation/27-development-tools/static-code-analysis","title":"Static Code Analysis","description":"black / autopep8 / yapf (Auto formatters)","sidebar":"tutorialSidebar"},"python/documentation/27-development-tools/testing":{"id":"python/documentation/27-development-tools/testing","title":"Testing","description":"1. Create your inputs","sidebar":"tutorialSidebar"},"python/documentation/28-debugging-and-profiling":{"id":"python/documentation/28-debugging-and-profiling","title":"28. Debugging and Profiling","description":"27.1. bdb - Debugger framework","sidebar":"tutorialSidebar"},"python/documentation/30-python-runtime-services":{"id":"python/documentation/30-python-runtime-services","title":"30. Python Runtime Services","description":"30.1. sys - System-specific parameters and functions","sidebar":"tutorialSidebar"},"python/documentation/33-python-language-services":{"id":"python/documentation/33-python-language-services","title":"33. Python Language Services","description":"https://docs.python.org/3/library/language.html","sidebar":"tutorialSidebar"},"python/documentation/pep":{"id":"python/documentation/pep","title":"PEP","description":"PEP-0 - Python Enhancement Proposals","sidebar":"tutorialSidebar"},"python/documentation/python-howtos":{"id":"python/documentation/python-howtos","title":"Python HowTos","description":"- Porting Python 2 Code to Python 3","sidebar":"tutorialSidebar"},"python/documentation/python-language-reference":{"id":"python/documentation/python-language-reference","title":"Python Language Reference","description":"Describes the syntax and \\"core semantics\\" of the language.","sidebar":"tutorialSidebar"},"python/documentation/readme":{"id":"python/documentation/readme","title":"Documentation","description":"- The Python Standard Library","sidebar":"tutorialSidebar"},"python/documentation/the-python-standard-library":{"id":"python/documentation/the-python-standard-library","title":"The Python Standard Library","description":"Documentation","sidebar":"tutorialSidebar"},"python/others/boto-and-boto3/readme":{"id":"python/others/boto-and-boto3/readme","title":"boto & boto3","description":"AWS SDK for python","sidebar":"tutorialSidebar"},"python/others/boto-and-boto3/slides":{"id":"python/others/boto-and-boto3/slides","title":"Slides","description":"Boto3","sidebar":"tutorialSidebar"},"python/others/fastapi/internal-working":{"id":"python/others/fastapi/internal-working","title":"Internal working","description":"Concurrency","sidebar":"tutorialSidebar"},"python/others/fastapi/readme":{"id":"python/others/fastapi/readme","title":"FastAPI","description":"FastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.6+ based on standard Python type hints.","sidebar":"tutorialSidebar"},"python/others/flask/documentation":{"id":"python/others/flask/documentation","title":"Documentation","description":"Flask depends on the Jinja template engine and the Werkzeug WSGI toolkit. The documentation for these libraries can be found at:","sidebar":"tutorialSidebar"},"python/others/flask/flask-sqlalchemy":{"id":"python/others/flask/flask-sqlalchemy","title":"Flask-sqlalchemy","description":"https://github.com/pallets/flask-sqlalchemy","sidebar":"tutorialSidebar"},"python/others/flask/others":{"id":"python/others/flask/others","title":"Others","description":"https://github.com/pallets/flask/tree/1.1.2/examples/tutorial","sidebar":"tutorialSidebar"},"python/others/flask/readme":{"id":"python/others/flask/readme","title":"Flask","description":"Flask is a micro web framework written in Python and based on the Werkzeug toolkit and Jinja2 template engine.","sidebar":"tutorialSidebar"},"python/others/frameworks":{"id":"python/others/frameworks","title":"Frameworks","description":"Tornado","sidebar":"tutorialSidebar"},"python/others/libraries":{"id":"python/others/libraries","title":"Libraries","description":"nose packages","sidebar":"tutorialSidebar"},"python/others/pymysql":{"id":"python/others/pymysql","title":"PyMySQL","description":"https://github.com/PyMySQL/PyMySQL","sidebar":"tutorialSidebar"},"python/others/readme":{"id":"python/others/readme","title":"Others","description":"- Requests","sidebar":"tutorialSidebar"},"python/others/requests":{"id":"python/others/requests","title":"Requests","description":"https://julien.danjou.info/python-and-fast-http-clients","sidebar":"tutorialSidebar"},"python/others/sqlalchemy/models":{"id":"python/others/sqlalchemy/models","title":"Models","description":"https://docs.sqlalchemy.org/en/14/orm/quickstart.html","sidebar":"tutorialSidebar"},"python/others/sqlalchemy/orm":{"id":"python/others/sqlalchemy/orm","title":"ORM","description":"ORM (Object Relational Mapper)","sidebar":"tutorialSidebar"},"python/others/sqlalchemy/readme":{"id":"python/others/sqlalchemy/readme","title":"SQLAlchemy","description":"Alchemist","sidebar":"tutorialSidebar"},"python/others/twisted":{"id":"python/others/twisted","title":"Twisted","description":"Twisted is an event-driven networking engine written in Python","sidebar":"tutorialSidebar"},"python/python-intro/basic":{"id":"python/python-intro/basic","title":"Basic","description":"Python is an experiment in how much freedom programmers need. Too much freedom and nobody can read another\'s code; too little and expressiveness is endangered. - Guido van Rossum, Creator of the Python programming language","sidebar":"tutorialSidebar"},"python/python-intro/classes":{"id":"python/python-intro/classes","title":"Classes","description":"Creating a class","sidebar":"tutorialSidebar"},"python/python-intro/data-structure/dict-evolution":{"id":"python/python-intro/data-structure/dict-evolution","title":"Dict Evolution","description":"Python2.7 - Scambled (dict_size = 280)","sidebar":"tutorialSidebar"},"python/python-intro/data-structure/dictionary":{"id":"python/python-intro/data-structure/dictionary","title":"Dictionary","description":"Each piece of information in a dictionary is stored as a key-value pair. When we provide a key, Python returns the value associated with that key.","sidebar":"tutorialSidebar"},"python/python-intro/data-structure/dictionary-architecture":{"id":"python/python-intro/data-structure/dictionary-architecture","title":"Dictionary Architecture","description":"- Python dictionaries are implemented as hash tables.","sidebar":"tutorialSidebar"},"python/python-intro/data-structure/list":{"id":"python/python-intro/data-structure/list","title":"List","description":"Properties","sidebar":"tutorialSidebar"},"python/python-intro/data-structure/readme":{"id":"python/python-intro/data-structure/readme","title":"Data Structure","description":"Built-in data structures","sidebar":"tutorialSidebar"},"python/python-intro/data-structure/set":{"id":"python/python-intro/data-structure/set","title":"Set","description":"- Set doesn\'t support indexing/slicing","sidebar":"tutorialSidebar"},"python/python-intro/data-structure/tuples":{"id":"python/python-intro/data-structure/tuples","title":"Tuples","description":"Properties","sidebar":"tutorialSidebar"},"python/python-intro/datetime":{"id":"python/python-intro/datetime","title":"DateTime","description":"Concepts","sidebar":"tutorialSidebar"},"python/python-intro/exceptions":{"id":"python/python-intro/exceptions","title":"Exceptions","description":"Should I Use Exceptions of Conditional Handling?","sidebar":"tutorialSidebar"},"python/python-intro/file-io":{"id":"python/python-intro/file-io","title":"File IO","description":"https://towardsdatascience.com/knowing-these-you-can-cover-99-of-file-operations-in-python-84725d82c2df","sidebar":"tutorialSidebar"},"python/python-intro/functions":{"id":"python/python-intro/functions","title":"Functions","description":"Functions are named blocks of code, designed to do one specific job.","sidebar":"tutorialSidebar"},"python/python-intro/generators":{"id":"python/python-intro/generators","title":"Generators","description":"- Generator functions allow you to declare a function that behaves like an iterator.","sidebar":"tutorialSidebar"},"python/python-intro/input-output-template":{"id":"python/python-intro/input-output-template","title":"Input Output Template","description":"I changed the Python print statement to understand how it works internally - YouTube","sidebar":"tutorialSidebar"},"python/python-intro/iterators":{"id":"python/python-intro/iterators","title":"Iterators","description":"An iterator is an object that can be iterated (looped) upon. It is used to abstract a container of data to make it behave like an iterable object. You probably already use a few iterable objects every day: strings, lists, and dictionaries to name a few.","sidebar":"tutorialSidebar"},"python/python-intro/keywords":{"id":"python/python-intro/keywords","title":"Keywords","description":"Keywords","sidebar":"tutorialSidebar"},"python/python-intro/loops":{"id":"python/python-intro/loops","title":"Loops","description":"http://www.geeksforgeeks.org/any-all-in-python","sidebar":"tutorialSidebar"},"python/python-intro/map-reduce-filter":{"id":"python/python-intro/map-reduce-filter","title":"Map, reduce, filter","description":"Map","sidebar":"tutorialSidebar"},"python/python-intro/mathematics":{"id":"python/python-intro/mathematics","title":"Mathematics","description":"Finding nCr for given numbers","sidebar":"tutorialSidebar"},"python/python-intro/modules":{"id":"python/python-intro/modules","title":"Modules","description":"A module is a file containing Python definitions and statements. The file name is the module name with the suffix.pyappended. Within a module, the module\'s name (as a string) is available as the value of the global variable name.","sidebar":"tutorialSidebar"},"python/python-intro/oops":{"id":"python/python-intro/oops","title":"OOPS","description":"In Python, everything is an object, and can be handled as such. This is what is meant when we say, for example, that functions are first-class objects. Functions, classes, strings, and even types are objects in Python: like any object, they have a type, they can be passed as function arguments, and they may have methods and properties. In this understanding, Python is an object-oriented language.","sidebar":"tutorialSidebar"},"python/python-intro/operators":{"id":"python/python-intro/operators","title":"Operators","description":"Types of Operator","sidebar":"tutorialSidebar"},"python/python-intro/questions":{"id":"python/python-intro/questions","title":"Questions","description":"What is the difference between thestrandreprmethods of a Python object","sidebar":"tutorialSidebar"},"python/python-intro/readme":{"id":"python/python-intro/readme","title":"Python","description":"- Basic","sidebar":"tutorialSidebar"},"python/python-intro/regular-expressions":{"id":"python/python-intro/regular-expressions","title":"Regular Expressions","description":"Pythons Metacharacters","sidebar":"tutorialSidebar"},"python/python-intro/requirements-file":{"id":"python/python-intro/requirements-file","title":"Requirements file","description":"pip supports installing from PyPI, version control, local projects, and directly from distribution files.","sidebar":"tutorialSidebar"},"python/python-intro/resources":{"id":"python/python-intro/resources","title":"Resources","description":"Getting started","sidebar":"tutorialSidebar"},"python/python-intro/sorting":{"id":"python/python-intro/sorting","title":"Sorting","description":"Sort items in a list in alphabetical order, or reverse alphabetical order.","sidebar":"tutorialSidebar"},"python/python-intro/strings":{"id":"python/python-intro/strings","title":"Strings","description":"fstrings","sidebar":"tutorialSidebar"},"python/python-intro/time-complexities":{"id":"python/python-intro/time-complexities","title":"Time complexities","description":"list","sidebar":"tutorialSidebar"},"python/python-intro/virtualenv-and-pip":{"id":"python/python-intro/virtualenv-and-pip","title":"virtualenv & pip","description":"VirtualEnv","sidebar":"tutorialSidebar"},"python/readme":{"id":"python/readme","title":"Python","description":"- Python","sidebar":"tutorialSidebar"},"readme":{"id":"readme","title":"Deep Notes","description":"This is my personal wiki where I share everything I know about this world in form of an online wiki.","sidebar":"tutorialSidebar"},"technologies/apache/airflow/airflow-architecture":{"id":"technologies/apache/airflow/airflow-architecture","title":"Airflow Architecture","description":"At its core, Airflow is simply a queuing system built on top of a metadata database. The database stores the state of queued tasks and a scheduler uses these states to prioritize how other tasks are added to the queue. This functionality is orchestrated by four primary components","sidebar":"tutorialSidebar"},"technologies/apache/airflow/astronomer":{"id":"technologies/apache/airflow/astronomer","title":"Astronomer","description":"astro deploy | Astronomer Documentation","sidebar":"tutorialSidebar"},"technologies/apache/airflow/commands-configs":{"id":"technologies/apache/airflow/commands-configs","title":"Commands / Configs","description":"Config","sidebar":"tutorialSidebar"},"technologies/apache/airflow/concepts":{"id":"technologies/apache/airflow/concepts","title":"Concepts","description":"DAGs","sidebar":"tutorialSidebar"},"technologies/apache/airflow/dags-example":{"id":"technologies/apache/airflow/dags-example","title":"Dags Example","description":"https://airflow.apache.org/docs/apache-airflow/1.10.12/api/airflow/contrib/operators/kubernetespod_operator/index.html","sidebar":"tutorialSidebar"},"technologies/apache/airflow/intro":{"id":"technologies/apache/airflow/intro","title":"Airflow","description":"Airflow is a platform to programmatically author, schedule and monitor workflows.","sidebar":"tutorialSidebar"},"technologies/apache/airflow/others":{"id":"technologies/apache/airflow/others","title":"Others","description":"Cadence","sidebar":"tutorialSidebar"},"technologies/apache/airflow/parallelism":{"id":"technologies/apache/airflow/parallelism","title":"Parallelism","description":"Here\'s an expanded list of configuration options that are available since Airflow v1.10.2. Some can be set on a per-DAG or per-operator basis, but may also fall back to the setup-wide defaults when they are not specified.","sidebar":"tutorialSidebar"},"technologies/apache/airflow/readme":{"id":"technologies/apache/airflow/readme","title":"Airflow","description":"- Airflow","sidebar":"tutorialSidebar"},"technologies/apache/apache-flink":{"id":"technologies/apache/apache-flink","title":"Apache Flink","description":"Apache Flink is a stream processing framework that can also handle batch tasks. It considers batches to simply be data streams with finite boundaries, and thus treats batch processing as a subset of stream processing. This stream-first approach to all processing has a number of interesting side effects.","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/about":{"id":"technologies/apache/apache-hadoop/about","title":"Apache Hadoop","description":"- MapReduce API (Processing large parallel data)","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/big-data-hadoop-stack":{"id":"technologies/apache/apache-hadoop/big-data-hadoop-stack","title":"Big Data Hadoop Stack","description":"Hadoop","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/hadoop-mapreduce-1.0":{"id":"technologies/apache/apache-hadoop/hadoop-mapreduce-1.0","title":"Hadoop MapReduce 1.0","description":"What is Map Reduce","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/hadoop-mapreduce-2.0":{"id":"technologies/apache/apache-hadoop/hadoop-mapreduce-2.0","title":"Hadoop MapReduce 2.0","description":"Introduction","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/hdfs":{"id":"technologies/apache/apache-hadoop/hdfs","title":"HDFS","description":"The Hadoop Distributed File System (HDFS) is designed to store very large data sets reliably, and to stream those data sets at high bandwidth to user applications. In a large cluster, thousands of servers both host directly attached storage and execute user application tasks. By distributing storage and computation across many servers, the resource can grow with demand while remaining economical at every size.","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/intro":{"id":"technologies/apache/apache-hadoop/intro","title":"Intro","description":"Apache Hadoop is a processing framework that exclusively provides batch processing. Hadoop was the first big data framework to gain significant traction in the open-source community. Based on several papers and presentations by Google about how they were dealing with tremendous amounts of data at the time, Hadoop reimplemented the algorithms and component stack to make large scale batch processing more accessible.","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/mapreduce-examples":{"id":"technologies/apache/apache-hadoop/mapreduce-examples","title":"MapReduce Examples","description":"image","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/others":{"id":"technologies/apache/apache-hadoop/others","title":"Others","description":"Traditionally, Hadoop saves its data internally in flat sequence files, which is a binary storage format for key value pairs. It has the benefit of being more compact than text and fits well the map-reduce output format. Sequence files can be compressed on value, or block level, to improve its IO profile further. Unfortunately, sequence files are not an optimal solution for Hive since it saves a complete row as a single binary value. Consequently, Hive has to read a full row and decompress it even if only one column is being requested.","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/readme":{"id":"technologies/apache/apache-hadoop/readme","title":"Apache Hadoop","description":"- Apache Hadoop","sidebar":"tutorialSidebar"},"technologies/apache/apache-hbase":{"id":"technologies/apache/apache-hbase","title":"Apache HBase","description":"HBaseis an open-source, non-relational, distributed database modeled after Google\'sBigtable and written in Java). It is developed as part of Apache Software Foundation\'s Apache Hadoop project and runs on top of HDFS (Hadoop Distributed File System), providing Bigtable-like capabilities for Hadoop. That is, it provides a fault-tolerant way of storing large quantities of sparse data (small amounts of information caught within a large collection of empty or unimportant data, such as finding the 50 largest items in a group of 2 billion records, or finding the non-zero items representing less than 0.1% of a huge collection).","sidebar":"tutorialSidebar"},"technologies/apache/apache-hive":{"id":"technologies/apache/apache-hive","title":"Apache Hive","description":"- Hive is a distributed data management for Hadoop","sidebar":"tutorialSidebar"},"technologies/apache/apache-hudi":{"id":"technologies/apache/apache-hudi","title":"Hudi","description":"Hudi - Hadoop Upserts Deletes and Incremental","sidebar":"tutorialSidebar"},"technologies/apache/apache-projects":{"id":"technologies/apache/apache-projects","title":"Apache Projects","description":"- HTTP Server","sidebar":"tutorialSidebar"},"technologies/apache/apache-pulsar":{"id":"technologies/apache/apache-pulsar","title":"Apache Pulsar","description":"Apache Pulsar is an open-source distributed pub-sub messaging system originally created at Yahoo and now part of the Apache Software Foundation","sidebar":"tutorialSidebar"},"technologies/apache/apache-samza":{"id":"technologies/apache/apache-samza","title":"Apache Samza","description":"Apache Samza","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/00-intro":{"id":"technologies/apache/apache-spark/00-intro","title":"Intro","description":"Spark is a general purpose distributed data processing engine. Or in other words: load big data, do computations on it in a distributed way, and then store it.","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/01-terms":{"id":"technologies/apache/apache-spark/01-terms","title":"Terms","description":"RDDs, DataFrames, DataSets","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/02-spark-modules":{"id":"technologies/apache/apache-spark/02-spark-modules","title":"Spark Modules","description":"Apache Spark (Core)","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/03-processing-model":{"id":"technologies/apache/apache-spark/03-processing-model","title":"Processing Model","description":"Apache Spark is a next generation batch processing framework with stream processing capabilities. Built using many of the same principles of Hadoop\'s MapReduce engine, Spark focuses primarily on speeding up batch processing workloads by offering full in-memory computation and processing optimization.","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/04-key-points":{"id":"technologies/apache/apache-spark/04-key-points","title":"Key points","description":"Spark Dataframes","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/05-spark-built-in-libraries":{"id":"technologies/apache/apache-spark/05-spark-built-in-libraries","title":"Spark Built-in Libraries","description":"Intro","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/06-sliding-window-analytics":{"id":"technologies/apache/apache-spark/06-sliding-window-analytics","title":"Sliding Window Analytics","description":"Stream processing framework that is","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/07-joins":{"id":"technologies/apache/apache-spark/07-joins","title":"Joins","description":"What Factors affect Join Operations?","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/08-examples":{"id":"technologies/apache/apache-spark/08-examples","title":"Examples","description":"Glue Transformation from Aurora DB to Parquet in s3","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/09-dataframe":{"id":"technologies/apache/apache-spark/09-dataframe","title":"DataFrame","description":"- PySpark - Create an empty DataFrame","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/10-sql-functions-datasources":{"id":"technologies/apache/apache-spark/10-sql-functions-datasources","title":"SQL Functions / Datasources","description":"PySpark SQL Functions","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/11-built-in-functions":{"id":"technologies/apache/apache-spark/11-built-in-functions","title":"Built-In Functions","description":"- PySpark - when()","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/99-others":{"id":"technologies/apache/apache-spark/99-others","title":"Others","description":"Data Types","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/readme":{"id":"technologies/apache/apache-spark/readme","title":"Apache Spark","description":"- Intro","sidebar":"tutorialSidebar"},"technologies/apache/apache-storm":{"id":"technologies/apache/apache-storm","title":"Apache Storm","description":"Apache Storm","sidebar":"tutorialSidebar"},"technologies/apache/apache-zookeeper":{"id":"technologies/apache/apache-zookeeper","title":"Apache Zookeeper","description":"Apache Zookeeper is a distributed, open-source configuration, synchronization service along with naming registry for distributed applications.","sidebar":"tutorialSidebar"},"technologies/apache/celery/celery-backend":{"id":"technologies/apache/celery/celery-backend","title":"Celery Backend","description":"Redis Backend","sidebar":"tutorialSidebar"},"technologies/apache/celery/commands-tools":{"id":"technologies/apache/celery/commands-tools","title":"Commands / Tools","description":"Major commands","sidebar":"tutorialSidebar"},"technologies/apache/celery/readme":{"id":"technologies/apache/celery/readme","title":"Celery","description":"Celery is an asynchronous task queue/job queue based on distributed message passing. It is focused on real-time operation, but supports scheduling as well.","sidebar":"tutorialSidebar"},"technologies/apache/celery/workers":{"id":"technologies/apache/celery/workers","title":"Workers","description":"The Celery worker","sidebar":"tutorialSidebar"},"technologies/apache/cncf":{"id":"technologies/apache/cncf","title":"CNCF","description":"CNCF Landscape","sidebar":"tutorialSidebar"},"technologies/apache/data-pipeline-architecture":{"id":"technologies/apache/data-pipeline-architecture","title":"Data Pipeline Architecture","description":"image","sidebar":"tutorialSidebar"},"technologies/apache/others":{"id":"technologies/apache/others","title":"Others","description":"Apache Tez","sidebar":"tutorialSidebar"},"technologies/apache/readme":{"id":"technologies/apache/readme","title":"Apache","description":"- Apache Projects","sidebar":"tutorialSidebar"},"technologies/brokers/emqtt/commands":{"id":"technologies/brokers/emqtt/commands","title":"Commands","description":"git clone -b master https://github.com/emqx/emqx-docker.git","sidebar":"tutorialSidebar"},"technologies/brokers/emqtt/conf":{"id":"technologies/brokers/emqtt/conf","title":"Conf","description":"1. Cluster name","sidebar":"tutorialSidebar"},"technologies/brokers/emqtt/deployment-and-installation":{"id":"technologies/brokers/emqtt/deployment-and-installation","title":"Deployment and Installation","description":"image","sidebar":"tutorialSidebar"},"technologies/brokers/emqtt/plugins":{"id":"technologies/brokers/emqtt/plugins","title":"Plugins","description":"TheEMQ Xbroker could be extended by Plugins. A plugin is an Erlang application that adds extra feature to theEMQ Xbroker:","sidebar":"tutorialSidebar"},"technologies/brokers/emqtt/readme":{"id":"technologies/brokers/emqtt/readme","title":"EMQTT","description":"EMQ Xbroker is a fully open source, distributed, highly scalable, highly extensible, highly available distributed MQTT messaging broker for IoT, M2M and Mobile applications that can handle tens of millions of concurrent clients.","sidebar":"tutorialSidebar"},"technologies/brokers/others":{"id":"technologies/brokers/others","title":"Others","description":"NSQ - A realtime distributed messaging platform","sidebar":"tutorialSidebar"},"technologies/brokers/rabbitmq":{"id":"technologies/brokers/rabbitmq","title":"RabbitMQ","description":"The Polyglot Broker (Distributed Message Broker)","sidebar":"tutorialSidebar"},"technologies/brokers/readme":{"id":"technologies/brokers/readme","title":"Brokers","description":"- RabbitMQ","sidebar":"tutorialSidebar"},"technologies/brokers/smap":{"id":"technologies/brokers/smap","title":"sMAP","description":"sMAP: the Simple Measurement and Actuation Profile","sidebar":"tutorialSidebar"},"technologies/brokers/vernemq/commands":{"id":"technologies/brokers/vernemq/commands","title":"Commands","description":"","sidebar":"tutorialSidebar"},"technologies/brokers/vernemq/readme":{"id":"technologies/brokers/vernemq/readme","title":"VerneMQ","description":"VerneMQ is first and foremost a MQTT publish/subscribe message broker which implements the OASIS industry standard MQTT protocol. But VerneMQ is also built to take messaging and IoT applications to the next level by providing a unique set of features related to scalability, reliability and high-performance as well as operational simplicity.","sidebar":"tutorialSidebar"},"technologies/brokers/volttron":{"id":"technologies/brokers/volttron","title":"Volttron","description":"VOLTTRON is an open source platform for distributed sensing and control. The platform provides services for collecting and storing data from buildings and devices and provides an environment for developing applications which interact with that data.","sidebar":"tutorialSidebar"},"technologies/databricks/01-databricks":{"id":"technologies/databricks/01-databricks","title":"Databricks","description":"https://www.databricks.com/wp-content/uploads/2021/11/The-Data-Lakehouse-Platform-For-Dummies-1.pdf","sidebar":"tutorialSidebar"},"technologies/databricks/02-databricks-getting-started":{"id":"technologies/databricks/02-databricks-getting-started","title":"Databricks in 5 minutes","description":"Databricks Input Widget Parameters","sidebar":"tutorialSidebar"},"technologies/databricks/03-optimizations":{"id":"technologies/databricks/03-optimizations","title":"Optimizations","description":"Delta Lake Files - S3 Effect","sidebar":"tutorialSidebar"},"technologies/databricks/04-workflow":{"id":"technologies/databricks/04-workflow","title":"Workflow","description":"Create, run, and manage Databricks Jobs | Databricks on AWS","sidebar":"tutorialSidebar"},"technologies/databricks/10-medallion-architecture":{"id":"technologies/databricks/10-medallion-architecture","title":"Medallion Architecture","description":"What is a medallion architecture?","sidebar":"tutorialSidebar"},"technologies/databricks/20-delta-live-tables":{"id":"technologies/databricks/20-delta-live-tables","title":"Delta Live Tables","description":"Delta Live Tables is a declarative framework for building reliable, maintainable, and testable data processing pipelines. You define the transformations to perform on your data and Delta Live Tables manages task orchestration, cluster management, monitoring, data quality, and error handling.","sidebar":"tutorialSidebar"},"technologies/databricks/30-unity-catalog":{"id":"technologies/databricks/30-unity-catalog","title":"Unity Catalog","description":"Unity Catalog is a unified governance solution for all data and AI assets including files, tables, machine learning models and dashboards in your lakehouse on any cloud.","sidebar":"tutorialSidebar"},"technologies/databricks/40-databricks-commands":{"id":"technologies/databricks/40-databricks-commands","title":"Databricks-commands","description":"Databricks CLI","sidebar":"tutorialSidebar"},"technologies/databricks/99-others":{"id":"technologies/databricks/99-others","title":"Others","description":"Download file from DBFS in Databricks","sidebar":"tutorialSidebar"},"technologies/databricks/readme":{"id":"technologies/databricks/readme","title":"Databricks","description":"- Databricks Intro","sidebar":"tutorialSidebar"},"technologies/elasticsearch/analysis-and-analyzers":{"id":"technologies/elasticsearch/analysis-and-analyzers","title":"Analysis and Analyzers","description":"Analysisis aprocess that consists of the following:","sidebar":"tutorialSidebar"},"technologies/elasticsearch/architecture":{"id":"technologies/elasticsearch/architecture","title":"Architecture","description":"Cluster and Node","sidebar":"tutorialSidebar"},"technologies/elasticsearch/commands":{"id":"technologies/elasticsearch/commands","title":"Commands","description":"Monitoring","sidebar":"tutorialSidebar"},"technologies/elasticsearch/elastalert":{"id":"technologies/elasticsearch/elastalert","title":"ElastAlert","description":"ElastAlert is a simple framework for alerting on anomalies, spikes, or other patterns of interest from data in Elasticsearch.","sidebar":"tutorialSidebar"},"technologies/elasticsearch/elasticsearch-the-definitive-guide":{"id":"technologies/elasticsearch/elasticsearch-the-definitive-guide","title":"Elasticsearch: The Definitive Guide","description":"Elasticsearch is a distributed, scalable, real-time search and analytics engine. It enables you to search, analyze, and explore your data. It exists because raw data sitting on a hard drive is just not useful.","sidebar":"tutorialSidebar"},"technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch":{"id":"technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch","title":"ELK/EFK Stack /Elastic Stack / ElasticSearch","description":"ELK stands for Elasticsearch - Logstash - Kibana","sidebar":"tutorialSidebar"},"technologies/elasticsearch/full-text-searches":{"id":"technologies/elasticsearch/full-text-searches","title":"Full Text Searches","description":"- Ignoring \\"stop words\\" such as \\"a\\", \'the\', \'and\'","sidebar":"tutorialSidebar"},"technologies/elasticsearch/getting-started":{"id":"technologies/elasticsearch/getting-started","title":"Getting Started","description":"Points","sidebar":"tutorialSidebar"},"technologies/elasticsearch/information-retrieval":{"id":"technologies/elasticsearch/information-retrieval","title":"Information Retrieval","description":"Link Analysis and Web Search","sidebar":"tutorialSidebar"},"technologies/elasticsearch/internal-working":{"id":"technologies/elasticsearch/internal-working","title":"Internal Working","description":"Here is the sequence of steps necessary to successfully create, index, or delete a document on both the primary and any replica shards:","sidebar":"tutorialSidebar"},"technologies/elasticsearch/others":{"id":"technologies/elasticsearch/others","title":"Others","description":"Heartbeat","sidebar":"tutorialSidebar"},"technologies/elasticsearch/readme":{"id":"technologies/elasticsearch/readme","title":"Elasticsearch","description":"- ELK/EFK Stack / Elastic Stack / Elasticsearch","sidebar":"tutorialSidebar"},"technologies/git/branching-strategies":{"id":"technologies/git/branching-strategies","title":"Branching Strategies","description":"Note: Up until the first public release of a product, it absolutely makes sense to commit all changes directly to the main branch - even if you are a Git flow advocate - for the sake of the speed and simplicity of the development workflow. Since there\'s no production yet, there\'s no possibility of a production bug that the team needs to fix ASAP. Doing all the branching magic that classic Git flow implies is therefore overkill at this stage","sidebar":"tutorialSidebar"},"technologies/git/commands":{"id":"technologies/git/commands","title":"Commands","description":"Shortcuts","sidebar":"tutorialSidebar"},"technologies/git/github":{"id":"technologies/git/github","title":"Github","description":"Organizations","sidebar":"tutorialSidebar"},"technologies/git/others":{"id":"technologies/git/others","title":"Others","description":".gitkeep","sidebar":"tutorialSidebar"},"technologies/git/readme":{"id":"technologies/git/readme","title":"Git","description":"- Theory","sidebar":"tutorialSidebar"},"technologies/git/theory":{"id":"technologies/git/theory","title":"Theory","description":"Learnings","sidebar":"tutorialSidebar"},"technologies/kafka/confluent-kafka":{"id":"technologies/kafka/confluent-kafka","title":"confluent-kafka","description":"Confluent kafka-python","sidebar":"tutorialSidebar"},"technologies/kafka/installing-kafka":{"id":"technologies/kafka/installing-kafka","title":"Installing Kafka","description":"- A Zookeeper cluster is called an ensemble, it is recommended that ensembles contain an odd number of servers","sidebar":"tutorialSidebar"},"technologies/kafka/intro":{"id":"technologies/kafka/intro","title":"Intro","description":"Intro","sidebar":"tutorialSidebar"},"technologies/kafka/intro-to-kafka":{"id":"technologies/kafka/intro-to-kafka","title":"Intro to Kafka","description":"- Kafka Core is the distributed, durable equivalent of Unix pipes. Use it to connect and compose your large-scale data applications","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-architecture":{"id":"technologies/kafka/kafka-architecture","title":"Kafka Architecture","description":"Why is Kafka so Fast?","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-commands":{"id":"technologies/kafka/kafka-commands","title":"Kafka Commands","description":"Configuration","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-connect":{"id":"technologies/kafka/kafka-connect","title":"Kafka Connect","description":"- Connectors and tasks","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-consumers":{"id":"technologies/kafka/kafka-consumers","title":"Kafka Consumers","description":"The consumer is the receiver of the message in Kafka","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-listeners":{"id":"technologies/kafka/kafka-listeners","title":"Kafka Listeners","description":"tl;dr : You need to set advertised.listeners (or KAFKAADVERTISEDLISTENERSif you\'re using Docker images) to the external address (host/IP) so that clients can correctly connect to it. Otherwise they\'ll try to connect to the internal host address and if that\'s not reachable then problems ensue","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-producers":{"id":"technologies/kafka/kafka-producers","title":"Kafka Producers","description":"The producer is the creator of the message in Kafka","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-python":{"id":"technologies/kafka/kafka-python","title":"kafka-python","description":"Python client for the Apache Kafka distributed stream processing system. (consumer iterators)","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-rest-proxy":{"id":"technologies/kafka/kafka-rest-proxy","title":"kafka-rest proxy","description":"Kafka-connect","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-schema-registry":{"id":"technologies/kafka/kafka-schema-registry","title":"Kafka schema-registry","description":"https://www.confluent.io/blog/schemas-contracts-compatibility","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-streams":{"id":"technologies/kafka/kafka-streams","title":"Kafka Streams","description":"Topics live in Kafka\'s storage layer - they are part of the Kafka \\"filesystem\\" powered by the brokers. In contrast, streams and tables are concepts of Kafka\'s processing layer, used in tools like ksqlDB and Kafka Streams. These tools process your events stored in \\"raw\\" topics by turning them into streams and tables - a process that is conceptually very similar to how a relational database turns the bytes in files on disk into an RDBMS table for you to work with.","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-topic-replication":{"id":"technologies/kafka/kafka-topic-replication","title":"Kafka Topic/Replication","description":"Kafka Topics","sidebar":"tutorialSidebar"},"technologies/kafka/kafkacat":{"id":"technologies/kafka/kafkacat","title":"kafkacat","description":"https://github.com/edenhill/kafkacat","sidebar":"tutorialSidebar"},"technologies/kafka/migration-mirroring-replication":{"id":"technologies/kafka/migration-mirroring-replication","title":"Migration / Mirroring / Replication","description":"Cross-Cluster Data Mirroring","sidebar":"tutorialSidebar"},"technologies/kafka/monitoring":{"id":"technologies/kafka/monitoring","title":"Monitoring","description":"Monitoring / Management Tools","sidebar":"tutorialSidebar"},"technologies/kafka/others":{"id":"technologies/kafka/others","title":"Others","description":"Message Processing Guarantees","sidebar":"tutorialSidebar"},"technologies/kafka/readme":{"id":"technologies/kafka/readme","title":"Kafka","description":"- Intro","sidebar":"tutorialSidebar"},"technologies/kafka/security":{"id":"technologies/kafka/security","title":"Security","description":"With a standard Kafka setup, any user or application can write any messages to any topic, as well as read data from any topics.","sidebar":"tutorialSidebar"},"technologies/kafka/strimzi":{"id":"technologies/kafka/strimzi","title":"Strimzi","description":"Strimzi HTTP Bridge for Apache Kafka","sidebar":"tutorialSidebar"},"technologies/others/fasttag":{"id":"technologies/others/fasttag","title":"FastTag","description":"Fastag Service | Fastag Integration API","sidebar":"tutorialSidebar"},"technologies/others/other-technologies":{"id":"technologies/others/other-technologies","title":"Other Technologies","description":"Opensource Free Stuff","sidebar":"tutorialSidebar"},"technologies/others/others-distributed-systems":{"id":"technologies/others/others-distributed-systems","title":"Others - Distributed Systems","description":"Orbit","sidebar":"tutorialSidebar"},"technologies/others/others-iot":{"id":"technologies/others/others-iot","title":"Others - IoT","description":"MainFlux","sidebar":"tutorialSidebar"},"technologies/others/presto":{"id":"technologies/others/presto","title":"Presto","description":"Distributed SQL Query Engine for BigData","sidebar":"tutorialSidebar"},"technologies/others/readme":{"id":"technologies/others/readme","title":"Others","description":"- Presto","sidebar":"tutorialSidebar"},"technologies/readme":{"id":"technologies/readme","title":"Technologies","description":"- Git","sidebar":"tutorialSidebar"}}}')}}]); \ No newline at end of file +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[80053],{1109:e=>{e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"category","label":"About Me","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Achievements / Activities / Awards","href":"/about-me/achievements-activities-awards","docId":"about-me/achievements-activities-awards","unlisted":false},{"type":"link","label":"Experience","href":"/about-me/experience","docId":"about-me/experience","unlisted":false},{"type":"link","label":"FAQs","href":"/about-me/faqs","docId":"about-me/faqs","unlisted":false},{"type":"category","label":"Ideas","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Creating a Business / Startup","href":"/about-me/ideas/creating-a-business-startup","docId":"about-me/ideas/creating-a-business-startup","unlisted":false},{"type":"link","label":"Donations","href":"/about-me/ideas/donations","docId":"about-me/ideas/donations","unlisted":false},{"type":"link","label":"Education","href":"/about-me/ideas/education","docId":"about-me/ideas/education","unlisted":false},{"type":"link","label":"Improvements / Feedbacks","href":"/about-me/ideas/improvements-feedbacks","docId":"about-me/ideas/improvements-feedbacks","unlisted":false},{"type":"link","label":"Intro","href":"/about-me/ideas/intro","docId":"about-me/ideas/intro","unlisted":false},{"type":"link","label":"Non Profit","href":"/about-me/ideas/non-profit","docId":"about-me/ideas/non-profit","unlisted":false},{"type":"link","label":"Others","href":"/about-me/ideas/others","docId":"about-me/ideas/others","unlisted":false},{"type":"link","label":"Society","href":"/about-me/ideas/society","docId":"about-me/ideas/society","unlisted":false},{"type":"link","label":"Startup Ideas - Physical","href":"/about-me/ideas/startup-ideas-physical","docId":"about-me/ideas/startup-ideas-physical","unlisted":false},{"type":"link","label":"Startup Quotes","href":"/about-me/ideas/startup-quotes","docId":"about-me/ideas/startup-quotes","unlisted":false},{"type":"link","label":"Startups Ideas - SAAS","href":"/about-me/ideas/startups-ideas-saas","docId":"about-me/ideas/startups-ideas-saas","unlisted":false},{"type":"link","label":"Thoughts / Future / Ideas / Vision / Prediction","href":"/about-me/ideas/thoughts-future-ideas-vision-prediction","docId":"about-me/ideas/thoughts-future-ideas-vision-prediction","unlisted":false}],"href":"/about-me/ideas/"},{"type":"link","label":"Papers & Publications","href":"/about-me/paper-publications-references","docId":"about-me/paper-publications-references","unlisted":false},{"type":"link","label":"Personality","href":"/about-me/personality","docId":"about-me/personality","unlisted":false},{"type":"category","label":"Projects","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Agri Tech Digital Transformation Case Study","href":"/about-me/projects/44-agri-tech-digital-transformation-case-study","docId":"about-me/projects/44-agri-tech-digital-transformation-case-study","unlisted":false},{"type":"link","label":"Traditional AI Case study","href":"/about-me/projects/45-traditional-ai-case-studies","docId":"about-me/projects/45-traditional-ai-case-studies","unlisted":false},{"type":"link","label":"Podcast - Streamlining Cloud Migration Through Data Engineering","href":"/about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering","docId":"about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering","unlisted":false},{"type":"link","label":"GenAI Case Study - Careers360","href":"/about-me/projects/47-genai-case-study-careers360","docId":"about-me/projects/47-genai-case-study-careers360","unlisted":false},{"type":"link","label":"RAG / GenAI Presentation","href":"/about-me/projects/48-rag-genai-presentation","docId":"about-me/projects/48-rag-genai-presentation","unlisted":false},{"type":"link","label":"Data Practical Use Cases","href":"/about-me/projects/49-data-practical-use-cases","docId":"about-me/projects/49-data-practical-use-cases","unlisted":false},{"type":"link","label":"Use Cases: AIML in Logistics and Warehousing","href":"/about-me/projects/50-use-cases-aiml-logistics-warehousing","docId":"about-me/projects/50-use-cases-aiml-logistics-warehousing","unlisted":false},{"type":"link","label":"Case Study: Anomaly Detection in Metric Data using Isolation Forest","href":"/about-me/projects/51-case-study-anomaly-detection","docId":"about-me/projects/51-case-study-anomaly-detection","unlisted":false},{"type":"link","label":"Pull Request Risk Tagging Heuristics","href":"/about-me/projects/52-pull-request-risk-tagging-heuristics","docId":"about-me/projects/52-pull-request-risk-tagging-heuristics","unlisted":false},{"type":"link","label":"Mozark - Cloud Cost Optimization and Performance Enhancement","href":"/about-me/projects/53-mozark-cloud-cost-optimization","docId":"about-me/projects/53-mozark-cloud-cost-optimization","unlisted":false},{"type":"link","label":"Airflow and Kafka Migration","href":"/about-me/projects/54-airflow-kafka-migration","docId":"about-me/projects/54-airflow-kafka-migration","unlisted":false},{"type":"link","label":"Azure Social Media Analytics","href":"/about-me/projects/55-azure-social-media-analytics","docId":"about-me/projects/55-azure-social-media-analytics","unlisted":false},{"type":"link","label":"Freecharge - Cost Optimization and Database Administration","href":"/about-me/projects/56-freecharge-cost-optimization-dba","docId":"about-me/projects/56-freecharge-cost-optimization-dba","unlisted":false},{"type":"link","label":"Careers360 Cost Optimization","href":"/about-me/projects/57-careers360-cost-optimization","docId":"about-me/projects/57-careers360-cost-optimization","unlisted":false},{"type":"link","label":"AWS Gen AI Hackathon RAG","href":"/about-me/projects/58-aws-gen-ai-hackathon-rag","docId":"about-me/projects/58-aws-gen-ai-hackathon-rag","unlisted":false},{"type":"link","label":"Data Engineering Product Pitch IoT Industry","href":"/about-me/projects/59-data-engineering-product-pitch-iot-industry","docId":"about-me/projects/59-data-engineering-product-pitch-iot-industry","unlisted":false},{"type":"link","label":"Data Engineering Case Studies","href":"/about-me/projects/60-data-engineering-case-studies","docId":"about-me/projects/60-data-engineering-case-studies","unlisted":false},{"type":"link","label":"General Application Management Case Study","href":"/about-me/projects/61-general-application-management-case-study","docId":"about-me/projects/61-general-application-management-case-study","unlisted":false},{"type":"link","label":"Application Management Case Study - Telecom","href":"/about-me/projects/62-application-management-case-study-telecom","docId":"about-me/projects/62-application-management-case-study-telecom","unlisted":false},{"type":"link","label":"MLOps Master Document","href":"/about-me/projects/63-mlops-master-document","docId":"about-me/projects/63-mlops-master-document","unlisted":false},{"type":"link","label":"MLOps Case Studies","href":"/about-me/projects/64-mlops-case-studies","docId":"about-me/projects/64-mlops-case-studies","unlisted":false},{"type":"link","label":"Problems in IoT Industry","href":"/about-me/projects/65-problems-in-iot-industry","docId":"about-me/projects/65-problems-in-iot-industry","unlisted":false},{"type":"link","label":"IoT Case Studies","href":"/about-me/projects/66-iot-case-studies","docId":"about-me/projects/66-iot-case-studies","unlisted":false},{"type":"link","label":"Data Engineering - Battle Cards","href":"/about-me/projects/67-data-engineering-battle-cards","docId":"about-me/projects/67-data-engineering-battle-cards","unlisted":false},{"type":"link","label":"Interview - Datainsight / Alerting Engine","href":"/about-me/projects/70-interview-datainsight-alerting-engine","docId":"about-me/projects/70-interview-datainsight-alerting-engine","unlisted":false},{"type":"link","label":"Opstree Standard Proposal Format","href":"/about-me/projects/71-opstree-standard-proposal-format","docId":"about-me/projects/71-opstree-standard-proposal-format","unlisted":false},{"type":"link","label":"Bake.io Data Engineering","href":"/about-me/projects/75-bake-io-data-engineering","docId":"about-me/projects/75-bake-io-data-engineering","unlisted":false},{"type":"link","label":"Stashfin","href":"/about-me/projects/80-stashfin","docId":"about-me/projects/80-stashfin","unlisted":false},{"type":"link","label":"Stashfin Terms","href":"/about-me/projects/81-stashfin-terms","docId":"about-me/projects/81-stashfin-terms","unlisted":false},{"type":"link","label":"Stashfin Metrics","href":"/about-me/projects/82-stashfin-metrics","docId":"about-me/projects/82-stashfin-metrics","unlisted":false},{"type":"link","label":"Stashfin Twitter Bot","href":"/about-me/projects/85-stashfin-twitter-bot","docId":"about-me/projects/85-stashfin-twitter-bot","unlisted":false},{"type":"link","label":"Stashfin Customer Support","href":"/about-me/projects/86-stashfin-customer-support","docId":"about-me/projects/86-stashfin-customer-support","unlisted":false},{"type":"link","label":"Stashfin Team Management / Culture","href":"/about-me/projects/87-stashfin-team-management-culture","docId":"about-me/projects/87-stashfin-team-management-culture","unlisted":false},{"type":"link","label":"Stashfin Security / IAM / APIs","href":"/about-me/projects/88-stashfin-security-iam-apis","docId":"about-me/projects/88-stashfin-security-iam-apis","unlisted":false},{"type":"link","label":"Stashfin DevOps Overhaul","href":"/about-me/projects/89-stashfin-devops-overhaul","docId":"about-me/projects/89-stashfin-devops-overhaul","unlisted":false},{"type":"link","label":"Stashfin Tech Stack / Infra","href":"/about-me/projects/90-stashfin-tech-stack-infra","docId":"about-me/projects/90-stashfin-tech-stack-infra","unlisted":false},{"type":"link","label":"Stashfin AIML Use Cases & Implementation","href":"/about-me/projects/91-stashfin-aiml-use-cases","docId":"about-me/projects/91-stashfin-aiml-use-cases","unlisted":false},{"type":"link","label":"Others","href":"/about-me/projects/98-others","docId":"about-me/projects/98-others","unlisted":false},{"type":"link","label":"CISO Cybersecurity","href":"/about-me/projects/99-ciso-cybersecurity","docId":"about-me/projects/99-ciso-cybersecurity","unlisted":false}],"href":"/about-me/projects/"},{"type":"link","label":"Social Links","href":"/about-me/social-links","docId":"about-me/social-links","unlisted":false}],"href":"/about-me/"},{"type":"category","label":"AI","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Big Data","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Characteristics","href":"/ai/big-data/characteristics","docId":"ai/big-data/characteristics","unlisted":false},{"type":"link","label":"Data Masking","href":"/ai/big-data/data-masking","docId":"ai/big-data/data-masking","unlisted":false},{"type":"link","label":"Data Preprocessing","href":"/ai/big-data/data-preprocessing","docId":"ai/big-data/data-preprocessing","unlisted":false},{"type":"link","label":"# Data Quality","href":"/ai/big-data/data-quality","docId":"ai/big-data/data-quality","unlisted":false},{"type":"link","label":"Data","href":"/ai/big-data/data","docId":"ai/big-data/data","unlisted":false},{"type":"link","label":"Design of HBase","href":"/ai/big-data/design-of-hbase","docId":"ai/big-data/design-of-hbase","unlisted":false},{"type":"link","label":"Design of Key-Value Stores","href":"/ai/big-data/design-of-key-value-stores","docId":"ai/big-data/design-of-key-value-stores","unlisted":false},{"type":"link","label":"Design of Zookeeper","href":"/ai/big-data/design-of-zookeeper","docId":"ai/big-data/design-of-zookeeper","unlisted":false},{"type":"link","label":"Big Data","href":"/ai/big-data/intro","docId":"ai/big-data/intro","unlisted":false},{"type":"link","label":"Page Rank","href":"/ai/big-data/page-rank","docId":"ai/big-data/page-rank","unlisted":false},{"type":"link","label":"Parameter Servers","href":"/ai/big-data/parameter-servers","docId":"ai/big-data/parameter-servers","unlisted":false},{"type":"link","label":"Processing Engine","href":"/ai/big-data/processing-engine","docId":"ai/big-data/processing-engine","unlisted":false},{"type":"link","label":"Tools","href":"/ai/big-data/tools","docId":"ai/big-data/tools","unlisted":false},{"type":"link","label":"Types of Data","href":"/ai/big-data/types-of-data","docId":"ai/big-data/types-of-data","unlisted":false}],"href":"/ai/big-data/"},{"type":"category","label":"Computer Vision","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Convolutional Neural Network (CNN)","href":"/ai/computer-vision-cv/convolutional-neural-network-cnn","docId":"ai/computer-vision-cv/convolutional-neural-network-cnn","unlisted":false},{"type":"link","label":"CV - Libraries / Tools","href":"/ai/computer-vision-cv/cv-libraries-tools","docId":"ai/computer-vision-cv/cv-libraries-tools","unlisted":false},{"type":"link","label":"Examples","href":"/ai/computer-vision-cv/examples","docId":"ai/computer-vision-cv/examples","unlisted":false},{"type":"link","label":"Image / Data Labeling Tools","href":"/ai/computer-vision-cv/image-data-labeling-tools","docId":"ai/computer-vision-cv/image-data-labeling-tools","unlisted":false},{"type":"link","label":"Image Formats","href":"/ai/computer-vision-cv/image-formats","docId":"ai/computer-vision-cv/image-formats","unlisted":false},{"type":"link","label":"ImageMagick","href":"/ai/computer-vision-cv/imagemagick","docId":"ai/computer-vision-cv/imagemagick","unlisted":false},{"type":"link","label":"Computer Vision / CV Intro","href":"/ai/computer-vision-cv/intro","docId":"ai/computer-vision-cv/intro","unlisted":false},{"type":"link","label":"MNIST For ML Beginners | TensorFlow","href":"/ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow","docId":"ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow","unlisted":false},{"type":"link","label":"Model Building Stages","href":"/ai/computer-vision-cv/model-building-stages","docId":"ai/computer-vision-cv/model-building-stages","unlisted":false},{"type":"link","label":"Others","href":"/ai/computer-vision-cv/others","docId":"ai/computer-vision-cv/others","unlisted":false},{"type":"link","label":"Pre-Trained Models","href":"/ai/computer-vision-cv/pre-trained-models","docId":"ai/computer-vision-cv/pre-trained-models","unlisted":false}],"href":"/ai/computer-vision-cv/"},{"type":"category","label":"Data Science","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Data Analysis","href":"/ai/data-science/data-analysis","docId":"ai/data-science/data-analysis","unlisted":false},{"type":"link","label":"Data Governance","href":"/ai/data-science/data-governance","docId":"ai/data-science/data-governance","unlisted":false},{"type":"link","label":"Data Mining","href":"/ai/data-science/data-mining","docId":"ai/data-science/data-mining","unlisted":false},{"type":"link","label":"Datasets","href":"/ai/data-science/datasets","docId":"ai/data-science/datasets","unlisted":false},{"type":"link","label":"Intro","href":"/ai/data-science/intro","docId":"ai/data-science/intro","unlisted":false},{"type":"link","label":"Questions","href":"/ai/data-science/questions","docId":"ai/data-science/questions","unlisted":false},{"type":"link","label":"Recommender System","href":"/ai/data-science/recommender-system","docId":"ai/data-science/recommender-system","unlisted":false},{"type":"link","label":"Statistics","href":"/ai/data-science/statistics","docId":"ai/data-science/statistics","unlisted":false},{"type":"link","label":"Topics","href":"/ai/data-science/topics","docId":"ai/data-science/topics","unlisted":false}],"href":"/ai/data-science/"},{"type":"category","label":"Data Visualization","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"BI Tools","href":"/ai/data-visualization/bi-tools","docId":"ai/data-visualization/bi-tools","unlisted":false},{"type":"link","label":"Charts","href":"/ai/data-visualization/charts","docId":"ai/data-visualization/charts","unlisted":false},{"type":"link","label":"D3 (Data Driven Documents)","href":"/ai/data-visualization/d3-data-driven-documents","docId":"ai/data-visualization/d3-data-driven-documents","unlisted":false},{"type":"link","label":"Data Visualization","href":"/ai/data-visualization/intro","docId":"ai/data-visualization/intro","unlisted":false},{"type":"link","label":"Matplotlib","href":"/ai/data-visualization/matplotlib","docId":"ai/data-visualization/matplotlib","unlisted":false},{"type":"link","label":"Metabase","href":"/ai/data-visualization/metabase","docId":"ai/data-visualization/metabase","unlisted":false},{"type":"link","label":"Plotly","href":"/ai/data-visualization/plotly","docId":"ai/data-visualization/plotly","unlisted":false},{"type":"link","label":"PowerBI","href":"/ai/data-visualization/powerbi","docId":"ai/data-visualization/powerbi","unlisted":false},{"type":"category","label":"Tableau","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture and Components","href":"/ai/data-visualization/tableau/architecture-components","docId":"ai/data-visualization/tableau/architecture-components","unlisted":false},{"type":"link","label":"Augmented Analytics","href":"/ai/data-visualization/tableau/augmented-analytics","docId":"ai/data-visualization/tableau/augmented-analytics","unlisted":false},{"type":"link","label":"Concepts","href":"/ai/data-visualization/tableau/concepts","docId":"ai/data-visualization/tableau/concepts","unlisted":false},{"type":"link","label":"Dashboarding","href":"/ai/data-visualization/tableau/dashboarding","docId":"ai/data-visualization/tableau/dashboarding","unlisted":false},{"type":"link","label":"Data Model","href":"/ai/data-visualization/tableau/data-model","docId":"ai/data-visualization/tableau/data-model","unlisted":false},{"type":"link","label":"Data Sources","href":"/ai/data-visualization/tableau/data-sources","docId":"ai/data-visualization/tableau/data-sources","unlisted":false},{"type":"link","label":"Others","href":"/ai/data-visualization/tableau/others","docId":"ai/data-visualization/tableau/others","unlisted":false}],"href":"/ai/data-visualization/tableau/"}],"href":"/ai/data-visualization/"},{"type":"category","label":"Deep Learning","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/ai/deep-learning/commands","docId":"ai/deep-learning/commands","unlisted":false},{"type":"link","label":"Components","href":"/ai/deep-learning/components","docId":"ai/deep-learning/components","unlisted":false},{"type":"link","label":"DL Specialization","href":"/ai/deep-learning/dl-specialization","docId":"ai/deep-learning/dl-specialization","unlisted":false},{"type":"link","label":"Neural network and deep learning","href":"/ai/deep-learning/neural-network-and-deep-learning","docId":"ai/deep-learning/neural-network-and-deep-learning","unlisted":false},{"type":"link","label":"Others","href":"/ai/deep-learning/others","docId":"ai/deep-learning/others","unlisted":false},{"type":"link","label":"Resources","href":"/ai/deep-learning/resources","docId":"ai/deep-learning/resources","unlisted":false},{"type":"link","label":"Roadmap","href":"/ai/deep-learning/roadmap","docId":"ai/deep-learning/roadmap","unlisted":false}],"href":"/ai/deep-learning/"},{"type":"link","label":"Hackathons","href":"/ai/hackathons","docId":"ai/hackathons","unlisted":false},{"type":"category","label":"Libraries","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"AWS Sagemaker","href":"/ai/libraries/aws-sagemaker","docId":"ai/libraries/aws-sagemaker","unlisted":false},{"type":"link","label":"Deep Learning Frameworks","href":"/ai/libraries/deep-learning-frameworks","docId":"ai/libraries/deep-learning-frameworks","unlisted":false},{"type":"link","label":"Distributed Training","href":"/ai/libraries/distributed-training","docId":"ai/libraries/distributed-training","unlisted":false},{"type":"link","label":"JAX","href":"/ai/libraries/jax","docId":"ai/libraries/jax","unlisted":false},{"type":"link","label":"Keras","href":"/ai/libraries/keras","docId":"ai/libraries/keras","unlisted":false},{"type":"link","label":"Libraries","href":"/ai/libraries/ml-libraries","docId":"ai/libraries/ml-libraries","unlisted":false},{"type":"link","label":"ML Monitoring","href":"/ai/libraries/ml-monitoring","docId":"ai/libraries/ml-monitoring","unlisted":false},{"type":"link","label":"MLOps / Model Deployment","href":"/ai/libraries/mlops-model-deployment","docId":"ai/libraries/mlops-model-deployment","unlisted":false},{"type":"category","label":"TensorFlow","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Core Tensorflow","href":"/ai/libraries/tensorflow/core-tensorflow","docId":"ai/libraries/tensorflow/core-tensorflow","unlisted":false},{"type":"link","label":"Estimator API","href":"/ai/libraries/tensorflow/estimator-api","docId":"ai/libraries/tensorflow/estimator-api","unlisted":false},{"type":"link","label":"TensorFlow","href":"/ai/libraries/tensorflow/intro","docId":"ai/libraries/tensorflow/intro","unlisted":false}],"href":"/ai/libraries/tensorflow/"},{"type":"link","label":"Tools","href":"/ai/libraries/tools","docId":"ai/libraries/tools","unlisted":false}],"href":"/ai/libraries/"},{"type":"category","label":"ChatGPT / LLM","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Code Generators","href":"/ai/llm/code-generators","docId":"ai/llm/code-generators","unlisted":false},{"type":"link","label":"Design patterns","href":"/ai/llm/design-patterns","docId":"ai/llm/design-patterns","unlisted":false},{"type":"link","label":"Fintech Use Cases","href":"/ai/llm/fintech-use-cases","docId":"ai/llm/fintech-use-cases","unlisted":false},{"type":"link","label":"GenAI Projects","href":"/ai/llm/genai-projects","docId":"ai/llm/genai-projects","unlisted":false},{"type":"link","label":"Interview Questions","href":"/ai/llm/interview-questions","docId":"ai/llm/interview-questions","unlisted":false},{"type":"link","label":"Intro","href":"/ai/llm/intro","docId":"ai/llm/intro","unlisted":false},{"type":"link","label":"Libraries","href":"/ai/llm/libraries","docId":"ai/llm/libraries","unlisted":false},{"type":"link","label":"Model Limitations / Problems","href":"/ai/llm/limitations-problems","docId":"ai/llm/limitations-problems","unlisted":false},{"type":"link","label":"LLM Building","href":"/ai/llm/llm-building","docId":"ai/llm/llm-building","unlisted":false},{"type":"link","label":"LLM Tuning","href":"/ai/llm/llm-tuning","docId":"ai/llm/llm-tuning","unlisted":false},{"type":"link","label":"Models","href":"/ai/llm/models","docId":"ai/llm/models","unlisted":false},{"type":"link","label":"Natural Language to SQL","href":"/ai/llm/natural-language-to-sql","docId":"ai/llm/natural-language-to-sql","unlisted":false},{"type":"link","label":"Prompt Engineering","href":"/ai/llm/prompt-engineering","docId":"ai/llm/prompt-engineering","unlisted":false},{"type":"link","label":"Prompt Examples","href":"/ai/llm/prompt-examples","docId":"ai/llm/prompt-examples","unlisted":false},{"type":"link","label":"RAG Hackathon Questions","href":"/ai/llm/rag-hackathon-questions","docId":"ai/llm/rag-hackathon-questions","unlisted":false},{"type":"link","label":"RAG - retrieval-augmented generation","href":"/ai/llm/rag-retrieval-augmented-generation","docId":"ai/llm/rag-retrieval-augmented-generation","unlisted":false},{"type":"link","label":"Tools","href":"/ai/llm/tools","docId":"ai/llm/tools","unlisted":false}],"href":"/ai/llm/"},{"type":"category","label":"ML Algorithms","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Artificial Neural Networks","href":"/ai/ml-algorithms/artificial-neural-networks","docId":"ai/ml-algorithms/artificial-neural-networks","unlisted":false},{"type":"link","label":"Association Rules & Apriori Algorithm","href":"/ai/ml-algorithms/association-rules-and-apriori-algorithm","docId":"ai/ml-algorithms/association-rules-and-apriori-algorithm","unlisted":false},{"type":"link","label":"Bagging and Random Forest","href":"/ai/ml-algorithms/bagging-and-random-forest","docId":"ai/ml-algorithms/bagging-and-random-forest","unlisted":false},{"type":"link","label":"Bayes Classification","href":"/ai/ml-algorithms/bayes-classification","docId":"ai/ml-algorithms/bayes-classification","unlisted":false},{"type":"link","label":"Boosting and Adaboost","href":"/ai/ml-algorithms/boosting-and-adaboost","docId":"ai/ml-algorithms/boosting-and-adaboost","unlisted":false},{"type":"link","label":"Classification","href":"/ai/ml-algorithms/classification","docId":"ai/ml-algorithms/classification","unlisted":false},{"type":"link","label":"Clustering","href":"/ai/ml-algorithms/clustering","docId":"ai/ml-algorithms/clustering","unlisted":false},{"type":"link","label":"Decision Tree","href":"/ai/ml-algorithms/decision-tree","docId":"ai/ml-algorithms/decision-tree","unlisted":false},{"type":"link","label":"Dimensionality Reduction","href":"/ai/ml-algorithms/dimensionality-reduction","docId":"ai/ml-algorithms/dimensionality-reduction","unlisted":false},{"type":"link","label":"Embeddings & Estimators","href":"/ai/ml-algorithms/embeddings-and-estimators","docId":"ai/ml-algorithms/embeddings-and-estimators","unlisted":false},{"type":"link","label":"Ensemble Algorithms","href":"/ai/ml-algorithms/ensemble-algorithms","docId":"ai/ml-algorithms/ensemble-algorithms","unlisted":false},{"type":"link","label":"Feature Engineering","href":"/ai/ml-algorithms/feature-engineering","docId":"ai/ml-algorithms/feature-engineering","unlisted":false},{"type":"link","label":"Generative Adversarial Networks (GANs)","href":"/ai/ml-algorithms/generative-adversarial-networks-gans","docId":"ai/ml-algorithms/generative-adversarial-networks-gans","unlisted":false},{"type":"link","label":"Graph Neural Networks (GNN)","href":"/ai/ml-algorithms/graph-neural-networks-gnn","docId":"ai/ml-algorithms/graph-neural-networks-gnn","unlisted":false},{"type":"link","label":"ID3, C4.5 and CHAID","href":"/ai/ml-algorithms/id3-c45-and-chaid","docId":"ai/ml-algorithms/id3-c45-and-chaid","unlisted":false},{"type":"link","label":"K-Nearest Neighbor (KNN)","href":"/ai/ml-algorithms/k-nearest-neighbor-knn","docId":"ai/ml-algorithms/k-nearest-neighbor-knn","unlisted":false},{"type":"link","label":"Learning Vector Quantization (LVQ)","href":"/ai/ml-algorithms/learning-vector-quantization-lvq","docId":"ai/ml-algorithms/learning-vector-quantization-lvq","unlisted":false},{"type":"link","label":"Linear Discriminant Analysis (LDA)","href":"/ai/ml-algorithms/linear-discriminant-analysis-lda","docId":"ai/ml-algorithms/linear-discriminant-analysis-lda","unlisted":false},{"type":"link","label":"Linear regression","href":"/ai/ml-algorithms/linear-regression","docId":"ai/ml-algorithms/linear-regression","unlisted":false},{"type":"link","label":"Logistic regression","href":"/ai/ml-algorithms/logistic-regression","docId":"ai/ml-algorithms/logistic-regression","unlisted":false},{"type":"link","label":"Machine Learning Algorithm K-means using Map Reduce for Big Data Analytics","href":"/ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics","docId":"ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics","unlisted":false},{"type":"link","label":"Non linear regression","href":"/ai/ml-algorithms/non-linear-regression","docId":"ai/ml-algorithms/non-linear-regression","unlisted":false},{"type":"link","label":"Others","href":"/ai/ml-algorithms/others","docId":"ai/ml-algorithms/others","unlisted":false},{"type":"link","label":"Parallel K-means using Map Reduce on Big Data Cluster Analysis","href":"/ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis","docId":"ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis","unlisted":false},{"type":"link","label":"Predictive Analytics 1","href":"/ai/ml-algorithms/predictive-analytics-1","docId":"ai/ml-algorithms/predictive-analytics-1","unlisted":false},{"type":"link","label":"Predictive Analytics 2","href":"/ai/ml-algorithms/predictive-analytics-2","docId":"ai/ml-algorithms/predictive-analytics-2","unlisted":false},{"type":"link","label":"Regression","href":"/ai/ml-algorithms/regression","docId":"ai/ml-algorithms/regression","unlisted":false},{"type":"link","label":"Regularization","href":"/ai/ml-algorithms/regularization","docId":"ai/ml-algorithms/regularization","unlisted":false},{"type":"link","label":"Rule generation & Pattern Evaluation","href":"/ai/ml-algorithms/rule-generation-and-pattern-evaluation","docId":"ai/ml-algorithms/rule-generation-and-pattern-evaluation","unlisted":false},{"type":"link","label":"Support Vector Machine (SVM)","href":"/ai/ml-algorithms/support-vector-machine-svm","docId":"ai/ml-algorithms/support-vector-machine-svm","unlisted":false},{"type":"link","label":"Vector Embeddings","href":"/ai/ml-algorithms/vector-embeddings","docId":"ai/ml-algorithms/vector-embeddings","unlisted":false}],"href":"/ai/ml-algorithms/"},{"type":"category","label":"ML Fundamentals","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Andrew NG","href":"/ai/ml-fundamentals/andrew-ng","docId":"ai/ml-fundamentals/andrew-ng","unlisted":false},{"type":"link","label":"Intro","href":"/ai/ml-fundamentals/intro","docId":"ai/ml-fundamentals/intro","unlisted":false},{"type":"link","label":"Loss Function","href":"/ai/ml-fundamentals/loss-function","docId":"ai/ml-fundamentals/loss-function","unlisted":false},{"type":"link","label":"ML Classification","href":"/ai/ml-fundamentals/ml-classification","docId":"ai/ml-fundamentals/ml-classification","unlisted":false},{"type":"link","label":"ML Process","href":"/ai/ml-fundamentals/ml-process","docId":"ai/ml-fundamentals/ml-process","unlisted":false},{"type":"link","label":"Neural Networks 3B1B","href":"/ai/ml-fundamentals/neural-networks-3b1b","docId":"ai/ml-fundamentals/neural-networks-3b1b","unlisted":false},{"type":"link","label":"Neural Networks","href":"/ai/ml-fundamentals/neural-networks","docId":"ai/ml-fundamentals/neural-networks","unlisted":false},{"type":"link","label":"Practical AI Problems","href":"/ai/ml-fundamentals/practical-ai-problems","docId":"ai/ml-fundamentals/practical-ai-problems","unlisted":false},{"type":"link","label":"Preliminaries","href":"/ai/ml-fundamentals/preliminaries","docId":"ai/ml-fundamentals/preliminaries","unlisted":false},{"type":"link","label":"Questions","href":"/ai/ml-fundamentals/questions","docId":"ai/ml-fundamentals/questions","unlisted":false},{"type":"link","label":"Table of contents","href":"/ai/ml-fundamentals/table-of-contents","docId":"ai/ml-fundamentals/table-of-contents","unlisted":false}],"href":"/ai/ml-fundamentals/"},{"type":"category","label":"Model Evaluation","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"bias-variance trade-off","href":"/ai/model-evaluation/bias-variance-trade-off","docId":"ai/model-evaluation/bias-variance-trade-off","unlisted":false},{"type":"link","label":"Confusion Matrix","href":"/ai/model-evaluation/confusion-matrix","docId":"ai/model-evaluation/confusion-matrix","unlisted":false},{"type":"link","label":"Evaluation","href":"/ai/model-evaluation/evaluation","docId":"ai/model-evaluation/evaluation","unlisted":false},{"type":"link","label":"Generalization and Sampling","href":"/ai/model-evaluation/generalization-and-sampling","docId":"ai/model-evaluation/generalization-and-sampling","unlisted":false},{"type":"link","label":"Model Validation / Monitoring","href":"/ai/model-evaluation/model-validation-monitoring","docId":"ai/model-evaluation/model-validation-monitoring","unlisted":false},{"type":"link","label":"Optimization","href":"/ai/model-evaluation/optimization","docId":"ai/model-evaluation/optimization","unlisted":false},{"type":"link","label":"Others","href":"/ai/model-evaluation/others","docId":"ai/model-evaluation/others","unlisted":false}],"href":"/ai/model-evaluation/"},{"type":"category","label":"Move37","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"1. Markov Decision Process","href":"/ai/move-37/1-markov-decision-process","docId":"ai/move-37/1-markov-decision-process","unlisted":false},{"type":"link","label":"2. Dynamic Programming","href":"/ai/move-37/2-dynamic-programming","docId":"ai/move-37/2-dynamic-programming","unlisted":false},{"type":"link","label":"3. Monte Carlo Methods","href":"/ai/move-37/3-monte-carlo-methods","docId":"ai/move-37/3-monte-carlo-methods","unlisted":false},{"type":"link","label":"4. Model Free Learning","href":"/ai/move-37/4-model-free-learning","docId":"ai/move-37/4-model-free-learning","unlisted":false},{"type":"link","label":"5. RL in Continuous Space","href":"/ai/move-37/5-rl-in-continuous-space","docId":"ai/move-37/5-rl-in-continuous-space","unlisted":false},{"type":"link","label":"Algorithms","href":"/ai/move-37/algorithms","docId":"ai/move-37/algorithms","unlisted":false},{"type":"link","label":"Open AI Gym","href":"/ai/move-37/open-ai-gym","docId":"ai/move-37/open-ai-gym","unlisted":false},{"type":"link","label":"Others","href":"/ai/move-37/others","docId":"ai/move-37/others","unlisted":false},{"type":"link","label":"Q-Learning Algorithms","href":"/ai/move-37/q-learning-algorithms","docId":"ai/move-37/q-learning-algorithms","unlisted":false},{"type":"link","label":"Quizzes","href":"/ai/move-37/quizzes","docId":"ai/move-37/quizzes","unlisted":false},{"type":"link","label":"Reinforcement Learning","href":"/ai/move-37/reinforcement-learning","docId":"ai/move-37/reinforcement-learning","unlisted":false},{"type":"link","label":"Syllabus","href":"/ai/move-37/syllabus","docId":"ai/move-37/syllabus","unlisted":false}],"href":"/ai/move-37/"},{"type":"category","label":"NLP","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Chatbot / chatops","href":"/ai/nlp/chatbot-chatops","docId":"ai/nlp/chatbot-chatops","unlisted":false},{"type":"link","label":"Chatbot SAAS","href":"/ai/nlp/chatbot-saas","docId":"ai/nlp/chatbot-saas","unlisted":false},{"type":"link","label":"NLP","href":"/ai/nlp/intro","docId":"ai/nlp/intro","unlisted":false},{"type":"link","label":"NLP Concepts","href":"/ai/nlp/nlp-concepts","docId":"ai/nlp/nlp-concepts","unlisted":false},{"type":"link","label":"NLTK","href":"/ai/nlp/nltk","docId":"ai/nlp/nltk","unlisted":false},{"type":"link","label":"Word Embedding to Transformers","href":"/ai/nlp/word-embedding-to-transformers","docId":"ai/nlp/word-embedding-to-transformers","unlisted":false}],"href":"/ai/nlp/"},{"type":"category","label":"Numpy","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Cheatsheet","href":"/ai/numpy/cheatsheet","docId":"ai/numpy/cheatsheet","unlisted":false},{"type":"link","label":"Data Types","href":"/ai/numpy/data-types","docId":"ai/numpy/data-types","unlisted":false},{"type":"link","label":"Internals","href":"/ai/numpy/internals","docId":"ai/numpy/internals","unlisted":false},{"type":"link","label":"Intro","href":"/ai/numpy/intro","docId":"ai/numpy/intro","unlisted":false},{"type":"link","label":"Ndarray Object","href":"/ai/numpy/ndarray-object","docId":"ai/numpy/ndarray-object","unlisted":false},{"type":"link","label":"NumPy Reference","href":"/ai/numpy/numpy-reference","docId":"ai/numpy/numpy-reference","unlisted":false}],"href":"/ai/numpy/"},{"type":"link","label":"Others / Resources / Interview / Learning / Courses","href":"/ai/others-resources-interview-learning-courses","docId":"ai/others-resources-interview-learning-courses","unlisted":false},{"type":"category","label":"Pandas","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"CheatSheet","href":"/ai/pandas/cheatsheet","docId":"ai/pandas/cheatsheet","unlisted":false},{"type":"link","label":"Commands","href":"/ai/pandas/commands","docId":"ai/pandas/commands","unlisted":false},{"type":"link","label":"Data Structures","href":"/ai/pandas/data-structures","docId":"ai/pandas/data-structures","unlisted":false},{"type":"link","label":"Examples","href":"/ai/pandas/examples","docId":"ai/pandas/examples","unlisted":false},{"type":"link","label":"Others","href":"/ai/pandas/others","docId":"ai/pandas/others","unlisted":false},{"type":"link","label":"Pandas Intro","href":"/ai/pandas/pandas-intro","docId":"ai/pandas/pandas-intro","unlisted":false},{"type":"link","label":"user_guide","href":"/ai/pandas/user_guide","docId":"ai/pandas/user_guide","unlisted":false}],"href":"/ai/pandas/"},{"type":"category","label":"Scikit Learn / Scipy","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/ai/scikit-learn/commands","docId":"ai/scikit-learn/commands","unlisted":false},{"type":"link","label":"Intro","href":"/ai/scikit-learn/intro","docId":"ai/scikit-learn/intro","unlisted":false},{"type":"link","label":"Others","href":"/ai/scikit-learn/others","docId":"ai/scikit-learn/others","unlisted":false},{"type":"link","label":"Cheatsheet","href":"/ai/scikit-learn/scipy-cheatsheet","docId":"ai/scikit-learn/scipy-cheatsheet","unlisted":false},{"type":"link","label":"Intro","href":"/ai/scikit-learn/scipy-intro","docId":"ai/scikit-learn/scipy-intro","unlisted":false}],"href":"/ai/scikit-learn/"},{"type":"link","label":"Social Media Analytics Solution","href":"/ai/social-media-analytics-solution","docId":"ai/social-media-analytics-solution","unlisted":false},{"type":"link","label":"Solutions","href":"/ai/solutions","docId":"ai/solutions","unlisted":false}],"href":"/ai/"},{"type":"category","label":"Algorithms","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Advanced Algorithms","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"A* Search Algorithm","href":"/algorithms/advanced-algorithms/a-search-algorithm","docId":"algorithms/advanced-algorithms/a-search-algorithm","unlisted":false},{"type":"link","label":"Automated Planning and Scheduling","href":"/algorithms/advanced-algorithms/automated-planning-and-scheduling","docId":"algorithms/advanced-algorithms/automated-planning-and-scheduling","unlisted":false},{"type":"link","label":"Disk Scheduling Algorithms","href":"/algorithms/advanced-algorithms/disk-scheduling-algorithms","docId":"algorithms/advanced-algorithms/disk-scheduling-algorithms","unlisted":false},{"type":"link","label":"Informed Search Algorithms","href":"/algorithms/advanced-algorithms/informed-search-algorithms","docId":"algorithms/advanced-algorithms/informed-search-algorithms","unlisted":false},{"type":"link","label":"Intractability","href":"/algorithms/advanced-algorithms/intractability","docId":"algorithms/advanced-algorithms/intractability","unlisted":false},{"type":"link","label":"Linear Programming","href":"/algorithms/advanced-algorithms/linear-programming","docId":"algorithms/advanced-algorithms/linear-programming","unlisted":false},{"type":"link","label":"Multi Armed Bandit (MAB)","href":"/algorithms/advanced-algorithms/multi-armed-bandit-mab","docId":"algorithms/advanced-algorithms/multi-armed-bandit-mab","unlisted":false},{"type":"link","label":"Others","href":"/algorithms/advanced-algorithms/others","docId":"algorithms/advanced-algorithms/others","unlisted":false},{"type":"link","label":"Principle of Deferred Decisions","href":"/algorithms/advanced-algorithms/principle-of-deferred-decisions","docId":"algorithms/advanced-algorithms/principle-of-deferred-decisions","unlisted":false},{"type":"link","label":"Reductions","href":"/algorithms/advanced-algorithms/reductions","docId":"algorithms/advanced-algorithms/reductions","unlisted":false},{"type":"link","label":"Regular Expressions","href":"/algorithms/advanced-algorithms/regular-expressions","docId":"algorithms/advanced-algorithms/regular-expressions","unlisted":false},{"type":"link","label":"Travelling Salesman Problem","href":"/algorithms/advanced-algorithms/travelling-salesman-problem","docId":"algorithms/advanced-algorithms/travelling-salesman-problem","unlisted":false}],"href":"/algorithms/advanced-algorithms/"},{"type":"category","label":"Algorithmic Complexity","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Analysis of Algorithms","href":"/algorithms/algorithmic-complexity/analysis-of-algorithms","docId":"algorithms/algorithmic-complexity/analysis-of-algorithms","unlisted":false},{"type":"link","label":"Complexity Zoo","href":"/algorithms/algorithmic-complexity/complexity-zoo","docId":"algorithms/algorithmic-complexity/complexity-zoo","unlisted":false},{"type":"link","label":"Computational Complexity Theory","href":"/algorithms/algorithmic-complexity/computational-complexity-theory","docId":"algorithms/algorithmic-complexity/computational-complexity-theory","unlisted":false},{"type":"link","label":"Finite-State Machine","href":"/algorithms/algorithmic-complexity/finite-state-machine","docId":"algorithms/algorithmic-complexity/finite-state-machine","unlisted":false},{"type":"link","label":"Halting Problem","href":"/algorithms/algorithmic-complexity/halting-problem","docId":"algorithms/algorithmic-complexity/halting-problem","unlisted":false},{"type":"link","label":"NP Hardness","href":"/algorithms/algorithmic-complexity/np-hardness","docId":"algorithms/algorithmic-complexity/np-hardness","unlisted":false},{"type":"link","label":"Sub-linear time","href":"/algorithms/algorithmic-complexity/sub-linear-time","docId":"algorithms/algorithmic-complexity/sub-linear-time","unlisted":false},{"type":"link","label":"Time Complexities","href":"/algorithms/algorithmic-complexity/time-complexities","docId":"algorithms/algorithmic-complexity/time-complexities","unlisted":false},{"type":"link","label":"Turing vs Non Turing Machine","href":"/algorithms/algorithmic-complexity/turing-vs-non-turing-machine","docId":"algorithms/algorithmic-complexity/turing-vs-non-turing-machine","unlisted":false}],"href":"/algorithms/algorithmic-complexity/"},{"type":"category","label":"Bit Manipulation","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Examples","href":"/algorithms/bit-manipulation/examples","docId":"algorithms/bit-manipulation/examples","unlisted":false},{"type":"link","label":"General","href":"/algorithms/bit-manipulation/general","docId":"algorithms/bit-manipulation/general","unlisted":false}],"href":"/algorithms/bit-manipulation/"},{"type":"category","label":"Complex Systems","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Game Theory","href":"/algorithms/complex-systems/game-theory","docId":"algorithms/complex-systems/game-theory","unlisted":false},{"type":"link","label":"Complex Systems","href":"/algorithms/complex-systems/intro","docId":"algorithms/complex-systems/intro","unlisted":false},{"type":"link","label":"MiniMax Algorithm","href":"/algorithms/complex-systems/minimax-algorithm","docId":"algorithms/complex-systems/minimax-algorithm","unlisted":false},{"type":"link","label":"Move by nature","href":"/algorithms/complex-systems/move-by-nature","docId":"algorithms/complex-systems/move-by-nature","unlisted":false},{"type":"link","label":"Others","href":"/algorithms/complex-systems/others","docId":"algorithms/complex-systems/others","unlisted":false}],"href":"/algorithms/complex-systems/"},{"type":"category","label":"Data Compression","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Bitmap Compression Algorithms","href":"/algorithms/data-compression/bitmap-compression-algorithms","docId":"algorithms/data-compression/bitmap-compression-algorithms","unlisted":false},{"type":"link","label":"Huffman Compression","href":"/algorithms/data-compression/huffman-compression","docId":"algorithms/data-compression/huffman-compression","unlisted":false},{"type":"link","label":"Intro","href":"/algorithms/data-compression/intro","docId":"algorithms/data-compression/intro","unlisted":false},{"type":"link","label":"LZW Compression","href":"/algorithms/data-compression/lzw-compression","docId":"algorithms/data-compression/lzw-compression","unlisted":false},{"type":"link","label":"Others","href":"/algorithms/data-compression/others","docId":"algorithms/data-compression/others","unlisted":false},{"type":"link","label":"Run Length Encoding","href":"/algorithms/data-compression/run-length-encoding","docId":"algorithms/data-compression/run-length-encoding","unlisted":false}],"href":"/algorithms/data-compression/"},{"type":"category","label":"Dynamic Programming","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Basic Gold Mines","href":"/algorithms/dynamic-programming/basic-gold-mines","docId":"algorithms/dynamic-programming/basic-gold-mines","unlisted":false},{"type":"link","label":"General","href":"/algorithms/dynamic-programming/greedy-algorithms","docId":"algorithms/dynamic-programming/greedy-algorithms","unlisted":false},{"type":"link","label":"How to find DP","href":"/algorithms/dynamic-programming/how-to-find-dp","docId":"algorithms/dynamic-programming/how-to-find-dp","unlisted":false},{"type":"link","label":"Intro","href":"/algorithms/dynamic-programming/intro","docId":"algorithms/dynamic-programming/intro","unlisted":false},{"type":"link","label":"Knapsack Problem","href":"/algorithms/dynamic-programming/knapsack-problem","docId":"algorithms/dynamic-programming/knapsack-problem","unlisted":false},{"type":"link","label":"Levenshtein distance or Edit Distance","href":"/algorithms/dynamic-programming/levenshtein-distance-or-edit-distance","docId":"algorithms/dynamic-programming/levenshtein-distance-or-edit-distance","unlisted":false}],"href":"/algorithms/dynamic-programming/"},{"type":"category","label":"General","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"1d Range Search","href":"/algorithms/general/1d-range-search","docId":"algorithms/general/1d-range-search","unlisted":false},{"type":"link","label":"2d orthogonal range search","href":"/algorithms/general/2d-orthogonal-range-search","docId":"algorithms/general/2d-orthogonal-range-search","unlisted":false},{"type":"link","label":"Algo + DS","href":"/algorithms/general/algo-ds","docId":"algorithms/general/algo-ds","unlisted":false},{"type":"link","label":"Algorithms Questions","href":"/algorithms/general/algorithms-questions","docId":"algorithms/general/algorithms-questions","unlisted":false},{"type":"link","label":"Appel\'s Algorithm","href":"/algorithms/general/appel-algorithm","docId":"algorithms/general/appel-algorithm","unlisted":false},{"type":"link","label":"Competitive Programming Questions","href":"/algorithms/general/competitive-programming","docId":"algorithms/general/competitive-programming","unlisted":false},{"type":"link","label":"Euclidean Algorithm - Gcd","href":"/algorithms/general/euclidean-algorithm-gcd","docId":"algorithms/general/euclidean-algorithm-gcd","unlisted":false},{"type":"link","label":"Flocking Boids Algorithm","href":"/algorithms/general/flocking-boids-algorithm","docId":"algorithms/general/flocking-boids-algorithm","unlisted":false},{"type":"link","label":"Knuth Shuffle","href":"/algorithms/general/knuth-shuffle","docId":"algorithms/general/knuth-shuffle","unlisted":false},{"type":"link","label":"List of Algorithms","href":"/algorithms/general/list-of-algorithms","docId":"algorithms/general/list-of-algorithms","unlisted":false},{"type":"link","label":"N Queens Problem","href":"/algorithms/general/n-queens-problem","docId":"algorithms/general/n-queens-problem","unlisted":false},{"type":"link","label":"Orthogonal rectangle intersection search","href":"/algorithms/general/orthogonal-rectangle-intersection-search","docId":"algorithms/general/orthogonal-rectangle-intersection-search","unlisted":false},{"type":"link","label":"Prime Factorization","href":"/algorithms/general/prime-factorization","docId":"algorithms/general/prime-factorization","unlisted":false},{"type":"link","label":"Quick Select","href":"/algorithms/general/quick-select","docId":"algorithms/general/quick-select","unlisted":false},{"type":"link","label":"Recursion","href":"/algorithms/general/recursion","docId":"algorithms/general/recursion","unlisted":false},{"type":"link","label":"Reverse Polish Notation / Postfix Notation","href":"/algorithms/general/reverse-polish-notation-postfix-notation","docId":"algorithms/general/reverse-polish-notation-postfix-notation","unlisted":false},{"type":"link","label":"Sweep Line Algorithm","href":"/algorithms/general/sweep-line-algorithm","docId":"algorithms/general/sweep-line-algorithm","unlisted":false},{"type":"link","label":"Two-Stack Algorithm","href":"/algorithms/general/two-stack-algorithm","docId":"algorithms/general/two-stack-algorithm","unlisted":false},{"type":"link","label":"Types of algorithms","href":"/algorithms/general/types-of-algorithms","docId":"algorithms/general/types-of-algorithms","unlisted":false},{"type":"link","label":"Union-Find Algorithm","href":"/algorithms/general/union-find-algorithm","docId":"algorithms/general/union-find-algorithm","unlisted":false}],"href":"/algorithms/general/"},{"type":"category","label":"Graph Theory","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Acyclic Edge Weighted Digraphs","href":"/algorithms/graphtheory/acyclic-edge-weighted-digraphs","docId":"algorithms/graphtheory/acyclic-edge-weighted-digraphs","unlisted":false},{"type":"link","label":"Bellman Ford Algorithm","href":"/algorithms/graphtheory/bellman-ford-algorithm","docId":"algorithms/graphtheory/bellman-ford-algorithm","unlisted":false},{"type":"link","label":"Breadth First Search (BFS)","href":"/algorithms/graphtheory/breadth-first-search-bfs","docId":"algorithms/graphtheory/breadth-first-search-bfs","unlisted":false},{"type":"link","label":"Connected Components","href":"/algorithms/graphtheory/connected-components","docId":"algorithms/graphtheory/connected-components","unlisted":false},{"type":"link","label":"Depth First Search (DFS)","href":"/algorithms/graphtheory/depth-first-search-dfs","docId":"algorithms/graphtheory/depth-first-search-dfs","unlisted":false},{"type":"link","label":"Dijkstra\'s Algorithm","href":"/algorithms/graphtheory/dijkstra-algorithm","docId":"algorithms/graphtheory/dijkstra-algorithm","unlisted":false},{"type":"link","label":"Eulerian Trail","href":"/algorithms/graphtheory/eulerian-trail","docId":"algorithms/graphtheory/eulerian-trail","unlisted":false},{"type":"link","label":"Ford-Fulkerson Algorithm","href":"/algorithms/graphtheory/ford-fulkerson-algorithm","docId":"algorithms/graphtheory/ford-fulkerson-algorithm","unlisted":false},{"type":"link","label":"Graph Search","href":"/algorithms/graphtheory/graph-search","docId":"algorithms/graphtheory/graph-search","unlisted":false},{"type":"link","label":"Intro","href":"/algorithms/graphtheory/intro","docId":"algorithms/graphtheory/intro","unlisted":false},{"type":"link","label":"Kruskal\'s Algorithm for MST","href":"/algorithms/graphtheory/kruskal-algorithm-for-mst","docId":"algorithms/graphtheory/kruskal-algorithm-for-mst","unlisted":false},{"type":"link","label":"Longest Path in Edge-Weighted DAGs","href":"/algorithms/graphtheory/longest-path-in-edge-weighted-dags","docId":"algorithms/graphtheory/longest-path-in-edge-weighted-dags","unlisted":false},{"type":"link","label":"Maximum Flow and Minimum Cut","href":"/algorithms/graphtheory/maximum-flow-and-minimum-cut","docId":"algorithms/graphtheory/maximum-flow-and-minimum-cut","unlisted":false},{"type":"link","label":"Minimum Spanning Tree","href":"/algorithms/graphtheory/minimum-spanning-tree","docId":"algorithms/graphtheory/minimum-spanning-tree","unlisted":false},{"type":"link","label":"Other Graph Algorithms","href":"/algorithms/graphtheory/other-graph-algorithms","docId":"algorithms/graphtheory/other-graph-algorithms","unlisted":false},{"type":"link","label":"Prim\'s Algorithm for MST","href":"/algorithms/graphtheory/prim-algorithm-for-mst","docId":"algorithms/graphtheory/prim-algorithm-for-mst","unlisted":false},{"type":"link","label":"Problems","href":"/algorithms/graphtheory/problems","docId":"algorithms/graphtheory/problems","unlisted":false},{"type":"link","label":"Resources","href":"/algorithms/graphtheory/resources","docId":"algorithms/graphtheory/resources","unlisted":false},{"type":"link","label":"Seam Carving","href":"/algorithms/graphtheory/seam-carving","docId":"algorithms/graphtheory/seam-carving","unlisted":false},{"type":"link","label":"Shortest Path Algorithms","href":"/algorithms/graphtheory/shortest-path-algorithms","docId":"algorithms/graphtheory/shortest-path-algorithms","unlisted":false},{"type":"link","label":"Strong Components","href":"/algorithms/graphtheory/strong-components","docId":"algorithms/graphtheory/strong-components","unlisted":false},{"type":"link","label":"Topological Sort Algorithm","href":"/algorithms/graphtheory/topological-sort-algorithm","docId":"algorithms/graphtheory/topological-sort-algorithm","unlisted":false}],"href":"/algorithms/graphtheory/"},{"type":"category","label":"Mathematics","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Combinatorial Optimization","href":"/algorithms/mathematics/combinatorial-optimization","docId":"algorithms/mathematics/combinatorial-optimization","unlisted":false},{"type":"link","label":"MO\'s Algorithm","href":"/algorithms/mathematics/mo-algorithm","docId":"algorithms/mathematics/mo-algorithm","unlisted":false},{"type":"link","label":"Powerset","href":"/algorithms/mathematics/powerset","docId":"algorithms/mathematics/powerset","unlisted":false}],"href":"/algorithms/mathematics/"},{"type":"category","label":"Searching Sorting","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"3-Way Quick Sort","href":"/algorithms/searching-sorting/3-way-quick-sort","docId":"algorithms/searching-sorting/3-way-quick-sort","unlisted":false},{"type":"link","label":"3-way string radix quicksort","href":"/algorithms/searching-sorting/3-way-string-radix-quicksort","docId":"algorithms/searching-sorting/3-way-string-radix-quicksort","unlisted":false},{"type":"link","label":"Binary Search","href":"/algorithms/searching-sorting/binary-search","docId":"algorithms/searching-sorting/binary-search","unlisted":false},{"type":"link","label":"Convex Hull","href":"/algorithms/searching-sorting/convex-hull","docId":"algorithms/searching-sorting/convex-hull","unlisted":false},{"type":"link","label":"External Sort","href":"/algorithms/searching-sorting/external-sort","docId":"algorithms/searching-sorting/external-sort","unlisted":false},{"type":"link","label":"Heapsort","href":"/algorithms/searching-sorting/heapsort","docId":"algorithms/searching-sorting/heapsort","unlisted":false},{"type":"link","label":"Insertion Sort","href":"/algorithms/searching-sorting/insertion-sort","docId":"algorithms/searching-sorting/insertion-sort","unlisted":false},{"type":"link","label":"Intro","href":"/algorithms/searching-sorting/intro","docId":"algorithms/searching-sorting/intro","unlisted":false},{"type":"link","label":"Key-indexed Counting","href":"/algorithms/searching-sorting/key-indexed-counting","docId":"algorithms/searching-sorting/key-indexed-counting","unlisted":false},{"type":"link","label":"Knuth Shuffle","href":"/algorithms/searching-sorting/knuth-shuffle","docId":"algorithms/searching-sorting/knuth-shuffle","unlisted":false},{"type":"link","label":"LSD Radix Sort","href":"/algorithms/searching-sorting/lsd-radix-sort","docId":"algorithms/searching-sorting/lsd-radix-sort","unlisted":false},{"type":"link","label":"Merge Sort","href":"/algorithms/searching-sorting/merge-sort","docId":"algorithms/searching-sorting/merge-sort","unlisted":false},{"type":"link","label":"MSD Radix Sort","href":"/algorithms/searching-sorting/msd-radix-sort","docId":"algorithms/searching-sorting/msd-radix-sort","unlisted":false},{"type":"link","label":"Others","href":"/algorithms/searching-sorting/others","docId":"algorithms/searching-sorting/others","unlisted":false},{"type":"link","label":"Quick Sort","href":"/algorithms/searching-sorting/quick-sort","docId":"algorithms/searching-sorting/quick-sort","unlisted":false},{"type":"link","label":"Selection Sort","href":"/algorithms/searching-sorting/selection-sort","docId":"algorithms/searching-sorting/selection-sort","unlisted":false},{"type":"link","label":"Shell Sort","href":"/algorithms/searching-sorting/shell-sort","docId":"algorithms/searching-sorting/shell-sort","unlisted":false},{"type":"link","label":"Shuffle Sort","href":"/algorithms/searching-sorting/shuffle-sort","docId":"algorithms/searching-sorting/shuffle-sort","unlisted":false},{"type":"link","label":"System Sort","href":"/algorithms/searching-sorting/system-sort","docId":"algorithms/searching-sorting/system-sort","unlisted":false},{"type":"link","label":"TimSort","href":"/algorithms/searching-sorting/timsort","docId":"algorithms/searching-sorting/timsort","unlisted":false}],"href":"/algorithms/searching-sorting/"},{"type":"category","label":"String Algorithms","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Boyer-Moore","href":"/algorithms/string-algorithms/boyer-moore","docId":"algorithms/string-algorithms/boyer-moore","unlisted":false},{"type":"link","label":"Brute Force","href":"/algorithms/string-algorithms/brute-force","docId":"algorithms/string-algorithms/brute-force","unlisted":false},{"type":"link","label":"Intro","href":"/algorithms/string-algorithms/intro","docId":"algorithms/string-algorithms/intro","unlisted":false},{"type":"link","label":"Knuth-Morris-Pratt","href":"/algorithms/string-algorithms/knuth-morris-pratt","docId":"algorithms/string-algorithms/knuth-morris-pratt","unlisted":false},{"type":"link","label":"Longest Common Prefix","href":"/algorithms/string-algorithms/longest-common-prefix","docId":"algorithms/string-algorithms/longest-common-prefix","unlisted":false},{"type":"link","label":"Rabin Karp","href":"/algorithms/string-algorithms/rabin-karp","docId":"algorithms/string-algorithms/rabin-karp","unlisted":false},{"type":"link","label":"Substring Search Intro","href":"/algorithms/string-algorithms/substring-search-intro","docId":"algorithms/string-algorithms/substring-search-intro","unlisted":false}],"href":"/algorithms/string-algorithms/"}],"href":"/algorithms/"},{"type":"category","label":"Book Summaries","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"13 Things Mentally Strong Parents Don\'t Do","href":"/book-summaries/13-things-mentally-strong-parents-dont-do","docId":"book-summaries/13-things-mentally-strong-parents-dont-do","unlisted":false},{"type":"link","label":"13 Things Mentally Strong People Don\'t Do","href":"/book-summaries/13-things-mentally-strong-people-dont-do","docId":"book-summaries/13-things-mentally-strong-people-dont-do","unlisted":false},{"type":"link","label":"48 Laws of Power","href":"/book-summaries/48-laws-of-power","docId":"book-summaries/48-laws-of-power","unlisted":false},{"type":"link","label":"7 Powers: The Foundations of Business Strategy","href":"/book-summaries/7-powers-the-foundations-of-business-strategy","docId":"book-summaries/7-powers-the-foundations-of-business-strategy","unlisted":false},{"type":"link","label":"Alchemy: The Surprising Power of Ideas That Don\'t Make Sense","href":"/book-summaries/alchemy-the-surprising-power-of-ideas-that-dont-make-sense","docId":"book-summaries/alchemy-the-surprising-power-of-ideas-that-dont-make-sense","unlisted":false},{"type":"link","label":"Atomic Habits","href":"/book-summaries/atomic-habits","docId":"book-summaries/atomic-habits","unlisted":false},{"type":"link","label":"Books / Blinkist - Productivity","href":"/book-summaries/books-blinkist-productivity","docId":"book-summaries/books-blinkist-productivity","unlisted":false},{"type":"link","label":"Books","href":"/book-summaries/books-to-read","docId":"book-summaries/books-to-read","unlisted":false},{"type":"link","label":"Chasing Excellence","href":"/book-summaries/chasing-excellence","docId":"book-summaries/chasing-excellence","unlisted":false},{"type":"link","label":"Collaborative Intelligence","href":"/book-summaries/collaborative-intelligence","docId":"book-summaries/collaborative-intelligence","unlisted":false},{"type":"link","label":"David and Goliath","href":"/book-summaries/david-and-goliath","docId":"book-summaries/david-and-goliath","unlisted":false},{"type":"link","label":"Deep work","href":"/book-summaries/deep-work","docId":"book-summaries/deep-work","unlisted":false},{"type":"link","label":"Didn\'t see it coming","href":"/book-summaries/didnt-see-it-coming","docId":"book-summaries/didnt-see-it-coming","unlisted":false},{"type":"link","label":"Do Hard Things","href":"/book-summaries/do-hard-things","docId":"book-summaries/do-hard-things","unlisted":false},{"type":"link","label":"Doing Good Better","href":"/book-summaries/doing-good-better","docId":"book-summaries/doing-good-better","unlisted":false},{"type":"link","label":"Dollars and Sense","href":"/book-summaries/dollars-and-sense","docId":"book-summaries/dollars-and-sense","unlisted":false},{"type":"link","label":"Doughnut Economics","href":"/book-summaries/doughnut-economics","docId":"book-summaries/doughnut-economics","unlisted":false},{"type":"link","label":"Economics for the Common Good","href":"/book-summaries/economics-for-the-common-good","docId":"book-summaries/economics-for-the-common-good","unlisted":false},{"type":"link","label":"Edge of Chaos","href":"/book-summaries/edge-of-chaos","docId":"book-summaries/edge-of-chaos","unlisted":false},{"type":"link","label":"Essentialism","href":"/book-summaries/essentialism","docId":"book-summaries/essentialism","unlisted":false},{"type":"link","label":"Everyday Millionaires","href":"/book-summaries/everyday-millionaires","docId":"book-summaries/everyday-millionaires","unlisted":false},{"type":"link","label":"Find Your Element","href":"/book-summaries/find-your-element","docId":"book-summaries/find-your-element","unlisted":false},{"type":"link","label":"First Things First","href":"/book-summaries/first-things-first","docId":"book-summaries/first-things-first","unlisted":false},{"type":"link","label":"From Strength to Strength","href":"/book-summaries/from-strength-to-strength","docId":"book-summaries/from-strength-to-strength","unlisted":false},{"type":"link","label":"Game Changers","href":"/book-summaries/game-changers","docId":"book-summaries/game-changers","unlisted":false},{"type":"link","label":"Get it","href":"/book-summaries/get-it","docId":"book-summaries/get-it","unlisted":false},{"type":"link","label":"Getting Things Done","href":"/book-summaries/getting-things-done","docId":"book-summaries/getting-things-done","unlisted":false},{"type":"link","label":"Good Economics for Hard Times","href":"/book-summaries/good-economics-for-hard-times","docId":"book-summaries/good-economics-for-hard-times","unlisted":false},{"type":"link","label":"How should we live?","href":"/book-summaries/how-should-we-live","docId":"book-summaries/how-should-we-live","unlisted":false},{"type":"link","label":"How to be a Stoic","href":"/book-summaries/how-to-be-a-stoic","docId":"book-summaries/how-to-be-a-stoic","unlisted":false},{"type":"link","label":"How to be an adult in relationships","href":"/book-summaries/how-to-be-an-adult-in-relationships","docId":"book-summaries/how-to-be-an-adult-in-relationships","unlisted":false},{"type":"link","label":"How to have impossible conversations","href":"/book-summaries/how-to-have-impossible-conversations","docId":"book-summaries/how-to-have-impossible-conversations","unlisted":false},{"type":"link","label":"How to live a good life","href":"/book-summaries/how-to-live-a-good-life","docId":"book-summaries/how-to-live-a-good-life","unlisted":false},{"type":"link","label":"How to Make Money in Stocks","href":"/book-summaries/how-to-make-money-in-stocks","docId":"book-summaries/how-to-make-money-in-stocks","unlisted":false},{"type":"link","label":"How to Take Smart Notes","href":"/book-summaries/how-to-take-smart-notes","docId":"book-summaries/how-to-take-smart-notes","unlisted":false},{"type":"link","label":"Hyperfocus","href":"/book-summaries/hyperfocus","docId":"book-summaries/hyperfocus","unlisted":false},{"type":"link","label":"Leaders Eat Last","href":"/book-summaries/leaders-eat-last","docId":"book-summaries/leaders-eat-last","unlisted":false},{"type":"link","label":"Leadership and the Rise of Great Powers","href":"/book-summaries/leadership-and-the-rise-of-great-powers","docId":"book-summaries/leadership-and-the-rise-of-great-powers","unlisted":false},{"type":"link","label":"Life is in the Transitions","href":"/book-summaries/life-is-in-the-transitions","docId":"book-summaries/life-is-in-the-transitions","unlisted":false},{"type":"link","label":"Off the Clock","href":"/book-summaries/off-the-clock","docId":"book-summaries/off-the-clock","unlisted":false},{"type":"link","label":"On Writing Well","href":"/book-summaries/on-writing-well","docId":"book-summaries/on-writing-well","unlisted":false},{"type":"link","label":"Organize Tomorrow Today","href":"/book-summaries/organize-tomorrow-today","docId":"book-summaries/organize-tomorrow-today","unlisted":false},{"type":"link","label":"Others","href":"/book-summaries/others","docId":"book-summaries/others","unlisted":false},{"type":"link","label":"Power and Prediction","href":"/book-summaries/power-and-prediction","docId":"book-summaries/power-and-prediction","unlisted":false},{"type":"link","label":"Power Relationships","href":"/book-summaries/power-relationships","docId":"book-summaries/power-relationships","unlisted":false},{"type":"link","label":"Power, Sex, Suicide","href":"/book-summaries/power-sex-suicide","docId":"book-summaries/power-sex-suicide","unlisted":false},{"type":"link","label":"Predictably Irrational","href":"/book-summaries/predictably-irrational","docId":"book-summaries/predictably-irrational","unlisted":false},{"type":"link","label":"Primed to Perform","href":"/book-summaries/primed-to-perform","docId":"book-summaries/primed-to-perform","unlisted":false},{"type":"link","label":"Principles","href":"/book-summaries/principles","docId":"book-summaries/principles","unlisted":false},{"type":"link","label":"Secrets of Power Negotiating","href":"/book-summaries/secrets-of-power-negotiating","docId":"book-summaries/secrets-of-power-negotiating","unlisted":false},{"type":"link","label":"Sell Like Crazy","href":"/book-summaries/sell-like-crazy","docId":"book-summaries/sell-like-crazy","unlisted":false},{"type":"link","label":"Skin in the Game","href":"/book-summaries/skin-in-the-game","docId":"book-summaries/skin-in-the-game","unlisted":false},{"type":"link","label":"Small Is Beautiful: Economics as if People Mattered","href":"/book-summaries/small-is-beautiful","docId":"book-summaries/small-is-beautiful","unlisted":false},{"type":"link","label":"Social Intelligence","href":"/book-summaries/social-intelligence","docId":"book-summaries/social-intelligence","unlisted":false},{"type":"link","label":"Solve for Happy","href":"/book-summaries/solve-for-happy","docId":"book-summaries/solve-for-happy","unlisted":false},{"type":"link","label":"Switch on your brain","href":"/book-summaries/switch-on-your-brain","docId":"book-summaries/switch-on-your-brain","unlisted":false},{"type":"link","label":"Talking Across the Divide","href":"/book-summaries/talking-across-divide","docId":"book-summaries/talking-across-divide","unlisted":false},{"type":"link","label":"The 22 Immutable Laws of Branding","href":"/book-summaries/the-22-immutable-laws-of-branding","docId":"book-summaries/the-22-immutable-laws-of-branding","unlisted":false},{"type":"link","label":"The 3-Minute Rule","href":"/book-summaries/the-3-minute-rule","docId":"book-summaries/the-3-minute-rule","unlisted":false},{"type":"link","label":"The 4 Agreements","href":"/book-summaries/the-4-agreements","docId":"book-summaries/the-4-agreements","unlisted":false},{"type":"link","label":"The 4-Hour Workweek","href":"/book-summaries/the-4-hour-workweek","docId":"book-summaries/the-4-hour-workweek","unlisted":false},{"type":"link","label":"The 5 AM Club","href":"/book-summaries/the-5-am-club","docId":"book-summaries/the-5-am-club","unlisted":false},{"type":"link","label":"The Almanack of Naval Ravikant","href":"/book-summaries/the-almanack-of-naval-ravikant","docId":"book-summaries/the-almanack-of-naval-ravikant","unlisted":false},{"type":"link","label":"The Art of Impossible","href":"/book-summaries/the-art-of-impossible","docId":"book-summaries/the-art-of-impossible","unlisted":false},{"type":"link","label":"The Art of Logic","href":"/book-summaries/the-art-of-logic","docId":"book-summaries/the-art-of-logic","unlisted":false},{"type":"link","label":"The Book of Joy","href":"/book-summaries/the-book-of-joy","docId":"book-summaries/the-book-of-joy","unlisted":false},{"type":"link","label":"The Courage to be Happy","href":"/book-summaries/the-courage-to-be-happy","docId":"book-summaries/the-courage-to-be-happy","unlisted":false},{"type":"link","label":"The Dip","href":"/book-summaries/the-dip","docId":"book-summaries/the-dip","unlisted":false},{"type":"link","label":"The Distriction Addiction","href":"/book-summaries/the-distraction-addiction","docId":"book-summaries/the-distraction-addiction","unlisted":false},{"type":"link","label":"The Elephant in the Brain","href":"/book-summaries/the-elephant-in-the-brain","docId":"book-summaries/the-elephant-in-the-brain","unlisted":false},{"type":"link","label":"The Grid","href":"/book-summaries/the-grid","docId":"book-summaries/the-grid","unlisted":false},{"type":"link","label":"The Knowledge Illusion","href":"/book-summaries/the-knowledge-illusion","docId":"book-summaries/the-knowledge-illusion","unlisted":false},{"type":"link","label":"The life you can save","href":"/book-summaries/the-life-you-can-save","docId":"book-summaries/the-life-you-can-save","unlisted":false},{"type":"link","label":"The Organized Mind","href":"/book-summaries/the-organized-mind","docId":"book-summaries/the-organized-mind","unlisted":false},{"type":"link","label":"The path between us","href":"/book-summaries/the-path-between-us","docId":"book-summaries/the-path-between-us","unlisted":false},{"type":"link","label":"The power of Concentration","href":"/book-summaries/the-power-of-concentration","docId":"book-summaries/the-power-of-concentration","unlisted":false},{"type":"link","label":"The Power of Regret","href":"/book-summaries/the-power-of-regret","docId":"book-summaries/the-power-of-regret","unlisted":false},{"type":"link","label":"The Science of Selling","href":"/book-summaries/the-science-of-selling","docId":"book-summaries/the-science-of-selling","unlisted":false},{"type":"link","label":"The Seven Habits of Highly Effective People","href":"/book-summaries/the-seven-habits-of-highly-effective-people","docId":"book-summaries/the-seven-habits-of-highly-effective-people","unlisted":false},{"type":"link","label":"The Slight Edge","href":"/book-summaries/the-slight-edge","docId":"book-summaries/the-slight-edge","unlisted":false},{"type":"link","label":"The Squiggly Career","href":"/book-summaries/the-squiggly-career","docId":"book-summaries/the-squiggly-career","unlisted":false},{"type":"link","label":"The Status Game","href":"/book-summaries/the-status-game","docId":"book-summaries/the-status-game","unlisted":false},{"type":"link","label":"The Tangled Tree","href":"/book-summaries/the-tangled-tree","docId":"book-summaries/the-tangled-tree","unlisted":false},{"type":"link","label":"The Uninhabitable Earth","href":"/book-summaries/the-uninhabitable-earth","docId":"book-summaries/the-uninhabitable-earth","unlisted":false},{"type":"link","label":"Think Again","href":"/book-summaries/think-again","docId":"book-summaries/think-again","unlisted":false},{"type":"link","label":"Think and Grow Rich","href":"/book-summaries/think-and-grow-rich","docId":"book-summaries/think-and-grow-rich","unlisted":false},{"type":"link","label":"Thinking, Fast and Slow","href":"/book-summaries/thinking-fast-and-slow","docId":"book-summaries/thinking-fast-and-slow","unlisted":false},{"type":"link","label":"Thinking in Systems","href":"/book-summaries/thinking-in-systems","docId":"book-summaries/thinking-in-systems","unlisted":false},{"type":"link","label":"Time and How to Spend it","href":"/book-summaries/time-and-how-to-spend-it","docId":"book-summaries/time-and-how-to-spend-it","unlisted":false},{"type":"link","label":"UltraLearning","href":"/book-summaries/ultralearning","docId":"book-summaries/ultralearning","unlisted":false},{"type":"link","label":"What Philosophy Can Teach You About Being a Better Leader","href":"/book-summaries/what-philosophy-can-teach-you-about-being-a-better-leader","docId":"book-summaries/what-philosophy-can-teach-you-about-being-a-better-leader","unlisted":false},{"type":"link","label":"Who we are and how we got here","href":"/book-summaries/who-we-are-and-how-we-got-here","docId":"book-summaries/who-we-are-and-how-we-got-here","unlisted":false}],"href":"/book-summaries/"},{"type":"category","label":"Cloud","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"AWS","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Amazon Pinpoint","href":"/cloud/aws/amazon-pinpoint","docId":"cloud/aws/amazon-pinpoint","unlisted":false},{"type":"category","label":"Analytics","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Amazon Athena","href":"/cloud/aws/analytics/amazon-athena","docId":"cloud/aws/analytics/amazon-athena","unlisted":false},{"type":"link","label":"Amazon DevOps Guru","href":"/cloud/aws/analytics/amazon-devops-guru","docId":"cloud/aws/analytics/amazon-devops-guru","unlisted":false},{"type":"link","label":"Amazon Kinesis","href":"/cloud/aws/analytics/amazon-kinesis","docId":"cloud/aws/analytics/amazon-kinesis","unlisted":false}],"href":"/cloud/aws/analytics/"},{"type":"link","label":"AWS Backup","href":"/cloud/aws/aws-backup","docId":"cloud/aws/aws-backup","unlisted":false},{"type":"link","label":"AWS Competency Program","href":"/cloud/aws/aws-competency-program","docId":"cloud/aws/aws-competency-program","unlisted":false},{"type":"link","label":"AWS Database Migration Service (DMS)","href":"/cloud/aws/aws-database-migration-service-dms","docId":"cloud/aws/aws-database-migration-service-dms","unlisted":false},{"type":"link","label":"AWS Glue","href":"/cloud/aws/aws-glue","docId":"cloud/aws/aws-glue","unlisted":false},{"type":"link","label":"AWS Rekognition","href":"/cloud/aws/aws-rekognition","docId":"cloud/aws/aws-rekognition","unlisted":false},{"type":"link","label":"AWS Services List","href":"/cloud/aws/aws-services-list","docId":"cloud/aws/aws-services-list","unlisted":false},{"type":"link","label":"AWS Services","href":"/cloud/aws/aws-services","docId":"cloud/aws/aws-services","unlisted":false},{"type":"link","label":"AWS SNS","href":"/cloud/aws/aws-sns","docId":"cloud/aws/aws-sns","unlisted":false},{"type":"link","label":"AWS SQS","href":"/cloud/aws/aws-sqs","docId":"cloud/aws/aws-sqs","unlisted":false},{"type":"link","label":"CLI Commands","href":"/cloud/aws/cli-commands","docId":"cloud/aws/cli-commands","unlisted":false},{"type":"category","label":"Compute","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Amazon ECS (Elastic Container Service)","href":"/cloud/aws/compute/amazon-ecs","docId":"cloud/aws/compute/amazon-ecs","unlisted":false},{"type":"link","label":"Amazon EKS","href":"/cloud/aws/compute/amazon-eks","docId":"cloud/aws/compute/amazon-eks","unlisted":false},{"type":"link","label":"AWS Lambda","href":"/cloud/aws/compute/aws-lambda","docId":"cloud/aws/compute/aws-lambda","unlisted":false},{"type":"link","label":"Burstable Instances","href":"/cloud/aws/compute/burstable-instances","docId":"cloud/aws/compute/burstable-instances","unlisted":false},{"type":"link","label":"EC2 Instance types","href":"/cloud/aws/compute/ec2-instance-types","docId":"cloud/aws/compute/ec2-instance-types","unlisted":false}],"href":"/cloud/aws/compute/"},{"type":"link","label":"Cost Optimization / Explorer / Billing","href":"/cloud/aws/cost-optimization-explorer-billing","docId":"cloud/aws/cost-optimization-explorer-billing","unlisted":false},{"type":"link","label":"Architecting on AWS","href":"/cloud/aws/course-architecting-on-aws","docId":"cloud/aws/course-architecting-on-aws","unlisted":false},{"type":"category","label":"developer-tools","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Code Build","href":"/cloud/aws/developer-tools/code-build","docId":"cloud/aws/developer-tools/code-build","unlisted":false},{"type":"link","label":"Developer Tools","href":"/cloud/aws/developer-tools/intro","docId":"cloud/aws/developer-tools/intro","unlisted":false}]},{"type":"link","label":"Intro","href":"/cloud/aws/intro","docId":"cloud/aws/intro","unlisted":false},{"type":"category","label":"networking-content-delivery","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"amazon-cloudfront","href":"/cloud/aws/networking-content-delivery/amazon-cloudfront","docId":"cloud/aws/networking-content-delivery/amazon-cloudfront","unlisted":false},{"type":"link","label":"Amazon VPC","href":"/cloud/aws/networking-content-delivery/amazon-vpc","docId":"cloud/aws/networking-content-delivery/amazon-vpc","unlisted":false},{"type":"link","label":"AWS ELB","href":"/cloud/aws/networking-content-delivery/aws-elb","docId":"cloud/aws/networking-content-delivery/aws-elb","unlisted":false},{"type":"link","label":"Networking and Content Delivery","href":"/cloud/aws/networking-content-delivery/intro","docId":"cloud/aws/networking-content-delivery/intro","unlisted":false}]},{"type":"link","label":"Others","href":"/cloud/aws/others","docId":"cloud/aws/others","unlisted":false},{"type":"category","label":"security-identity-compliance","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Compliance MCQs","href":"/cloud/aws/security-identity-compliance/compliance-mcqs","docId":"cloud/aws/security-identity-compliance/compliance-mcqs","unlisted":false},{"type":"link","label":"Compliances","href":"/cloud/aws/security-identity-compliance/compliance","docId":"cloud/aws/security-identity-compliance/compliance","unlisted":false},{"type":"link","label":"IAM","href":"/cloud/aws/security-identity-compliance/iam","docId":"cloud/aws/security-identity-compliance/iam","unlisted":false},{"type":"link","label":"Security, Identity and Compliance","href":"/cloud/aws/security-identity-compliance/intro","docId":"cloud/aws/security-identity-compliance/intro","unlisted":false},{"type":"link","label":"License Scanning","href":"/cloud/aws/security-identity-compliance/license-scanning","docId":"cloud/aws/security-identity-compliance/license-scanning","unlisted":false},{"type":"link","label":"Security Guidelines","href":"/cloud/aws/security-identity-compliance/security-guidelines","docId":"cloud/aws/security-identity-compliance/security-guidelines","unlisted":false},{"type":"link","label":"Tools","href":"/cloud/aws/security-identity-compliance/tools","docId":"cloud/aws/security-identity-compliance/tools","unlisted":false}]},{"type":"category","label":"Storage","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Amazon EBS","href":"/cloud/aws/storage/amazon-ebs","docId":"cloud/aws/storage/amazon-ebs","unlisted":false},{"type":"link","label":"Amazon EFS","href":"/cloud/aws/storage/amazon-efs","docId":"cloud/aws/storage/amazon-efs","unlisted":false},{"type":"link","label":"Amazon S3 Pricing","href":"/cloud/aws/storage/amazon-s3-pricing","docId":"cloud/aws/storage/amazon-s3-pricing","unlisted":false},{"type":"link","label":"Amazon S3 Storage Classes","href":"/cloud/aws/storage/amazon-s3-storage-classes","docId":"cloud/aws/storage/amazon-s3-storage-classes","unlisted":false},{"type":"link","label":"Amazon S3","href":"/cloud/aws/storage/amazon-s3","docId":"cloud/aws/storage/amazon-s3","unlisted":false},{"type":"link","label":"IOPS","href":"/cloud/aws/storage/iops","docId":"cloud/aws/storage/iops","unlisted":false}],"href":"/cloud/aws/storage/"}],"href":"/cloud/aws/"},{"type":"category","label":"Other Clouds","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Azure","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/cloud/others/azure/commands","docId":"cloud/others/azure/commands","unlisted":false},{"type":"link","label":"IAM","href":"/cloud/others/azure/iam","docId":"cloud/others/azure/iam","unlisted":false},{"type":"link","label":"Microsoft BizTalk","href":"/cloud/others/azure/microsoft-biztalk","docId":"cloud/others/azure/microsoft-biztalk","unlisted":false},{"type":"link","label":"Services","href":"/cloud/others/azure/services","docId":"cloud/others/azure/services","unlisted":false}],"href":"/cloud/others/azure/"},{"type":"link","label":"Business Rules Engine (BRE) / Decision Rule Engine","href":"/cloud/others/business-rule-engine","docId":"cloud/others/business-rule-engine","unlisted":false},{"type":"link","label":"Cache Invalidation","href":"/cloud/others/cdn-cache-invalidation","docId":"cloud/others/cdn-cache-invalidation","unlisted":false},{"type":"link","label":"CDN Comparision","href":"/cloud/others/cdn-comparision","docId":"cloud/others/cdn-comparision","unlisted":false},{"type":"link","label":"CDN (Content Delivery Network)","href":"/cloud/others/cdn-content-delivery-network","docId":"cloud/others/cdn-content-delivery-network","unlisted":false},{"type":"link","label":"Cloudflare","href":"/cloud/others/cloudflare","docId":"cloud/others/cloudflare","unlisted":false},{"type":"category","label":"Firebase","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Automatic Collected Events","href":"/cloud/others/firebase/automatic-collected-events","docId":"cloud/others/firebase/automatic-collected-events","unlisted":false},{"type":"link","label":"FCM Notifications","href":"/cloud/others/firebase/fcm-notifications","docId":"cloud/others/firebase/fcm-notifications","unlisted":false},{"type":"link","label":"Firebase / Google Analytics","href":"/cloud/others/firebase/firebase-google-analytics","docId":"cloud/others/firebase/firebase-google-analytics","unlisted":false},{"type":"link","label":"Web Push Notifications","href":"/cloud/others/firebase/web-push-notifications","docId":"cloud/others/firebase/web-push-notifications","unlisted":false}],"href":"/cloud/others/firebase/"},{"type":"link","label":"GCP Anthos","href":"/cloud/others/gcp-anthos","docId":"cloud/others/gcp-anthos","unlisted":false},{"type":"link","label":"GCP BigQuery / Big Query","href":"/cloud/others/gcp-bigquery-big-query","docId":"cloud/others/gcp-bigquery-big-query","unlisted":false},{"type":"link","label":"GCP / Google Cloud Platform","href":"/cloud/others/gcp-google-cloud-platform","docId":"cloud/others/gcp-google-cloud-platform","unlisted":false},{"type":"link","label":"GCP ML Services","href":"/cloud/others/gcp-ml-services","docId":"cloud/others/gcp-ml-services","unlisted":false},{"type":"link","label":"Imagekit","href":"/cloud/others/imagekit","docId":"cloud/others/imagekit","unlisted":false},{"type":"link","label":"Linode","href":"/cloud/others/linode","docId":"cloud/others/linode","unlisted":false},{"type":"link","label":"Loan Management System (LMS)","href":"/cloud/others/loan-management-system-lms","docId":"cloud/others/loan-management-system-lms","unlisted":false},{"type":"link","label":"Low-Code / No-Code Platforms / LCNC","href":"/cloud/others/low-code-no-code-lcnc","docId":"cloud/others/low-code-no-code-lcnc","unlisted":false},{"type":"link","label":"MDM (Mobile Device Management)","href":"/cloud/others/mdm-mobile-device-management","docId":"cloud/others/mdm-mobile-device-management","unlisted":false},{"type":"link","label":"Openstack","href":"/cloud/others/openstack","docId":"cloud/others/openstack","unlisted":false},{"type":"link","label":"Oracle","href":"/cloud/others/oracle","docId":"cloud/others/oracle","unlisted":false},{"type":"link","label":"Others - SAAS","href":"/cloud/others/others-saas","docId":"cloud/others/others-saas","unlisted":false},{"type":"link","label":"SAP","href":"/cloud/others/sap","docId":"cloud/others/sap","unlisted":false},{"type":"link","label":"Ticketing / TMS","href":"/cloud/others/ticketing-tms","docId":"cloud/others/ticketing-tms","unlisted":false},{"type":"link","label":"VMware","href":"/cloud/others/vmware","docId":"cloud/others/vmware","unlisted":false}],"href":"/cloud/others/"},{"type":"link","label":"Tools","href":"/cloud/tools","docId":"cloud/tools","unlisted":false}],"href":"/cloud/"},{"type":"category","label":"Computer Science","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Distributed System","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Byzantine Generals\' Problem","href":"/computer-science/distributed-system/byzantine-generals-problem","docId":"computer-science/distributed-system/byzantine-generals-problem","unlisted":false},{"type":"link","label":"CAP Theorem","href":"/computer-science/distributed-system/cap-theorem","docId":"computer-science/distributed-system/cap-theorem","unlisted":false},{"type":"link","label":"Clocks","href":"/computer-science/distributed-system/clocks","docId":"computer-science/distributed-system/clocks","unlisted":false},{"type":"link","label":"Consensus Protocols","href":"/computer-science/distributed-system/consensus-protocols","docId":"computer-science/distributed-system/consensus-protocols","unlisted":false},{"type":"link","label":"Consistency","href":"/computer-science/distributed-system/consistency","docId":"computer-science/distributed-system/consistency","unlisted":false},{"type":"link","label":"Distributed Logging","href":"/computer-science/distributed-system/distributed-logging","docId":"computer-science/distributed-system/distributed-logging","unlisted":false},{"type":"link","label":"Fallacies and Problems","href":"/computer-science/distributed-system/fallacies-and-problems","docId":"computer-science/distributed-system/fallacies-and-problems","unlisted":false},{"type":"link","label":"Intro","href":"/computer-science/distributed-system/intro","docId":"computer-science/distributed-system/intro","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/distributed-system/others","docId":"computer-science/distributed-system/others","unlisted":false},{"type":"link","label":"Vocabulary","href":"/computer-science/distributed-system/vocabulary","docId":"computer-science/distributed-system/vocabulary","unlisted":false}],"href":"/computer-science/distributed-system/"},{"type":"category","label":"General","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Common","href":"/computer-science/general/common","docId":"computer-science/general/common","unlisted":false},{"type":"link","label":"Newsletter / Learning Resources","href":"/computer-science/general/newsletter-learning-resources","docId":"computer-science/general/newsletter-learning-resources","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/general/others","docId":"computer-science/general/others","unlisted":false},{"type":"link","label":"Research Papers","href":"/computer-science/general/research-papers","docId":"computer-science/general/research-papers","unlisted":false},{"type":"link","label":"Standards","href":"/computer-science/general/standards","docId":"computer-science/general/standards","unlisted":false},{"type":"link","label":"UUID / GUID","href":"/computer-science/general/uuid-guid","docId":"computer-science/general/uuid-guid","unlisted":false}],"href":"/computer-science/general/"},{"type":"category","label":"Interview Question","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"AWS/Tech/Other Questions","href":"/computer-science/interview-question/aws-tech-other-questions","docId":"computer-science/interview-question/aws-tech-other-questions","unlisted":false},{"type":"link","label":"Blogs / Conferences / Blogging / Presentation / Tech Thursdays","href":"/computer-science/interview-question/blogs-conferences-blogging-presentation-tech-thursdays","docId":"computer-science/interview-question/blogs-conferences-blogging-presentation-tech-thursdays","unlisted":false},{"type":"link","label":"Coding Interview Questions","href":"/computer-science/interview-question/coding-interview-questions","docId":"computer-science/interview-question/coding-interview-questions","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/interview-question/others","docId":"computer-science/interview-question/others","unlisted":false},{"type":"link","label":"System Design - Autocomplete or TypeAhead","href":"/computer-science/interview-question/system-design-autocomplete-or-typeahead","docId":"computer-science/interview-question/system-design-autocomplete-or-typeahead","unlisted":false},{"type":"link","label":"System Design - What happens when you type google.com into your browser\'s address box and press enter?","href":"/computer-science/interview-question/system-design-google-com-into-browser-press-enter","docId":"computer-science/interview-question/system-design-google-com-into-browser-press-enter","unlisted":false},{"type":"link","label":"System Design of Google Search Engine","href":"/computer-science/interview-question/system-design-google-search","docId":"computer-science/interview-question/system-design-google-search","unlisted":false},{"type":"link","label":"System Design - Messenger / WhatsApp","href":"/computer-science/interview-question/system-design-messenger-whatsapp","docId":"computer-science/interview-question/system-design-messenger-whatsapp","unlisted":false},{"type":"link","label":"System Design - MMOG - Game","href":"/computer-science/interview-question/system-design-mmog-game","docId":"computer-science/interview-question/system-design-mmog-game","unlisted":false},{"type":"link","label":"System Design - Others","href":"/computer-science/interview-question/system-design-others","docId":"computer-science/interview-question/system-design-others","unlisted":false},{"type":"link","label":"System Design - Parking Lot","href":"/computer-science/interview-question/system-design-parking-lot","docId":"computer-science/interview-question/system-design-parking-lot","unlisted":false},{"type":"link","label":"System Design - TinyURL","href":"/computer-science/interview-question/system-design-tinyurl","docId":"computer-science/interview-question/system-design-tinyurl","unlisted":false},{"type":"link","label":"System Design - Twitter","href":"/computer-science/interview-question/system-design-twitter","docId":"computer-science/interview-question/system-design-twitter","unlisted":false},{"type":"link","label":"System Design of Uber Data Architecture","href":"/computer-science/interview-question/system-design-uber-data-architecture","docId":"computer-science/interview-question/system-design-uber-data-architecture","unlisted":false},{"type":"link","label":"System Design - Uber Lyft ride sharing services","href":"/computer-science/interview-question/system-design-uber-lyft-ride-sharing-services","docId":"computer-science/interview-question/system-design-uber-lyft-ride-sharing-services","unlisted":false},{"type":"link","label":"System Design of YouTube","href":"/computer-science/interview-question/system-design-youtube","docId":"computer-science/interview-question/system-design-youtube","unlisted":false},{"type":"link","label":"TopTal","href":"/computer-science/interview-question/toptal","docId":"computer-science/interview-question/toptal","unlisted":false}],"href":"/computer-science/interview-question/"},{"type":"category","label":"IOT","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Device Management","href":"/computer-science/iot/device-management","docId":"computer-science/iot/device-management","unlisted":false},{"type":"link","label":"Edge Computing","href":"/computer-science/iot/edge-computing","docId":"computer-science/iot/edge-computing","unlisted":false},{"type":"link","label":"EdgeXFoundary","href":"/computer-science/iot/edgexfoundary","docId":"computer-science/iot/edgexfoundary","unlisted":false},{"type":"link","label":"Industrial IoT (IIoT)","href":"/computer-science/iot/industrial-iot-iiot","docId":"computer-science/iot/industrial-iot-iiot","unlisted":false},{"type":"link","label":"IoT Intro","href":"/computer-science/iot/iot-intro","docId":"computer-science/iot/iot-intro","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/iot/others","docId":"computer-science/iot/others","unlisted":false}],"href":"/computer-science/iot/"},{"type":"link","label":"Links","href":"/computer-science/links","docId":"computer-science/links","unlisted":false},{"type":"category","label":"Operating System","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Basic Computer Organization","href":"/computer-science/operating-system/basic-computer-organization","docId":"computer-science/operating-system/basic-computer-organization","unlisted":false},{"type":"link","label":"Cache Access Patterns (Writing Policies)","href":"/computer-science/operating-system/cache-access-patterns","docId":"computer-science/operating-system/cache-access-patterns","unlisted":false},{"type":"link","label":"Cache Coherence","href":"/computer-science/operating-system/cache-coherence-invalidation","docId":"computer-science/operating-system/cache-coherence-invalidation","unlisted":false},{"type":"link","label":"Caches / Caching","href":"/computer-science/operating-system/caches-caching","docId":"computer-science/operating-system/caches-caching","unlisted":false},{"type":"link","label":"Caching Strategies","href":"/computer-science/operating-system/caching-strategies-topologies","docId":"computer-science/operating-system/caching-strategies-topologies","unlisted":false},{"type":"link","label":"Compilers","href":"/computer-science/operating-system/compilers","docId":"computer-science/operating-system/compilers","unlisted":false},{"type":"link","label":"Concepts","href":"/computer-science/operating-system/concepts","docId":"computer-science/operating-system/concepts","unlisted":false},{"type":"link","label":"Concurrency Models - Async","href":"/computer-science/operating-system/concurrency-models-async","docId":"computer-science/operating-system/concurrency-models-async","unlisted":false},{"type":"link","label":"Concurrency Problems","href":"/computer-science/operating-system/concurrency-problems","docId":"computer-science/operating-system/concurrency-problems","unlisted":false},{"type":"link","label":"Concurrency / Threading","href":"/computer-science/operating-system/concurrency-threading","docId":"computer-science/operating-system/concurrency-threading","unlisted":false},{"type":"link","label":"Coroutines","href":"/computer-science/operating-system/coroutines","docId":"computer-science/operating-system/coroutines","unlisted":false},{"type":"link","label":"CPU | GPU | TPU","href":"/computer-science/operating-system/cpu-gpu-tpu","docId":"computer-science/operating-system/cpu-gpu-tpu","unlisted":false},{"type":"link","label":"Disk IO","href":"/computer-science/operating-system/disk-io","docId":"computer-science/operating-system/disk-io","unlisted":false},{"type":"link","label":"DRAM","href":"/computer-science/operating-system/dram","docId":"computer-science/operating-system/dram","unlisted":false},{"type":"link","label":"Intro","href":"/computer-science/operating-system/intro","docId":"computer-science/operating-system/intro","unlisted":false},{"type":"link","label":"Journaling File System","href":"/computer-science/operating-system/journaling-file-system","docId":"computer-science/operating-system/journaling-file-system","unlisted":false},{"type":"link","label":"Memory Allocation","href":"/computer-science/operating-system/memory-allocation","docId":"computer-science/operating-system/memory-allocation","unlisted":false},{"type":"link","label":"Memory Layout","href":"/computer-science/operating-system/memory-layout","docId":"computer-science/operating-system/memory-layout","unlisted":false},{"type":"link","label":"Memory Mapping mmap","href":"/computer-science/operating-system/memory-mapping-mmap","docId":"computer-science/operating-system/memory-mapping-mmap","unlisted":false},{"type":"link","label":"Memory","href":"/computer-science/operating-system/memory","docId":"computer-science/operating-system/memory","unlisted":false},{"type":"link","label":"Microprocessor","href":"/computer-science/operating-system/microprocessor","docId":"computer-science/operating-system/microprocessor","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/operating-system/others","docId":"computer-science/operating-system/others","unlisted":false},{"type":"link","label":"Parallel Processing","href":"/computer-science/operating-system/parallel-processing","docId":"computer-science/operating-system/parallel-processing","unlisted":false},{"type":"link","label":"RAID","href":"/computer-science/operating-system/raid","docId":"computer-science/operating-system/raid","unlisted":false},{"type":"link","label":"Scheduling","href":"/computer-science/operating-system/scheduling","docId":"computer-science/operating-system/scheduling","unlisted":false},{"type":"link","label":"Swap / Paging / Caching","href":"/computer-science/operating-system/swap-paging-caching","docId":"computer-science/operating-system/swap-paging-caching","unlisted":false},{"type":"link","label":"Unix / Linux File System","href":"/computer-science/operating-system/unix-linux-file-system","docId":"computer-science/operating-system/unix-linux-file-system","unlisted":false},{"type":"link","label":"Unix / Linux","href":"/computer-science/operating-system/unix-linux","docId":"computer-science/operating-system/unix-linux","unlisted":false},{"type":"link","label":"Write Ahead Log, WAL","href":"/computer-science/operating-system/write-ahead-log-wal","docId":"computer-science/operating-system/write-ahead-log-wal","unlisted":false}],"href":"/computer-science/operating-system/"},{"type":"category","label":"Others","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"BioInformatics/BioTechnology","href":"/computer-science/others/bioinformatics-biotechnology","docId":"computer-science/others/bioinformatics-biotechnology","unlisted":false},{"type":"link","label":"Computer Graphics","href":"/computer-science/others/computer-graphics","docId":"computer-science/others/computer-graphics","unlisted":false},{"type":"link","label":"Digital Circuits","href":"/computer-science/others/digital-circuits","docId":"computer-science/others/digital-circuits","unlisted":false},{"type":"link","label":"Game Development","href":"/computer-science/others/game-development","docId":"computer-science/others/game-development","unlisted":false},{"type":"link","label":"Gamification","href":"/computer-science/others/gamification","docId":"computer-science/others/gamification","unlisted":false},{"type":"link","label":"Other","href":"/computer-science/others/other","docId":"computer-science/others/other","unlisted":false},{"type":"link","label":"Tech Books","href":"/computer-science/others/tech-books","docId":"computer-science/others/tech-books","unlisted":false}],"href":"/computer-science/others/"},{"type":"category","label":"Programming Concepts","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Cohesion and Coupling","href":"/computer-science/programming-concepts/cohesion-and-coupling","docId":"computer-science/programming-concepts/cohesion-and-coupling","unlisted":false},{"type":"link","label":"Dependency Injection","href":"/computer-science/programming-concepts/dependency-injection","docId":"computer-science/programming-concepts/dependency-injection","unlisted":false},{"type":"link","label":"Inversion of Control","href":"/computer-science/programming-concepts/inversion-of-control","docId":"computer-science/programming-concepts/inversion-of-control","unlisted":false},{"type":"link","label":"Marshalling","href":"/computer-science/programming-concepts/marshalling","docId":"computer-science/programming-concepts/marshalling","unlisted":false},{"type":"link","label":"Metaprogramming","href":"/computer-science/programming-concepts/metaprogramming","docId":"computer-science/programming-concepts/metaprogramming","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/programming-concepts/others","docId":"computer-science/programming-concepts/others","unlisted":false},{"type":"link","label":"Programming Styles","href":"/computer-science/programming-concepts/programming-styles","docId":"computer-science/programming-concepts/programming-styles","unlisted":false},{"type":"link","label":"Type Introspection and Reflection","href":"/computer-science/programming-concepts/type-introspection-and-reflection","docId":"computer-science/programming-concepts/type-introspection-and-reflection","unlisted":false},{"type":"link","label":"Type Systems","href":"/computer-science/programming-concepts/type-systems","docId":"computer-science/programming-concepts/type-systems","unlisted":false}],"href":"/computer-science/programming-concepts/"},{"type":"category","label":"Programming Paradigms","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architectural - MVVM","href":"/computer-science/programming-paradigms/architectural-mvvm","docId":"computer-science/programming-paradigms/architectural-mvvm","unlisted":false},{"type":"link","label":"Behavioral - Chain of Responsibility","href":"/computer-science/programming-paradigms/behavioral-chain-of-responsibility","docId":"computer-science/programming-paradigms/behavioral-chain-of-responsibility","unlisted":false},{"type":"link","label":"Behavioral - Iterator","href":"/computer-science/programming-paradigms/behavioral-iterator","docId":"computer-science/programming-paradigms/behavioral-iterator","unlisted":false},{"type":"link","label":"Behavioral - Mediator","href":"/computer-science/programming-paradigms/behavioral-mediator","docId":"computer-science/programming-paradigms/behavioral-mediator","unlisted":false},{"type":"link","label":"Behavioral - Memento","href":"/computer-science/programming-paradigms/behavioral-memento","docId":"computer-science/programming-paradigms/behavioral-memento","unlisted":false},{"type":"link","label":"Behavioral - Observer","href":"/computer-science/programming-paradigms/behavioral-observer","docId":"computer-science/programming-paradigms/behavioral-observer","unlisted":false},{"type":"link","label":"Behavioral - Publisher Subscriber","href":"/computer-science/programming-paradigms/behavioral-publisher-subscriber","docId":"computer-science/programming-paradigms/behavioral-publisher-subscriber","unlisted":false},{"type":"link","label":"Behavioral - State","href":"/computer-science/programming-paradigms/behavioral-state","docId":"computer-science/programming-paradigms/behavioral-state","unlisted":false},{"type":"link","label":"Behavioral - Strategy","href":"/computer-science/programming-paradigms/behavioral-strategy","docId":"computer-science/programming-paradigms/behavioral-strategy","unlisted":false},{"type":"link","label":"Concurrency - Reactor","href":"/computer-science/programming-paradigms/concurrency-reactor","docId":"computer-science/programming-paradigms/concurrency-reactor","unlisted":false},{"type":"link","label":"Creational - Abstract Factory","href":"/computer-science/programming-paradigms/creational-abstract-factory","docId":"computer-science/programming-paradigms/creational-abstract-factory","unlisted":false},{"type":"link","label":"Creational - Object Pool","href":"/computer-science/programming-paradigms/creational-object-pool","docId":"computer-science/programming-paradigms/creational-object-pool","unlisted":false},{"type":"link","label":"Design Patterns","href":"/computer-science/programming-paradigms/design-patterns","docId":"computer-science/programming-paradigms/design-patterns","unlisted":false},{"type":"link","label":"Functional Programming","href":"/computer-science/programming-paradigms/functional-programming","docId":"computer-science/programming-paradigms/functional-programming","unlisted":false},{"type":"link","label":"OOPS / SOLID","href":"/computer-science/programming-paradigms/oops-solid","docId":"computer-science/programming-paradigms/oops-solid","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/programming-paradigms/others","docId":"computer-science/programming-paradigms/others","unlisted":false},{"type":"link","label":"Structural - Adapter","href":"/computer-science/programming-paradigms/structural-adapter","docId":"computer-science/programming-paradigms/structural-adapter","unlisted":false},{"type":"link","label":"Structural - Bridge","href":"/computer-science/programming-paradigms/structural-bridge","docId":"computer-science/programming-paradigms/structural-bridge","unlisted":false},{"type":"link","label":"Structural - Decorator","href":"/computer-science/programming-paradigms/structural-decorator","docId":"computer-science/programming-paradigms/structural-decorator","unlisted":false},{"type":"link","label":"Structural - Facade","href":"/computer-science/programming-paradigms/structural-facade","docId":"computer-science/programming-paradigms/structural-facade","unlisted":false},{"type":"link","label":"Structural - Proxy","href":"/computer-science/programming-paradigms/structural-proxy","docId":"computer-science/programming-paradigms/structural-proxy","unlisted":false},{"type":"link","label":"Types of programming paradigm","href":"/computer-science/programming-paradigms/types-of-programming-paradigm","docId":"computer-science/programming-paradigms/types-of-programming-paradigm","unlisted":false}],"href":"/computer-science/programming-paradigms/"},{"type":"category","label":"Security","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Attacks","href":"/computer-science/security/attacks","docId":"computer-science/security/attacks","unlisted":false},{"type":"category","label":"Authentication","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Certificates","href":"/computer-science/security/authentication/certificates","docId":"computer-science/security/authentication/certificates","unlisted":false},{"type":"link","label":"HTTP Authentication","href":"/computer-science/security/authentication/http-authentication","docId":"computer-science/security/authentication/http-authentication","unlisted":false},{"type":"link","label":"Authentication","href":"/computer-science/security/authentication/intro","docId":"computer-science/security/authentication/intro","unlisted":false},{"type":"link","label":"JWT","href":"/computer-science/security/authentication/jwt","docId":"computer-science/security/authentication/jwt","unlisted":false},{"type":"link","label":"OAuth","href":"/computer-science/security/authentication/oauth","docId":"computer-science/security/authentication/oauth","unlisted":false},{"type":"link","label":"OpenID","href":"/computer-science/security/authentication/openid","docId":"computer-science/security/authentication/openid","unlisted":false},{"type":"link","label":"SIEM","href":"/computer-science/security/authentication/siem","docId":"computer-science/security/authentication/siem","unlisted":false},{"type":"link","label":"2FA / 2-Factor Authentication","href":"/computer-science/security/authentication/two-2fa","docId":"computer-science/security/authentication/two-2fa","unlisted":false}],"href":"/computer-science/security/authentication/"},{"type":"link","label":"Concepts","href":"/computer-science/security/concepts","docId":"computer-science/security/concepts","unlisted":false},{"type":"category","label":"Cryptography","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Cryptographic Algorithms","href":"/computer-science/security/cryptography/cryptographic-algorithms","docId":"computer-science/security/cryptography/cryptographic-algorithms","unlisted":false},{"type":"link","label":"Cryptographic Hash Functions","href":"/computer-science/security/cryptography/cryptographic-hash-functions","docId":"computer-science/security/cryptography/cryptographic-hash-functions","unlisted":false},{"type":"link","label":"Cryptography Terms","href":"/computer-science/security/cryptography/cryptography-terms","docId":"computer-science/security/cryptography/cryptography-terms","unlisted":false},{"type":"link","label":"Diffie-Hellman Key Exchange","href":"/computer-science/security/cryptography/diffie-hellman-key-exchange","docId":"computer-science/security/cryptography/diffie-hellman-key-exchange","unlisted":false},{"type":"link","label":"Hash Function Design","href":"/computer-science/security/cryptography/hash-function-design","docId":"computer-science/security/cryptography/hash-function-design","unlisted":false},{"type":"link","label":"Cryptography","href":"/computer-science/security/cryptography/intro","docId":"computer-science/security/cryptography/intro","unlisted":false},{"type":"link","label":"Post Quantum Cryptography","href":"/computer-science/security/cryptography/post-quantum-cryptography","docId":"computer-science/security/cryptography/post-quantum-cryptography","unlisted":false},{"type":"link","label":"Public-key cryptography","href":"/computer-science/security/cryptography/public-key-cryptography","docId":"computer-science/security/cryptography/public-key-cryptography","unlisted":false}],"href":"/computer-science/security/cryptography/"},{"type":"link","label":"Ethical Hacking","href":"/computer-science/security/ethical-hacking","docId":"computer-science/security/ethical-hacking","unlisted":false},{"type":"link","label":"Firewall WAF","href":"/computer-science/security/firewall-waf","docId":"computer-science/security/firewall-waf","unlisted":false},{"type":"link","label":"Improving Security Posture","href":"/computer-science/security/improving-security-posture","docId":"computer-science/security/improving-security-posture","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/security/others","docId":"computer-science/security/others","unlisted":false},{"type":"link","label":"Systems Protection","href":"/computer-science/security/systems-protection","docId":"computer-science/security/systems-protection","unlisted":false},{"type":"link","label":"Tools","href":"/computer-science/security/tools","docId":"computer-science/security/tools","unlisted":false},{"type":"link","label":"Vault","href":"/computer-science/security/vault","docId":"computer-science/security/vault","unlisted":false},{"type":"link","label":"Vulnerabilities","href":"/computer-science/security/vulnerabilities","docId":"computer-science/security/vulnerabilities","unlisted":false}],"href":"/computer-science/security/"},{"type":"category","label":"Software Engineering","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Change Management","href":"/computer-science/software-engineering/change-management","docId":"computer-science/software-engineering/change-management","unlisted":false},{"type":"link","label":"Code Smell","href":"/computer-science/software-engineering/code-smell","docId":"computer-science/software-engineering/code-smell","unlisted":false},{"type":"link","label":"Coding Guidelines / Code Reviews / Clean Code","href":"/computer-science/software-engineering/coding-guidelines-code-reviews-clean-code","docId":"computer-science/software-engineering/coding-guidelines-code-reviews-clean-code","unlisted":false},{"type":"link","label":"Software Complexity","href":"/computer-science/software-engineering/complexity","docId":"computer-science/software-engineering/complexity","unlisted":false},{"type":"link","label":"Developer Roles","href":"/computer-science/software-engineering/developer-roles","docId":"computer-science/software-engineering/developer-roles","unlisted":false},{"type":"link","label":"Development Approaches","href":"/computer-science/software-engineering/development-approaches","docId":"computer-science/software-engineering/development-approaches","unlisted":false},{"type":"link","label":"Software Engineering","href":"/computer-science/software-engineering/intro","docId":"computer-science/software-engineering/intro","unlisted":false},{"type":"link","label":"Modeling Language","href":"/computer-science/software-engineering/modeling-languages","docId":"computer-science/software-engineering/modeling-languages","unlisted":false},{"type":"link","label":"Principles of sofware design","href":"/computer-science/software-engineering/principles","docId":"computer-science/software-engineering/principles","unlisted":false},{"type":"link","label":"Refactoring","href":"/computer-science/software-engineering/refactoring","docId":"computer-science/software-engineering/refactoring","unlisted":false},{"type":"link","label":"Static Code Analysis","href":"/computer-science/software-engineering/static-code-analysis","docId":"computer-science/software-engineering/static-code-analysis","unlisted":false},{"type":"link","label":"Technical Debt","href":"/computer-science/software-engineering/technical-debt","docId":"computer-science/software-engineering/technical-debt","unlisted":false},{"type":"link","label":"Types of code","href":"/computer-science/software-engineering/types-of-code","docId":"computer-science/software-engineering/types-of-code","unlisted":false}],"href":"/computer-science/software-engineering/"},{"type":"category","label":"System Design","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Addressing Failures","href":"/computer-science/system-design/addressing-failures","docId":"computer-science/system-design/addressing-failures","unlisted":false},{"type":"link","label":"API Gateway","href":"/computer-science/system-design/api-gateway","docId":"computer-science/system-design/api-gateway","unlisted":false},{"type":"link","label":"Architecture Guide","href":"/computer-science/system-design/architecture-guide","docId":"computer-science/system-design/architecture-guide","unlisted":false},{"type":"link","label":"Cloud Native","href":"/computer-science/system-design/cloud-native","docId":"computer-science/system-design/cloud-native","unlisted":false},{"type":"link","label":"Enterprise Integration Patterns","href":"/computer-science/system-design/enterprise-integration-patterns","docId":"computer-science/system-design/enterprise-integration-patterns","unlisted":false},{"type":"link","label":"Event driven architecture","href":"/computer-science/system-design/event-driven-architecture","docId":"computer-science/system-design/event-driven-architecture","unlisted":false},{"type":"link","label":"Intro","href":"/computer-science/system-design/intro","docId":"computer-science/system-design/intro","unlisted":false},{"type":"link","label":"Message Oriented Architecture (MOM)","href":"/computer-science/system-design/message-oriented-architecture-mom","docId":"computer-science/system-design/message-oriented-architecture-mom","unlisted":false},{"type":"link","label":"Message Queues","href":"/computer-science/system-design/message-queues","docId":"computer-science/system-design/message-queues","unlisted":false},{"type":"category","label":"Microservice Architecture","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Design Patterns","href":"/computer-science/system-design/microservice-architecture/design-patterns","docId":"computer-science/system-design/microservice-architecture/design-patterns","unlisted":false},{"type":"link","label":"Domain Driven Design","href":"/computer-science/system-design/microservice-architecture/domain-driven-design","docId":"computer-science/system-design/microservice-architecture/domain-driven-design","unlisted":false},{"type":"link","label":"Example","href":"/computer-science/system-design/microservice-architecture/example","docId":"computer-science/system-design/microservice-architecture/example","unlisted":false},{"type":"link","label":"Microservice Architecture","href":"/computer-science/system-design/microservice-architecture/intro","docId":"computer-science/system-design/microservice-architecture/intro","unlisted":false}],"href":"/computer-science/system-design/microservice-architecture/"},{"type":"link","label":"N-Tier Application Architecture","href":"/computer-science/system-design/n-tier-application-architecture","docId":"computer-science/system-design/n-tier-application-architecture","unlisted":false},{"type":"link","label":"Others","href":"/computer-science/system-design/others","docId":"computer-science/system-design/others","unlisted":false},{"type":"link","label":"Rate Limiting","href":"/computer-science/system-design/rate-limiting","docId":"computer-science/system-design/rate-limiting","unlisted":false},{"type":"link","label":"Reactive Microservices / Manifesto","href":"/computer-science/system-design/reactive-microservices-manifesto","docId":"computer-science/system-design/reactive-microservices-manifesto","unlisted":false},{"type":"link","label":"Retries","href":"/computer-science/system-design/retries","docId":"computer-science/system-design/retries","unlisted":false},{"type":"link","label":"Serverless Architecture","href":"/computer-science/system-design/serverless-architecture","docId":"computer-science/system-design/serverless-architecture","unlisted":false},{"type":"link","label":"Trade offs","href":"/computer-science/system-design/trade-offs","docId":"computer-science/system-design/trade-offs","unlisted":false},{"type":"link","label":"Twelve-Factor App","href":"/computer-science/system-design/twelve-factor-app","docId":"computer-science/system-design/twelve-factor-app","unlisted":false}],"href":"/computer-science/system-design/"},{"type":"category","label":"Testing","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Checkov","href":"/computer-science/testing/checkov","docId":"computer-science/testing/checkov","unlisted":false},{"type":"link","label":"Intro","href":"/computer-science/testing/intro","docId":"computer-science/testing/intro","unlisted":false},{"type":"link","label":"iperf3 Testing","href":"/computer-science/testing/iperf3-testing","docId":"computer-science/testing/iperf3-testing","unlisted":false},{"type":"link","label":"Load / Performance Testing/QA Tools","href":"/computer-science/testing/load-performance-testing-qa-tools","docId":"computer-science/testing/load-performance-testing-qa-tools","unlisted":false},{"type":"link","label":"Mocking","href":"/computer-science/testing/mocking","docId":"computer-science/testing/mocking","unlisted":false},{"type":"link","label":"Postman","href":"/computer-science/testing/postman","docId":"computer-science/testing/postman","unlisted":false},{"type":"link","label":"Selenium","href":"/computer-science/testing/selenium","docId":"computer-science/testing/selenium","unlisted":false},{"type":"link","label":"Terms","href":"/computer-science/testing/terms","docId":"computer-science/testing/terms","unlisted":false},{"type":"link","label":"Test Pyramid","href":"/computer-science/testing/test-pyramid","docId":"computer-science/testing/test-pyramid","unlisted":false},{"type":"link","label":"Tools","href":"/computer-science/testing/tools","docId":"computer-science/testing/tools","unlisted":false}],"href":"/computer-science/testing/"}],"href":"/computer-science/"},{"type":"category","label":"Courses / Certifications","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"365 Data Science Program","href":"/courses/365-data-science-program","docId":"courses/365-data-science-program","unlisted":false},{"type":"link","label":"365 DS - Advanced Stastistical Methods in Python","href":"/courses/365-ds-advanced-stastistical-methods-in-python","docId":"courses/365-ds-advanced-stastistical-methods-in-python","unlisted":false},{"type":"link","label":"365 DS - Mathematics","href":"/courses/365-ds-mathematics","docId":"courses/365-ds-mathematics","unlisted":false},{"type":"link","label":"AWS Certified Data Engineer - Associate Questions","href":"/courses/aws-certified-data-engineer-associate-questions","docId":"courses/aws-certified-data-engineer-associate-questions","unlisted":false},{"type":"link","label":"AWS Certified Data Engineer - Associate","href":"/courses/aws-certified-data-engineer-associate","docId":"courses/aws-certified-data-engineer-associate","unlisted":false},{"type":"link","label":"AWS Certified Developer Associate","href":"/courses/aws-certified-developer-associate","docId":"courses/aws-certified-developer-associate","unlisted":false},{"type":"link","label":"Course - Art and Science of ML","href":"/courses/course-art-and-science-of-ml","docId":"courses/course-art-and-science-of-ml","unlisted":false},{"type":"link","label":"Course - Big Data Computing - NPTEL","href":"/courses/course-big-data-computing-nptel","docId":"courses/course-big-data-computing-nptel","unlisted":false},{"type":"category","label":"course-credit-risk-modeling","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Credit & Debt","href":"/courses/course-credit-risk-modeling/credit-and-debt","docId":"courses/course-credit-risk-modeling/credit-and-debt","unlisted":false},{"type":"link","label":"Decision Areas & Credit Scorecards","href":"/courses/course-credit-risk-modeling/decision-areas-and-credit-scorecards","docId":"courses/course-credit-risk-modeling/decision-areas-and-credit-scorecards","unlisted":false},{"type":"link","label":"Fraud Detection and Prevention","href":"/courses/course-credit-risk-modeling/fraud-detection-and-prevention","docId":"courses/course-credit-risk-modeling/fraud-detection-and-prevention","unlisted":false},{"type":"link","label":"Fraud Features","href":"/courses/course-credit-risk-modeling/fraud-features","docId":"courses/course-credit-risk-modeling/fraud-features","unlisted":false},{"type":"link","label":"Fraud Types","href":"/courses/course-credit-risk-modeling/fraud-types","docId":"courses/course-credit-risk-modeling/fraud-types","unlisted":false},{"type":"link","label":"Intro","href":"/courses/course-credit-risk-modeling/intro","docId":"courses/course-credit-risk-modeling/intro","unlisted":false},{"type":"link","label":"Course - Credit Risk Modeling","href":"/courses/course-credit-risk-modeling/syllabus","docId":"courses/course-credit-risk-modeling/syllabus","unlisted":false}]},{"type":"link","label":"Course - Data Mining NPTEL","href":"/courses/course-data-mining-nptel","docId":"courses/course-data-mining-nptel","unlisted":false},{"type":"link","label":"Course - Data Storage and Processing - edX","href":"/courses/course-data-storage-and-processing-edx","docId":"courses/course-data-storage-and-processing-edx","unlisted":false},{"type":"link","label":"Course - Feature Engineering","href":"/courses/course-feature-engineering","docId":"courses/course-feature-engineering","unlisted":false},{"type":"link","label":"Course - Intro to Data and Data Science","href":"/courses/course-intro-to-data-and-data-science","docId":"courses/course-intro-to-data-and-data-science","unlisted":false},{"type":"link","label":"Course - Intro to TensorFlow","href":"/courses/course-intro-to-tensorflow","docId":"courses/course-intro-to-tensorflow","unlisted":false},{"type":"link","label":"Course - Launching into ML","href":"/courses/course-launching-into-ml","docId":"courses/course-launching-into-ml","unlisted":false},{"type":"category","label":"course-time-series-analysis","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Exponential Smoothing","href":"/courses/course-time-series-analysis/exponential-smoothing","docId":"courses/course-time-series-analysis/exponential-smoothing","unlisted":false},{"type":"link","label":"Intro - Time Series","href":"/courses/course-time-series-analysis/intro-time-series","docId":"courses/course-time-series-analysis/intro-time-series","unlisted":false},{"type":"link","label":"Course - Time Series Analysis","href":"/courses/course-time-series-analysis/syllabus","docId":"courses/course-time-series-analysis/syllabus","unlisted":false},{"type":"link","label":"Time-Series Modeling","href":"/courses/course-time-series-analysis/time-series-modeling","docId":"courses/course-time-series-analysis/time-series-modeling","unlisted":false}]},{"type":"link","label":"Coursera - Algorithms Part - 1","href":"/courses/coursera-algorithms-part-1","docId":"courses/coursera-algorithms-part-1","unlisted":false},{"type":"link","label":"Coursera - Algorithms Part - 2","href":"/courses/coursera-algorithms-part-2","docId":"courses/coursera-algorithms-part-2","unlisted":false},{"type":"link","label":"Coursera - How Google does ML","href":"/courses/coursera-how-google-does-ml","docId":"courses/coursera-how-google-does-ml","unlisted":false},{"type":"category","label":"customer-analytics-in-python","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Intro","href":"/courses/customer-analytics-in-python/intro","docId":"courses/customer-analytics-in-python/intro","unlisted":false},{"type":"link","label":"Customer Analytics in Python","href":"/courses/customer-analytics-in-python/syllabus","docId":"courses/customer-analytics-in-python/syllabus","unlisted":false}]},{"type":"link","label":"Data Integration Specialist - AWS","href":"/courses/data-integration-specialist-aws","docId":"courses/data-integration-specialist-aws","unlisted":false},{"type":"link","label":"Google Professional Cloud Architect (PCA)","href":"/courses/google-professional-cloud-architect-pca","docId":"courses/google-professional-cloud-architect-pca","unlisted":false},{"type":"link","label":"Google Professional Data Engineer (PDE)","href":"/courses/google-professional-data-engineer-pde","docId":"courses/google-professional-data-engineer-pde","unlisted":false},{"type":"link","label":"Microsoft Excel / Google Sheets","href":"/courses/microsoft-excel-google-sheets","docId":"courses/microsoft-excel-google-sheets","unlisted":false},{"type":"link","label":"Mordern Algorithm Design","href":"/courses/mordern-algorithm-design","docId":"courses/mordern-algorithm-design","unlisted":false},{"type":"link","label":"Nutanix Hybrid Cloud","href":"/courses/nutanix-hybrid-cloud","docId":"courses/nutanix-hybrid-cloud","unlisted":false},{"type":"link","label":"SE Radio","href":"/courses/se-radio","docId":"courses/se-radio","unlisted":false},{"type":"link","label":"Self-Driving Nanodegree","href":"/courses/self-driving-nanodegree","docId":"courses/self-driving-nanodegree","unlisted":false},{"type":"link","label":"Udemy - Becoming a Production MySQL DBA","href":"/courses/udemy-becoming-a-production-mysql-dba","docId":"courses/udemy-becoming-a-production-mysql-dba","unlisted":false},{"type":"link","label":"Udemy - Python for data structures algorithms","href":"/courses/udemy-python-for-data-structures-algorithms","docId":"courses/udemy-python-for-data-structures-algorithms","unlisted":false}],"href":"/courses/"},{"type":"category","label":"Data Structures","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"General","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Disjoint-Set Data Structure","href":"/data-structures/general/disjoint-set-data-structure","docId":"data-structures/general/disjoint-set-data-structure","unlisted":false},{"type":"link","label":"DS Intro","href":"/data-structures/general/ds-intro","docId":"data-structures/general/ds-intro","unlisted":false},{"type":"link","label":"Elementary Symbol Tables","href":"/data-structures/general/elementary-symbol-tables","docId":"data-structures/general/elementary-symbol-tables","unlisted":false},{"type":"link","label":"Endianness","href":"/data-structures/general/endianness","docId":"data-structures/general/endianness","unlisted":false},{"type":"link","label":"Mutable/Immutable Data Structures","href":"/data-structures/general/mutable-immutable-data-structures","docId":"data-structures/general/mutable-immutable-data-structures","unlisted":false}],"href":"/data-structures/general/"},{"type":"category","label":"Graph","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Adjacency List","href":"/data-structures/graph/adjacency-list","docId":"data-structures/graph/adjacency-list","unlisted":false},{"type":"link","label":"Adjacency Matrix","href":"/data-structures/graph/adjacency-matrix","docId":"data-structures/graph/adjacency-matrix","unlisted":false},{"type":"link","label":"Digraphs (Directed Graphs)","href":"/data-structures/graph/digraphs-directed-graphs","docId":"data-structures/graph/digraphs-directed-graphs","unlisted":false},{"type":"link","label":"Implementation","href":"/data-structures/graph/implementation","docId":"data-structures/graph/implementation","unlisted":false},{"type":"link","label":"Intro","href":"/data-structures/graph/intro","docId":"data-structures/graph/intro","unlisted":false},{"type":"link","label":"Questions","href":"/data-structures/graph/questions","docId":"data-structures/graph/questions","unlisted":false},{"type":"link","label":"Undirected Graph","href":"/data-structures/graph/undirected-graph","docId":"data-structures/graph/undirected-graph","unlisted":false}],"href":"/data-structures/graph/"},{"type":"category","label":"HashTable","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Bloom Filters","href":"/data-structures/hashtable/bloom-filters","docId":"data-structures/hashtable/bloom-filters","unlisted":false},{"type":"link","label":"Chord","href":"/data-structures/hashtable/chord","docId":"data-structures/hashtable/chord","unlisted":false},{"type":"link","label":"Count-min Sketch","href":"/data-structures/hashtable/count-min-sketch","docId":"data-structures/hashtable/count-min-sketch","unlisted":false},{"type":"link","label":"DHT - Distributed Hash Tables","href":"/data-structures/hashtable/dht-distributed-hash-tables","docId":"data-structures/hashtable/dht-distributed-hash-tables","unlisted":false},{"type":"link","label":"Dictionaries","href":"/data-structures/hashtable/dictionaries","docId":"data-structures/hashtable/dictionaries","unlisted":false},{"type":"link","label":"Hash Functions","href":"/data-structures/hashtable/hash-functions","docId":"data-structures/hashtable/hash-functions","unlisted":false},{"type":"link","label":"Hash Tables","href":"/data-structures/hashtable/hash-tables","docId":"data-structures/hashtable/hash-tables","unlisted":false},{"type":"link","label":"Hashing Techniques","href":"/data-structures/hashtable/hashing-techniques","docId":"data-structures/hashtable/hashing-techniques","unlisted":false},{"type":"link","label":"Hashing","href":"/data-structures/hashtable/hashing","docId":"data-structures/hashtable/hashing","unlisted":false},{"type":"link","label":"HyperLogLog","href":"/data-structures/hashtable/hyperloglog","docId":"data-structures/hashtable/hyperloglog","unlisted":false},{"type":"link","label":"Kademlia","href":"/data-structures/hashtable/kademlia","docId":"data-structures/hashtable/kademlia","unlisted":false},{"type":"link","label":"List of Hash Functions","href":"/data-structures/hashtable/list-of-hash-functions","docId":"data-structures/hashtable/list-of-hash-functions","unlisted":false},{"type":"link","label":"Merkle Trees","href":"/data-structures/hashtable/merkle-trees","docId":"data-structures/hashtable/merkle-trees","unlisted":false},{"type":"link","label":"Probabilistic Data Structure","href":"/data-structures/hashtable/probabilistic-data-structure","docId":"data-structures/hashtable/probabilistic-data-structure","unlisted":false},{"type":"link","label":"Questions","href":"/data-structures/hashtable/questions","docId":"data-structures/hashtable/questions","unlisted":false},{"type":"link","label":"Verkle Trees","href":"/data-structures/hashtable/verkle-trees","docId":"data-structures/hashtable/verkle-trees","unlisted":false}],"href":"/data-structures/hashtable/"},{"type":"category","label":"Hierarchical Data Structure","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"2-3 Search Trees","href":"/data-structures/hierarchical-data-structure/2-3-search-trees","docId":"data-structures/hierarchical-data-structure/2-3-search-trees","unlisted":false},{"type":"link","label":"AVL Tree","href":"/data-structures/hierarchical-data-structure/avl-tree","docId":"data-structures/hierarchical-data-structure/avl-tree","unlisted":false},{"type":"link","label":"B-Tree","href":"/data-structures/hierarchical-data-structure/b-tree","docId":"data-structures/hierarchical-data-structure/b-tree","unlisted":false},{"type":"link","label":"Beap (Bi-Parental Heap)","href":"/data-structures/hierarchical-data-structure/beap-bi-parental-heap","docId":"data-structures/hierarchical-data-structure/beap-bi-parental-heap","unlisted":false},{"type":"link","label":"Binary Heap","href":"/data-structures/hierarchical-data-structure/binary-heap","docId":"data-structures/hierarchical-data-structure/binary-heap","unlisted":false},{"type":"link","label":"Binary Search Tree","href":"/data-structures/hierarchical-data-structure/binary-search-tree","docId":"data-structures/hierarchical-data-structure/binary-search-tree","unlisted":false},{"type":"link","label":"Binary Tree","href":"/data-structures/hierarchical-data-structure/binary-tree","docId":"data-structures/hierarchical-data-structure/binary-tree","unlisted":false},{"type":"link","label":"Binomial Heap","href":"/data-structures/hierarchical-data-structure/binomial-heap","docId":"data-structures/hierarchical-data-structure/binomial-heap","unlisted":false},{"type":"link","label":"Fibonacci Heap","href":"/data-structures/hierarchical-data-structure/fibonacci-heap","docId":"data-structures/hierarchical-data-structure/fibonacci-heap","unlisted":false},{"type":"link","label":"Interval Search Tree","href":"/data-structures/hierarchical-data-structure/interval-search-tree","docId":"data-structures/hierarchical-data-structure/interval-search-tree","unlisted":false},{"type":"link","label":"k-ary heap / d-ary heap / d-way heap","href":"/data-structures/hierarchical-data-structure/k-ary-heap-d-ary-heap-d-way-heap","docId":"data-structures/hierarchical-data-structure/k-ary-heap-d-ary-heap-d-way-heap","unlisted":false},{"type":"link","label":"Kd-trees","href":"/data-structures/hierarchical-data-structure/kd-trees","docId":"data-structures/hierarchical-data-structure/kd-trees","unlisted":false},{"type":"link","label":"Left Leaning Red-Black BSTs (LLRB tree)","href":"/data-structures/hierarchical-data-structure/left-leaning-red-black-bsts-llrb-tree","docId":"data-structures/hierarchical-data-structure/left-leaning-red-black-bsts-llrb-tree","unlisted":false},{"type":"link","label":"Problems","href":"/data-structures/hierarchical-data-structure/problems","docId":"data-structures/hierarchical-data-structure/problems","unlisted":false},{"type":"link","label":"Segment Tree","href":"/data-structures/hierarchical-data-structure/segment-tree","docId":"data-structures/hierarchical-data-structure/segment-tree","unlisted":false},{"type":"link","label":"Space-partitioning trees","href":"/data-structures/hierarchical-data-structure/space-partitioning-trees","docId":"data-structures/hierarchical-data-structure/space-partitioning-trees","unlisted":false},{"type":"link","label":"Tree DS","href":"/data-structures/hierarchical-data-structure/tree-ds","docId":"data-structures/hierarchical-data-structure/tree-ds","unlisted":false}],"href":"/data-structures/hierarchical-data-structure/"},{"type":"category","label":"Linear Data Structure","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Array","href":"/data-structures/linear-data-structure/array","docId":"data-structures/linear-data-structure/array","unlisted":false},{"type":"link","label":"Bag Data Structure","href":"/data-structures/linear-data-structure/bag-data-structure","docId":"data-structures/linear-data-structure/bag-data-structure","unlisted":false},{"type":"link","label":"Circular Buffer","href":"/data-structures/linear-data-structure/circular-buffer","docId":"data-structures/linear-data-structure/circular-buffer","unlisted":false},{"type":"link","label":"Dequeue","href":"/data-structures/linear-data-structure/dequeue","docId":"data-structures/linear-data-structure/dequeue","unlisted":false},{"type":"link","label":"Indexed Priority Queue","href":"/data-structures/linear-data-structure/indexed-priority-queue","docId":"data-structures/linear-data-structure/indexed-priority-queue","unlisted":false},{"type":"link","label":"Linked List","href":"/data-structures/linear-data-structure/linked-list","docId":"data-structures/linear-data-structure/linked-list","unlisted":false},{"type":"link","label":"Priority Queue","href":"/data-structures/linear-data-structure/priority-queue","docId":"data-structures/linear-data-structure/priority-queue","unlisted":false},{"type":"link","label":"Problems","href":"/data-structures/linear-data-structure/problems","docId":"data-structures/linear-data-structure/problems","unlisted":false},{"type":"link","label":"Queue FIFO","href":"/data-structures/linear-data-structure/queue-fifo","docId":"data-structures/linear-data-structure/queue-fifo","unlisted":false},{"type":"link","label":"Randomized Queue","href":"/data-structures/linear-data-structure/randomized-queue","docId":"data-structures/linear-data-structure/randomized-queue","unlisted":false},{"type":"link","label":"Sets","href":"/data-structures/linear-data-structure/sets","docId":"data-structures/linear-data-structure/sets","unlisted":false},{"type":"link","label":"Skip Lists","href":"/data-structures/linear-data-structure/skip-lists","docId":"data-structures/linear-data-structure/skip-lists","unlisted":false},{"type":"link","label":"Stack LIFO","href":"/data-structures/linear-data-structure/stack-lifo","docId":"data-structures/linear-data-structure/stack-lifo","unlisted":false}],"href":"/data-structures/linear-data-structure/"},{"type":"category","label":"Others","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Bitmap","href":"/data-structures/others/bitmap","docId":"data-structures/others/bitmap","unlisted":false},{"type":"link","label":"Large Objects","href":"/data-structures/others/large-objects","docId":"data-structures/others/large-objects","unlisted":false},{"type":"link","label":"LSM (Log Structured Merge Trees)","href":"/data-structures/others/lsm-log-structured-merge-trees","docId":"data-structures/others/lsm-log-structured-merge-trees","unlisted":false},{"type":"link","label":"SSTables, Sorted String Tables","href":"/data-structures/others/sstables-sorted-string-tables","docId":"data-structures/others/sstables-sorted-string-tables","unlisted":false}],"href":"/data-structures/others/"},{"type":"category","label":"Trie","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Compressed Trie","href":"/data-structures/trie/compressed-trie","docId":"data-structures/trie/compressed-trie","unlisted":false},{"type":"link","label":"Others","href":"/data-structures/trie/others","docId":"data-structures/trie/others","unlisted":false},{"type":"link","label":"Patricia Trie","href":"/data-structures/trie/patricia-trie","docId":"data-structures/trie/patricia-trie","unlisted":false},{"type":"link","label":"Questions","href":"/data-structures/trie/questions","docId":"data-structures/trie/questions","unlisted":false},{"type":"link","label":"R-way Tries","href":"/data-structures/trie/r-way-tries","docId":"data-structures/trie/r-way-tries","unlisted":false},{"type":"link","label":"Standard Trie","href":"/data-structures/trie/standard-trie","docId":"data-structures/trie/standard-trie","unlisted":false},{"type":"link","label":"Suffix Array","href":"/data-structures/trie/suffix-array","docId":"data-structures/trie/suffix-array","unlisted":false},{"type":"link","label":"Suffix Tree","href":"/data-structures/trie/suffix-tree","docId":"data-structures/trie/suffix-tree","unlisted":false},{"type":"link","label":"Ternary Search Tries (TST)","href":"/data-structures/trie/ternary-search-tries-tst","docId":"data-structures/trie/ternary-search-tries-tst","unlisted":false}],"href":"/data-structures/trie/"}],"href":"/data-structures/"},{"type":"category","label":"Databases","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Databases Concepts","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"ACID and BASE","href":"/databases/concepts/acid-and-base","docId":"databases/concepts/acid-and-base","unlisted":false},{"type":"link","label":"amazon-databases","href":"/databases/concepts/amazon-databases","docId":"databases/concepts/amazon-databases","unlisted":false},{"type":"link","label":"Comparisons","href":"/databases/concepts/comparisions","docId":"databases/concepts/comparisions","unlisted":false},{"type":"link","label":"Concurrency Control","href":"/databases/concepts/concurrency-control","docId":"databases/concepts/concurrency-control","unlisted":false},{"type":"link","label":"Core Concepts","href":"/databases/concepts/core-concepts","docId":"databases/concepts/core-concepts","unlisted":false},{"type":"link","label":"Database Workloads","href":"/databases/concepts/database-workloads","docId":"databases/concepts/database-workloads","unlisted":false},{"type":"link","label":"Disk oriented vs in-memory DBs","href":"/databases/concepts/disk-oriented-vs-in-memory-dbs","docId":"databases/concepts/disk-oriented-vs-in-memory-dbs","unlisted":false},{"type":"link","label":"History","href":"/databases/concepts/history","docId":"databases/concepts/history","unlisted":false},{"type":"link","label":"Intro","href":"/databases/concepts/intro","docId":"databases/concepts/intro","unlisted":false},{"type":"link","label":"Isolation Levels","href":"/databases/concepts/isolation-levels","docId":"databases/concepts/isolation-levels","unlisted":false},{"type":"link","label":"MVCC, MultiVersion Concurrency Control","href":"/databases/concepts/mvcc-multiversion-concurrency-control","docId":"databases/concepts/mvcc-multiversion-concurrency-control","unlisted":false},{"type":"link","label":"Others","href":"/databases/concepts/others","docId":"databases/concepts/others","unlisted":false},{"type":"link","label":"RUM Conjecture","href":"/databases/concepts/rum-conjecture","docId":"databases/concepts/rum-conjecture","unlisted":false},{"type":"link","label":"Types of Databases","href":"/databases/concepts/types-of-databases","docId":"databases/concepts/types-of-databases","unlisted":false}],"href":"/databases/concepts/"},{"type":"category","label":"Data Warehousing","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Data Warehousing","href":"/databases/data-warehousing/01-intro","docId":"databases/data-warehousing/01-intro","unlisted":false},{"type":"link","label":"Concepts","href":"/databases/data-warehousing/02-concepts","docId":"databases/data-warehousing/02-concepts","unlisted":false},{"type":"link","label":"Slowly Changing Dimension (SCD)","href":"/databases/data-warehousing/03-slowly-changing-dimension-scd","docId":"databases/data-warehousing/03-slowly-changing-dimension-scd","unlisted":false},{"type":"link","label":"Fact / Dimension Tables","href":"/databases/data-warehousing/04-fact-dimension-tables","docId":"databases/data-warehousing/04-fact-dimension-tables","unlisted":false},{"type":"link","label":"Characteristics","href":"/databases/data-warehousing/05-characteristics","docId":"databases/data-warehousing/05-characteristics","unlisted":false},{"type":"link","label":"Architecture","href":"/databases/data-warehousing/06-architecture","docId":"databases/data-warehousing/06-architecture","unlisted":false},{"type":"link","label":"Warehouse Schemas","href":"/databases/data-warehousing/07-warehouse-schemas","docId":"databases/data-warehousing/07-warehouse-schemas","unlisted":false},{"type":"link","label":"Data Lake","href":"/databases/data-warehousing/08-data-lake","docId":"databases/data-warehousing/08-data-lake","unlisted":false},{"type":"link","label":"Kimball / Inmon Architecture","href":"/databases/data-warehousing/09-kimball-inmon-architecture","docId":"databases/data-warehousing/09-kimball-inmon-architecture","unlisted":false},{"type":"link","label":"Lambda Architecture","href":"/databases/data-warehousing/10-lambda-architecture","docId":"databases/data-warehousing/10-lambda-architecture","unlisted":false},{"type":"link","label":"DW - Databases","href":"/databases/data-warehousing/11-dw-databases","docId":"databases/data-warehousing/11-dw-databases","unlisted":false},{"type":"link","label":"Change Data Capture (CDC)","href":"/databases/data-warehousing/change-data-capture-cdc","docId":"databases/data-warehousing/change-data-capture-cdc","unlisted":false},{"type":"link","label":"Data Engineering","href":"/databases/data-warehousing/data-engineering","docId":"databases/data-warehousing/data-engineering","unlisted":false},{"type":"link","label":"Debezium","href":"/databases/data-warehousing/debezium","docId":"databases/data-warehousing/debezium","unlisted":false},{"type":"link","label":"ETL (Extract Transform Load)","href":"/databases/data-warehousing/etl-extract-transform-load","docId":"databases/data-warehousing/etl-extract-transform-load","unlisted":false},{"type":"link","label":"Master Data Management (MDM)","href":"/databases/data-warehousing/master-data-management-mdm","docId":"databases/data-warehousing/master-data-management-mdm","unlisted":false},{"type":"link","label":"Tools","href":"/databases/data-warehousing/tools","docId":"databases/data-warehousing/tools","unlisted":false}],"href":"/databases/data-warehousing/"},{"type":"category","label":"Indexing","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Database Index","href":"/databases/indexing/database-index","docId":"databases/indexing/database-index","unlisted":false},{"type":"link","label":"Indexing Questions","href":"/databases/indexing/indexing-questions","docId":"databases/indexing/indexing-questions","unlisted":false},{"type":"link","label":"Indexing","href":"/databases/indexing/intro","docId":"databases/indexing/intro","unlisted":false},{"type":"link","label":"Inverted Index","href":"/databases/indexing/inverted-index","docId":"databases/indexing/inverted-index","unlisted":false},{"type":"link","label":"MySQL Indexing","href":"/databases/indexing/mysql-indexing","docId":"databases/indexing/mysql-indexing","unlisted":false}],"href":"/databases/indexing/"},{"type":"category","label":"Modeling","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Data Modeling","href":"/databases/modeling/data-modeling","docId":"databases/modeling/data-modeling","unlisted":false},{"type":"link","label":"ER Diagrams (Entity Relationships)","href":"/databases/modeling/er-diagrams-entity-relationships","docId":"databases/modeling/er-diagrams-entity-relationships","unlisted":false},{"type":"link","label":"ER - Tools","href":"/databases/modeling/er-tools","docId":"databases/modeling/er-tools","unlisted":false}],"href":"/databases/modeling/"},{"type":"category","label":"NoSQL Databases","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"DynamoDB","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Capacity Modes","href":"/databases/nosql-databases/aws-dynamodb/capacity-modes","docId":"databases/nosql-databases/aws-dynamodb/capacity-modes","unlisted":false},{"type":"link","label":"Cheatsheet","href":"/databases/nosql-databases/aws-dynamodb/cheatsheet","docId":"databases/nosql-databases/aws-dynamodb/cheatsheet","unlisted":false},{"type":"link","label":"Core components","href":"/databases/nosql-databases/aws-dynamodb/core-components","docId":"databases/nosql-databases/aws-dynamodb/core-components","unlisted":false},{"type":"link","label":"Documentation","href":"/databases/nosql-databases/aws-dynamodb/documentation","docId":"databases/nosql-databases/aws-dynamodb/documentation","unlisted":false},{"type":"link","label":"AWS DynamoDB","href":"/databases/nosql-databases/aws-dynamodb/intro","docId":"databases/nosql-databases/aws-dynamodb/intro","unlisted":false},{"type":"link","label":"Others","href":"/databases/nosql-databases/aws-dynamodb/others","docId":"databases/nosql-databases/aws-dynamodb/others","unlisted":false},{"type":"link","label":"Table Classes","href":"/databases/nosql-databases/aws-dynamodb/table-classes","docId":"databases/nosql-databases/aws-dynamodb/table-classes","unlisted":false},{"type":"link","label":"Working","href":"/databases/nosql-databases/aws-dynamodb/working","docId":"databases/nosql-databases/aws-dynamodb/working","unlisted":false}],"href":"/databases/nosql-databases/aws-dynamodb/"},{"type":"category","label":"Cassandra","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/databases/nosql-databases/cassandra/commands","docId":"databases/nosql-databases/cassandra/commands","unlisted":false},{"type":"link","label":"Consistency","href":"/databases/nosql-databases/cassandra/consistency","docId":"databases/nosql-databases/cassandra/consistency","unlisted":false},{"type":"link","label":"CQL (Cassandra Query Language)","href":"/databases/nosql-databases/cassandra/cql-cassandra-query-language","docId":"databases/nosql-databases/cassandra/cql-cassandra-query-language","unlisted":false},{"type":"link","label":"Data Model","href":"/databases/nosql-databases/cassandra/data-model","docId":"databases/nosql-databases/cassandra/data-model","unlisted":false},{"type":"link","label":"Design","href":"/databases/nosql-databases/cassandra/design","docId":"databases/nosql-databases/cassandra/design","unlisted":false},{"type":"link","label":"Drivers / Clients","href":"/databases/nosql-databases/cassandra/drivers-clients","docId":"databases/nosql-databases/cassandra/drivers-clients","unlisted":false},{"type":"link","label":"Cassandra","href":"/databases/nosql-databases/cassandra/intro","docId":"databases/nosql-databases/cassandra/intro","unlisted":false},{"type":"link","label":"Questions","href":"/databases/nosql-databases/cassandra/questions","docId":"databases/nosql-databases/cassandra/questions","unlisted":false},{"type":"link","label":"Working","href":"/databases/nosql-databases/cassandra/working","docId":"databases/nosql-databases/cassandra/working","unlisted":false}],"href":"/databases/nosql-databases/cassandra/"},{"type":"link","label":"ClickHouse","href":"/databases/nosql-databases/clickhouse","docId":"databases/nosql-databases/clickhouse","unlisted":false},{"type":"link","label":"Column family","href":"/databases/nosql-databases/column-family","docId":"databases/nosql-databases/column-family","unlisted":false},{"type":"link","label":"Comparisions","href":"/databases/nosql-databases/comparisions","docId":"databases/nosql-databases/comparisions","unlisted":false},{"type":"category","label":"Druid","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture","href":"/databases/nosql-databases/druid/architecture","docId":"databases/nosql-databases/druid/architecture","unlisted":false},{"type":"link","label":"Cheatsheet","href":"/databases/nosql-databases/druid/cheatsheet","docId":"databases/nosql-databases/druid/cheatsheet","unlisted":false},{"type":"link","label":"Commands","href":"/databases/nosql-databases/druid/commands","docId":"databases/nosql-databases/druid/commands","unlisted":false},{"type":"link","label":"Documentation","href":"/databases/nosql-databases/druid/documentation","docId":"databases/nosql-databases/druid/documentation","unlisted":false},{"type":"link","label":"FAQs","href":"/databases/nosql-databases/druid/faqs","docId":"databases/nosql-databases/druid/faqs","unlisted":false},{"type":"link","label":"Druid","href":"/databases/nosql-databases/druid/intro","docId":"databases/nosql-databases/druid/intro","unlisted":false},{"type":"link","label":"Others","href":"/databases/nosql-databases/druid/others","docId":"databases/nosql-databases/druid/others","unlisted":false},{"type":"link","label":"Paper","href":"/databases/nosql-databases/druid/paper","docId":"databases/nosql-databases/druid/paper","unlisted":false}],"href":"/databases/nosql-databases/druid/"},{"type":"link","label":"etcd","href":"/databases/nosql-databases/etcd","docId":"databases/nosql-databases/etcd","unlisted":false},{"type":"category","label":"MongoDB","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/databases/nosql-databases/mongodb/commands","docId":"databases/nosql-databases/mongodb/commands","unlisted":false},{"type":"link","label":"Data Types","href":"/databases/nosql-databases/mongodb/data-types","docId":"databases/nosql-databases/mongodb/data-types","unlisted":false},{"type":"link","label":"Indexes","href":"/databases/nosql-databases/mongodb/indexes","docId":"databases/nosql-databases/mongodb/indexes","unlisted":false},{"type":"link","label":"MongoDB","href":"/databases/nosql-databases/mongodb/intro","docId":"databases/nosql-databases/mongodb/intro","unlisted":false},{"type":"link","label":"Others","href":"/databases/nosql-databases/mongodb/others","docId":"databases/nosql-databases/mongodb/others","unlisted":false},{"type":"link","label":"Overview","href":"/databases/nosql-databases/mongodb/overview","docId":"databases/nosql-databases/mongodb/overview","unlisted":false},{"type":"link","label":"pymongo","href":"/databases/nosql-databases/mongodb/pymongo","docId":"databases/nosql-databases/mongodb/pymongo","unlisted":false},{"type":"link","label":"Questions","href":"/databases/nosql-databases/mongodb/questions","docId":"databases/nosql-databases/mongodb/questions","unlisted":false},{"type":"link","label":"Read / Write Concern","href":"/databases/nosql-databases/mongodb/read-write-concern","docId":"databases/nosql-databases/mongodb/read-write-concern","unlisted":false},{"type":"link","label":"Sharding / Replication","href":"/databases/nosql-databases/mongodb/sharding-replication","docId":"databases/nosql-databases/mongodb/sharding-replication","unlisted":false},{"type":"link","label":"Vector Search","href":"/databases/nosql-databases/mongodb/vector-search","docId":"databases/nosql-databases/mongodb/vector-search","unlisted":false}],"href":"/databases/nosql-databases/mongodb/"},{"type":"link","label":"Other NoSQL Databases","href":"/databases/nosql-databases/others","docId":"databases/nosql-databases/others","unlisted":false},{"type":"category","label":"Redis","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Best Practices","href":"/databases/nosql-databases/redis/best-practices","docId":"databases/nosql-databases/redis/best-practices","unlisted":false},{"type":"link","label":"Commands","href":"/databases/nosql-databases/redis/commands","docId":"databases/nosql-databases/redis/commands","unlisted":false},{"type":"link","label":"Documentation","href":"/databases/nosql-databases/redis/documentation","docId":"databases/nosql-databases/redis/documentation","unlisted":false},{"type":"link","label":"Redis","href":"/databases/nosql-databases/redis/intro","docId":"databases/nosql-databases/redis/intro","unlisted":false},{"type":"link","label":"Others","href":"/databases/nosql-databases/redis/others","docId":"databases/nosql-databases/redis/others","unlisted":false},{"type":"link","label":"Redis Concepts","href":"/databases/nosql-databases/redis/redis-concepts","docId":"databases/nosql-databases/redis/redis-concepts","unlisted":false},{"type":"link","label":"Redis Data Types","href":"/databases/nosql-databases/redis/redis-data-types","docId":"databases/nosql-databases/redis/redis-data-types","unlisted":false},{"type":"link","label":"Redis Eviction Policies","href":"/databases/nosql-databases/redis/redis-eviction-policies","docId":"databases/nosql-databases/redis/redis-eviction-policies","unlisted":false},{"type":"link","label":"redis-py","href":"/databases/nosql-databases/redis/redis-py","docId":"databases/nosql-databases/redis/redis-py","unlisted":false},{"type":"link","label":"Redis Queues","href":"/databases/nosql-databases/redis/redis-queues","docId":"databases/nosql-databases/redis/redis-queues","unlisted":false},{"type":"link","label":"Redis Streams / PUBSUB","href":"/databases/nosql-databases/redis/redis-streams-pubsub","docId":"databases/nosql-databases/redis/redis-streams-pubsub","unlisted":false},{"type":"link","label":"Scaling","href":"/databases/nosql-databases/redis/scaling","docId":"databases/nosql-databases/redis/scaling","unlisted":false}],"href":"/databases/nosql-databases/redis/"},{"type":"category","label":"Snowflake","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture","href":"/databases/nosql-databases/snowflake/architecture","docId":"databases/nosql-databases/snowflake/architecture","unlisted":false},{"type":"link","label":"Commands","href":"/databases/nosql-databases/snowflake/commands","docId":"databases/nosql-databases/snowflake/commands","unlisted":false},{"type":"link","label":"Compute","href":"/databases/nosql-databases/snowflake/compute","docId":"databases/nosql-databases/snowflake/compute","unlisted":false},{"type":"link","label":"Documentation","href":"/databases/nosql-databases/snowflake/documentation","docId":"databases/nosql-databases/snowflake/documentation","unlisted":false},{"type":"link","label":"Governance","href":"/databases/nosql-databases/snowflake/governance","docId":"databases/nosql-databases/snowflake/governance","unlisted":false},{"type":"link","label":"Data Ingestion / Loading","href":"/databases/nosql-databases/snowflake/ingestion","docId":"databases/nosql-databases/snowflake/ingestion","unlisted":false},{"type":"link","label":"Intro","href":"/databases/nosql-databases/snowflake/intro","docId":"databases/nosql-databases/snowflake/intro","unlisted":false},{"type":"link","label":"Optimizations","href":"/databases/nosql-databases/snowflake/optimizations","docId":"databases/nosql-databases/snowflake/optimizations","unlisted":false},{"type":"link","label":"Recovery","href":"/databases/nosql-databases/snowflake/recovery","docId":"databases/nosql-databases/snowflake/recovery","unlisted":false},{"type":"link","label":"Stages","href":"/databases/nosql-databases/snowflake/stages","docId":"databases/nosql-databases/snowflake/stages","unlisted":false},{"type":"link","label":"Terms","href":"/databases/nosql-databases/snowflake/terms","docId":"databases/nosql-databases/snowflake/terms","unlisted":false}],"href":"/databases/nosql-databases/snowflake/"},{"type":"link","label":"tidb","href":"/databases/nosql-databases/tidb","docId":"databases/nosql-databases/tidb","unlisted":false},{"type":"category","label":"Time Series","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"InfluxDB","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Administration","href":"/databases/nosql-databases/time-series-db/influxdb/administration","docId":"databases/nosql-databases/time-series-db/influxdb/administration","unlisted":false},{"type":"link","label":"Commands / Influx Query Language (InfluxQL)","href":"/databases/nosql-databases/time-series-db/influxdb/commands-influx-query-language-influxql","docId":"databases/nosql-databases/time-series-db/influxdb/commands-influx-query-language-influxql","unlisted":false},{"type":"link","label":"Concepts","href":"/databases/nosql-databases/time-series-db/influxdb/concepts","docId":"databases/nosql-databases/time-series-db/influxdb/concepts","unlisted":false},{"type":"link","label":"Influx","href":"/databases/nosql-databases/time-series-db/influxdb/influx","docId":"databases/nosql-databases/time-series-db/influxdb/influx","unlisted":false},{"type":"link","label":"Kapacitor","href":"/databases/nosql-databases/time-series-db/influxdb/kapacitor","docId":"databases/nosql-databases/time-series-db/influxdb/kapacitor","unlisted":false},{"type":"link","label":"Others","href":"/databases/nosql-databases/time-series-db/influxdb/others","docId":"databases/nosql-databases/time-series-db/influxdb/others","unlisted":false},{"type":"link","label":"Tools","href":"/databases/nosql-databases/time-series-db/influxdb/tools","docId":"databases/nosql-databases/time-series-db/influxdb/tools","unlisted":false},{"type":"link","label":"Upgrades","href":"/databases/nosql-databases/time-series-db/influxdb/upgrades","docId":"databases/nosql-databases/time-series-db/influxdb/upgrades","unlisted":false},{"type":"link","label":"Write Protocols","href":"/databases/nosql-databases/time-series-db/influxdb/write-protocols","docId":"databases/nosql-databases/time-series-db/influxdb/write-protocols","unlisted":false}],"href":"/databases/nosql-databases/time-series-db/influxdb/"},{"type":"link","label":"Time Series Databases","href":"/databases/nosql-databases/time-series-db/time-series-databases","docId":"databases/nosql-databases/time-series-db/time-series-databases","unlisted":false},{"type":"link","label":"TimeScaleDB","href":"/databases/nosql-databases/time-series-db/timescaledb","docId":"databases/nosql-databases/time-series-db/timescaledb","unlisted":false}],"href":"/databases/nosql-databases/time-series-db/"},{"type":"link","label":"YugabyteDB","href":"/databases/nosql-databases/yugabytedb","docId":"databases/nosql-databases/yugabytedb","unlisted":false}],"href":"/databases/nosql-databases/"},{"type":"category","label":"Others","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Course - Advanced Database Systems","href":"/databases/others/course-advanced-database-systems","docId":"databases/others/course-advanced-database-systems","unlisted":false},{"type":"link","label":"Course - AWS Certified Database - Specialty","href":"/databases/others/course-aws-certified-database-specialty","docId":"databases/others/course-aws-certified-database-specialty","unlisted":false},{"type":"link","label":"Database Activity/Active Monitoring (DAM)","href":"/databases/others/database-activity-monitoring-dam","docId":"databases/others/database-activity-monitoring-dam","unlisted":false},{"type":"link","label":"Database Migration Tools","href":"/databases/others/database-migration-tools","docId":"databases/others/database-migration-tools","unlisted":false},{"type":"link","label":"Databases - Others","href":"/databases/others/databases-others","docId":"databases/others/databases-others","unlisted":false},{"type":"link","label":"Technologies / Tools","href":"/databases/others/technologies-tools","docId":"databases/others/technologies-tools","unlisted":false}],"href":"/databases/others/"},{"type":"category","label":"SQL Databases","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Amazon Aurora vs RDS","href":"/databases/sql-databases/amazon-aurora-vs-rds","docId":"databases/sql-databases/amazon-aurora-vs-rds","unlisted":false},{"type":"link","label":"Amazon RDS","href":"/databases/sql-databases/amazon-rds","docId":"databases/sql-databases/amazon-rds","unlisted":false},{"type":"category","label":"AWS Aurora","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Aurora Documentation","href":"/databases/sql-databases/aws-aurora/aurora-documentation","docId":"databases/sql-databases/aws-aurora/aurora-documentation","unlisted":false},{"type":"link","label":"Aurora Global Databases","href":"/databases/sql-databases/aws-aurora/aurora-global-databases","docId":"databases/sql-databases/aws-aurora/aurora-global-databases","unlisted":false},{"type":"link","label":"Amazon Aurora Serverless","href":"/databases/sql-databases/aws-aurora/aurora-serverless","docId":"databases/sql-databases/aws-aurora/aurora-serverless","unlisted":false},{"type":"link","label":"Backup","href":"/databases/sql-databases/aws-aurora/backup","docId":"databases/sql-databases/aws-aurora/backup","unlisted":false},{"type":"link","label":"Configurations / Optimizations / Best Practices","href":"/databases/sql-databases/aws-aurora/configurations-optimizations-best-practices","docId":"databases/sql-databases/aws-aurora/configurations-optimizations-best-practices","unlisted":false},{"type":"link","label":"Costs","href":"/databases/sql-databases/aws-aurora/costs","docId":"databases/sql-databases/aws-aurora/costs","unlisted":false},{"type":"link","label":"High Availability (HA) Others","href":"/databases/sql-databases/aws-aurora/high-availability-ha-others","docId":"databases/sql-databases/aws-aurora/high-availability-ha-others","unlisted":false},{"type":"link","label":"High Availability (HA)","href":"/databases/sql-databases/aws-aurora/high-availability-ha","docId":"databases/sql-databases/aws-aurora/high-availability-ha","unlisted":false},{"type":"link","label":"AWS Aurora","href":"/databases/sql-databases/aws-aurora/intro","docId":"databases/sql-databases/aws-aurora/intro","unlisted":false},{"type":"link","label":"Monitoring","href":"/databases/sql-databases/aws-aurora/monitoring","docId":"databases/sql-databases/aws-aurora/monitoring","unlisted":false},{"type":"link","label":"Others","href":"/databases/sql-databases/aws-aurora/others","docId":"databases/sql-databases/aws-aurora/others","unlisted":false},{"type":"link","label":"Storage","href":"/databases/sql-databases/aws-aurora/storage","docId":"databases/sql-databases/aws-aurora/storage","unlisted":false}],"href":"/databases/sql-databases/aws-aurora/"},{"type":"category","label":"Redshift","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture","href":"/databases/sql-databases/aws-redshift/architecture","docId":"databases/sql-databases/aws-redshift/architecture","unlisted":false},{"type":"link","label":"Deep dive / Best practices","href":"/databases/sql-databases/aws-redshift/deep-dive-best-practices","docId":"databases/sql-databases/aws-redshift/deep-dive-best-practices","unlisted":false},{"type":"link","label":"Documentation","href":"/databases/sql-databases/aws-redshift/documentation","docId":"databases/sql-databases/aws-redshift/documentation","unlisted":false},{"type":"link","label":"ETL in Redshift","href":"/databases/sql-databases/aws-redshift/etl-redshift","docId":"databases/sql-databases/aws-redshift/etl-redshift","unlisted":false},{"type":"link","label":"AWS Redshift","href":"/databases/sql-databases/aws-redshift/intro","docId":"databases/sql-databases/aws-redshift/intro","unlisted":false},{"type":"link","label":"Others","href":"/databases/sql-databases/aws-redshift/others","docId":"databases/sql-databases/aws-redshift/others","unlisted":false},{"type":"link","label":"Pricing / Sizing","href":"/databases/sql-databases/aws-redshift/pricing-sizing","docId":"databases/sql-databases/aws-redshift/pricing-sizing","unlisted":false},{"type":"link","label":"Redshift SQL Queries / Commands","href":"/databases/sql-databases/aws-redshift/redshift-sql-queries-commands","docId":"databases/sql-databases/aws-redshift/redshift-sql-queries-commands","unlisted":false},{"type":"link","label":"Workload management (WLM) and query monitoring rules (QMR)","href":"/databases/sql-databases/aws-redshift/wlm-qmr","docId":"databases/sql-databases/aws-redshift/wlm-qmr","unlisted":false}],"href":"/databases/sql-databases/aws-redshift/"},{"type":"category","label":"MemSQL","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Intro","href":"/databases/sql-databases/memsql/intro","docId":"databases/sql-databases/memsql/intro","unlisted":false}],"href":"/databases/sql-databases/memsql/"},{"type":"category","label":"MySQL","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Administration / Configuration","href":"/databases/sql-databases/mysql/administration-configuration","docId":"databases/sql-databases/mysql/administration-configuration","unlisted":false},{"type":"link","label":"Backup Comparisons","href":"/databases/sql-databases/mysql/backup-comparisons","docId":"databases/sql-databases/mysql/backup-comparisons","unlisted":false},{"type":"link","label":"Backup Policy","href":"/databases/sql-databases/mysql/backup-policy","docId":"databases/sql-databases/mysql/backup-policy","unlisted":false},{"type":"link","label":"Backup Types","href":"/databases/sql-databases/mysql/backup-types","docId":"databases/sql-databases/mysql/backup-types","unlisted":false},{"type":"link","label":"Connection Handling","href":"/databases/sql-databases/mysql/connection-handling","docId":"databases/sql-databases/mysql/connection-handling","unlisted":false},{"type":"link","label":"Documentation","href":"/databases/sql-databases/mysql/documentation","docId":"databases/sql-databases/mysql/documentation","unlisted":false},{"type":"link","label":"GTID Replication","href":"/databases/sql-databases/mysql/gtid-replication","docId":"databases/sql-databases/mysql/gtid-replication","unlisted":false},{"type":"link","label":"MySQL","href":"/databases/sql-databases/mysql/intro","docId":"databases/sql-databases/mysql/intro","unlisted":false},{"type":"link","label":"MyDumper","href":"/databases/sql-databases/mysql/mydumper","docId":"databases/sql-databases/mysql/mydumper","unlisted":false},{"type":"link","label":"MySQL Data Types","href":"/databases/sql-databases/mysql/mysql-data-types","docId":"databases/sql-databases/mysql/mysql-data-types","unlisted":false},{"type":"link","label":"MySQL Heatwave","href":"/databases/sql-databases/mysql/mysql-heatwave","docId":"databases/sql-databases/mysql/mysql-heatwave","unlisted":false},{"type":"link","label":"MySQL Triggers","href":"/databases/sql-databases/mysql/mysql-triggers","docId":"databases/sql-databases/mysql/mysql-triggers","unlisted":false},{"type":"link","label":"mysqlbinlog","href":"/databases/sql-databases/mysql/mysqlbinlog","docId":"databases/sql-databases/mysql/mysqlbinlog","unlisted":false},{"type":"link","label":"MySQLDump","href":"/databases/sql-databases/mysql/mysqldump","docId":"databases/sql-databases/mysql/mysqldump","unlisted":false},{"type":"link","label":"Optimizing Locking Operations","href":"/databases/sql-databases/mysql/optimizing-locking-operations","docId":"databases/sql-databases/mysql/optimizing-locking-operations","unlisted":false},{"type":"link","label":"Others","href":"/databases/sql-databases/mysql/others","docId":"databases/sql-databases/mysql/others","unlisted":false},{"type":"link","label":"Partitioning","href":"/databases/sql-databases/mysql/partitioning","docId":"databases/sql-databases/mysql/partitioning","unlisted":false},{"type":"link","label":"Percona Toolkit","href":"/databases/sql-databases/mysql/percona-toolkit","docId":"databases/sql-databases/mysql/percona-toolkit","unlisted":false},{"type":"link","label":"Percona XtraBackup","href":"/databases/sql-databases/mysql/percona-xtrabackup","docId":"databases/sql-databases/mysql/percona-xtrabackup","unlisted":false},{"type":"link","label":"Replication","href":"/databases/sql-databases/mysql/replication","docId":"databases/sql-databases/mysql/replication","unlisted":false},{"type":"link","label":"Scaling / Optimizations","href":"/databases/sql-databases/mysql/scaling-optimizations","docId":"databases/sql-databases/mysql/scaling-optimizations","unlisted":false},{"type":"link","label":"Server SQL Modes","href":"/databases/sql-databases/mysql/server-sql-modes","docId":"databases/sql-databases/mysql/server-sql-modes","unlisted":false},{"type":"link","label":"SQL / MySQL Tools","href":"/databases/sql-databases/mysql/sql-mysql-tools","docId":"databases/sql-databases/mysql/sql-mysql-tools","unlisted":false},{"type":"link","label":"Thread States","href":"/databases/sql-databases/mysql/thread-states","docId":"databases/sql-databases/mysql/thread-states","unlisted":false},{"type":"link","label":"Trasaction / Commit / Rollback","href":"/databases/sql-databases/mysql/transaction-commit-rollback","docId":"databases/sql-databases/mysql/transaction-commit-rollback","unlisted":false}],"href":"/databases/sql-databases/mysql/"},{"type":"link","label":"Normalization","href":"/databases/sql-databases/normalization","docId":"databases/sql-databases/normalization","unlisted":false},{"type":"link","label":"Partitioning / Sharding","href":"/databases/sql-databases/partitioning-sharding","docId":"databases/sql-databases/partitioning-sharding","unlisted":false},{"type":"category","label":"Postgres","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture","href":"/databases/sql-databases/postgres/architecture","docId":"databases/sql-databases/postgres/architecture","unlisted":false},{"type":"link","label":"Documentation","href":"/databases/sql-databases/postgres/documentation","docId":"databases/sql-databases/postgres/documentation","unlisted":false},{"type":"link","label":"Indexes in Postgres","href":"/databases/sql-databases/postgres/indexes","docId":"databases/sql-databases/postgres/indexes","unlisted":false},{"type":"link","label":"Others","href":"/databases/sql-databases/postgres/others","docId":"databases/sql-databases/postgres/others","unlisted":false},{"type":"link","label":"Parameters / Configurations / Optimizations","href":"/databases/sql-databases/postgres/parameters-configuration-optimization","docId":"databases/sql-databases/postgres/parameters-configuration-optimization","unlisted":false},{"type":"link","label":"Replication","href":"/databases/sql-databases/postgres/replication","docId":"databases/sql-databases/postgres/replication","unlisted":false},{"type":"link","label":"Table Partitioning","href":"/databases/sql-databases/postgres/table-partitioning","docId":"databases/sql-databases/postgres/table-partitioning","unlisted":false}],"href":"/databases/sql-databases/postgres/"},{"type":"link","label":"RDBMS","href":"/databases/sql-databases/rdbms","docId":"databases/sql-databases/rdbms","unlisted":false}],"href":"/databases/sql-databases/"}],"href":"/databases/"},{"type":"category","label":"Decentralized Applications","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Blockchain","href":"/decentralized-applications/blockchain","docId":"decentralized-applications/blockchain","unlisted":false},{"type":"category","label":"Coins / Tokens / Chains","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"BIP39","href":"/decentralized-applications/coins-tokens-chains/bip39","docId":"decentralized-applications/coins-tokens-chains/bip39","unlisted":false},{"type":"link","label":"Bitcoin","href":"/decentralized-applications/coins-tokens-chains/bitcoin","docId":"decentralized-applications/coins-tokens-chains/bitcoin","unlisted":false},{"type":"link","label":"BNB","href":"/decentralized-applications/coins-tokens-chains/bnb","docId":"decentralized-applications/coins-tokens-chains/bnb","unlisted":false},{"type":"link","label":"Cardano","href":"/decentralized-applications/coins-tokens-chains/cardano","docId":"decentralized-applications/coins-tokens-chains/cardano","unlisted":false},{"type":"link","label":"Celestia","href":"/decentralized-applications/coins-tokens-chains/celestia","docId":"decentralized-applications/coins-tokens-chains/celestia","unlisted":false},{"type":"link","label":"Tokens","href":"/decentralized-applications/coins-tokens-chains/coin-token-intro","docId":"decentralized-applications/coins-tokens-chains/coin-token-intro","unlisted":false},{"type":"link","label":"DAI","href":"/decentralized-applications/coins-tokens-chains/dai","docId":"decentralized-applications/coins-tokens-chains/dai","unlisted":false},{"type":"link","label":"dtokens","href":"/decentralized-applications/coins-tokens-chains/dtokens","docId":"decentralized-applications/coins-tokens-chains/dtokens","unlisted":false},{"type":"link","label":"Dual-Token Economy/Model","href":"/decentralized-applications/coins-tokens-chains/dual-token-economy","docId":"decentralized-applications/coins-tokens-chains/dual-token-economy","unlisted":false},{"type":"link","label":"Litecoin","href":"/decentralized-applications/coins-tokens-chains/litecoin","docId":"decentralized-applications/coins-tokens-chains/litecoin","unlisted":false},{"type":"link","label":"Near Protocol","href":"/decentralized-applications/coins-tokens-chains/near-protocol","docId":"decentralized-applications/coins-tokens-chains/near-protocol","unlisted":false},{"type":"link","label":"NFT (Non Fungible Tokens)","href":"/decentralized-applications/coins-tokens-chains/nft-non-fungible-tokens","docId":"decentralized-applications/coins-tokens-chains/nft-non-fungible-tokens","unlisted":false},{"type":"link","label":"Ordinals","href":"/decentralized-applications/coins-tokens-chains/ordinals","docId":"decentralized-applications/coins-tokens-chains/ordinals","unlisted":false},{"type":"link","label":"Stable Coins","href":"/decentralized-applications/coins-tokens-chains/stable-coins","docId":"decentralized-applications/coins-tokens-chains/stable-coins","unlisted":false},{"type":"link","label":"ThorChain","href":"/decentralized-applications/coins-tokens-chains/thorchain","docId":"decentralized-applications/coins-tokens-chains/thorchain","unlisted":false},{"type":"link","label":"Uniswap","href":"/decentralized-applications/coins-tokens-chains/uniswap","docId":"decentralized-applications/coins-tokens-chains/uniswap","unlisted":false},{"type":"link","label":"USDC","href":"/decentralized-applications/coins-tokens-chains/usdc","docId":"decentralized-applications/coins-tokens-chains/usdc","unlisted":false},{"type":"link","label":"USDT","href":"/decentralized-applications/coins-tokens-chains/usdt","docId":"decentralized-applications/coins-tokens-chains/usdt","unlisted":false},{"type":"link","label":"Vechain","href":"/decentralized-applications/coins-tokens-chains/vechain","docId":"decentralized-applications/coins-tokens-chains/vechain","unlisted":false},{"type":"link","label":"Wallets","href":"/decentralized-applications/coins-tokens-chains/wallets","docId":"decentralized-applications/coins-tokens-chains/wallets","unlisted":false}],"href":"/decentralized-applications/coins-tokens-chains/"},{"type":"link","label":"Consensus Protocols","href":"/decentralized-applications/consensus-protocols","docId":"decentralized-applications/consensus-protocols","unlisted":false},{"type":"link","label":"Crypto Exchanges","href":"/decentralized-applications/crypto-exchanges","docId":"decentralized-applications/crypto-exchanges","unlisted":false},{"type":"link","label":"Crypto Future","href":"/decentralized-applications/crypto-future","docId":"decentralized-applications/crypto-future","unlisted":false},{"type":"link","label":"Crypto Investing","href":"/decentralized-applications/crypto-investing","docId":"decentralized-applications/crypto-investing","unlisted":false},{"type":"link","label":"Crypto News","href":"/decentralized-applications/crypto-news","docId":"decentralized-applications/crypto-news","unlisted":false},{"type":"link","label":"DeFi Apps","href":"/decentralized-applications/defi-apps","docId":"decentralized-applications/defi-apps","unlisted":false},{"type":"link","label":"DeFi","href":"/decentralized-applications/defi","docId":"decentralized-applications/defi","unlisted":false},{"type":"category","label":"Development Tools","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Infura","href":"/decentralized-applications/development/infura","docId":"decentralized-applications/development/infura","unlisted":false},{"type":"link","label":"Sample Code","href":"/decentralized-applications/development/sample-code","docId":"decentralized-applications/development/sample-code","unlisted":false}],"href":"/decentralized-applications/development/"},{"type":"category","label":"Ethereum","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Intro to Ethereum","href":"/decentralized-applications/ethereum/01-intro-to-ethereum","docId":"decentralized-applications/ethereum/01-intro-to-ethereum","unlisted":false},{"type":"link","label":"Intro to Ether","href":"/decentralized-applications/ethereum/02-intro-to-ether","docId":"decentralized-applications/ethereum/02-intro-to-ether","unlisted":false},{"type":"link","label":"Intro to Dapps","href":"/decentralized-applications/ethereum/03-intro-to-dapps","docId":"decentralized-applications/ethereum/03-intro-to-dapps","unlisted":false},{"type":"link","label":"Ethereum Accounts","href":"/decentralized-applications/ethereum/05-accounts","docId":"decentralized-applications/ethereum/05-accounts","unlisted":false},{"type":"link","label":"Transactions","href":"/decentralized-applications/ethereum/06-transactions","docId":"decentralized-applications/ethereum/06-transactions","unlisted":false},{"type":"link","label":"Blocks","href":"/decentralized-applications/ethereum/07-blocks","docId":"decentralized-applications/ethereum/07-blocks","unlisted":false},{"type":"link","label":"EVM - Ethereum Virtual Machine","href":"/decentralized-applications/ethereum/08-evm","docId":"decentralized-applications/ethereum/08-evm","unlisted":false},{"type":"link","label":"Gas","href":"/decentralized-applications/ethereum/09-gas","docId":"decentralized-applications/ethereum/09-gas","unlisted":false},{"type":"link","label":"Nodes and Clients","href":"/decentralized-applications/ethereum/10-nodes-and-clients","docId":"decentralized-applications/ethereum/10-nodes-and-clients","unlisted":false},{"type":"link","label":"Bridges","href":"/decentralized-applications/ethereum/30-bridges","docId":"decentralized-applications/ethereum/30-bridges","unlisted":false},{"type":"link","label":"Proof of Stake","href":"/decentralized-applications/ethereum/40-proof-of-stake","docId":"decentralized-applications/ethereum/40-proof-of-stake","unlisted":false},{"type":"link","label":"Rewards and Penalties","href":"/decentralized-applications/ethereum/41-rewards-and-penalties","docId":"decentralized-applications/ethereum/41-rewards-and-penalties","unlisted":false},{"type":"link","label":"Block Proposals","href":"/decentralized-applications/ethereum/42-block-proposals","docId":"decentralized-applications/ethereum/42-block-proposals","unlisted":false},{"type":"link","label":"Arbitrum","href":"/decentralized-applications/ethereum/arbitrum","docId":"decentralized-applications/ethereum/arbitrum","unlisted":false},{"type":"link","label":"DAO","href":"/decentralized-applications/ethereum/dao","docId":"decentralized-applications/ethereum/dao","unlisted":false},{"type":"link","label":"ERC-4337","href":"/decentralized-applications/ethereum/erc-4337","docId":"decentralized-applications/ethereum/erc-4337","unlisted":false},{"type":"link","label":"Ethereum","href":"/decentralized-applications/ethereum/ethereum-intro","docId":"decentralized-applications/ethereum/ethereum-intro","unlisted":false},{"type":"link","label":"Ethereum Staking","href":"/decentralized-applications/ethereum/ethereum-staking","docId":"decentralized-applications/ethereum/ethereum-staking","unlisted":false},{"type":"link","label":"Etherjs","href":"/decentralized-applications/ethereum/etherjs","docId":"decentralized-applications/ethereum/etherjs","unlisted":false},{"type":"link","label":"Layer 2 Protocols","href":"/decentralized-applications/ethereum/layer-2-protocols","docId":"decentralized-applications/ethereum/layer-2-protocols","unlisted":false},{"type":"link","label":"Others","href":"/decentralized-applications/ethereum/others","docId":"decentralized-applications/ethereum/others","unlisted":false},{"type":"link","label":"Polygon","href":"/decentralized-applications/ethereum/polygon","docId":"decentralized-applications/ethereum/polygon","unlisted":false},{"type":"link","label":"Solidity","href":"/decentralized-applications/ethereum/solidity","docId":"decentralized-applications/ethereum/solidity","unlisted":false},{"type":"link","label":"Upgrades","href":"/decentralized-applications/ethereum/upgrades","docId":"decentralized-applications/ethereum/upgrades","unlisted":false}],"href":"/decentralized-applications/ethereum/"},{"type":"link","label":"Intro","href":"/decentralized-applications/intro","docId":"decentralized-applications/intro","unlisted":false},{"type":"link","label":"Key Concepts","href":"/decentralized-applications/key-concepts","docId":"decentralized-applications/key-concepts","unlisted":false},{"type":"link","label":"Liquidity Mining","href":"/decentralized-applications/liquidity-mining","docId":"decentralized-applications/liquidity-mining","unlisted":false},{"type":"link","label":"On-Chain Analytics","href":"/decentralized-applications/on-chain-analytics","docId":"decentralized-applications/on-chain-analytics","unlisted":false},{"type":"link","label":"Others","href":"/decentralized-applications/others","docId":"decentralized-applications/others","unlisted":false},{"type":"link","label":"References / Learning","href":"/decentralized-applications/references-learning","docId":"decentralized-applications/references-learning","unlisted":false},{"type":"link","label":"Tokenomics","href":"/decentralized-applications/tokenomics","docId":"decentralized-applications/tokenomics","unlisted":false},{"type":"link","label":"Tools","href":"/decentralized-applications/tools","docId":"decentralized-applications/tools","unlisted":false},{"type":"link","label":"Trilemma","href":"/decentralized-applications/trilemmas","docId":"decentralized-applications/trilemmas","unlisted":false}],"href":"/decentralized-applications/"},{"type":"category","label":"DevOps","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Ansible","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/devops/ansible/commands","docId":"devops/ansible/commands","unlisted":false}],"href":"/devops/ansible/"},{"type":"category","label":"DevOps","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Application Management","href":"/devops/devops-intro/application-management","docId":"devops/devops-intro/application-management","unlisted":false},{"type":"link","label":"Chaos Engineering","href":"/devops/devops-intro/chaos-engineering","docId":"devops/devops-intro/chaos-engineering","unlisted":false},{"type":"link","label":"Concepts","href":"/devops/devops-intro/concepts","docId":"devops/devops-intro/concepts","unlisted":false},{"type":"link","label":"Deployment Strategies","href":"/devops/devops-intro/deployment-strategies","docId":"devops/devops-intro/deployment-strategies","unlisted":false},{"type":"link","label":"Design","href":"/devops/devops-intro/design","docId":"devops/devops-intro/design","unlisted":false},{"type":"link","label":"Disaster Recovery","href":"/devops/devops-intro/disaster-recovery","docId":"devops/devops-intro/disaster-recovery","unlisted":false},{"type":"link","label":"Distributed Tracing","href":"/devops/devops-intro/distributed-tracing","docId":"devops/devops-intro/distributed-tracing","unlisted":false},{"type":"link","label":"DORA Metrics","href":"/devops/devops-intro/dora-metrics","docId":"devops/devops-intro/dora-metrics","unlisted":false},{"type":"link","label":"Feature Toggles / Flags","href":"/devops/devops-intro/feature-toggles-flags","docId":"devops/devops-intro/feature-toggles-flags","unlisted":false},{"type":"link","label":"FinOps","href":"/devops/devops-intro/finops","docId":"devops/devops-intro/finops","unlisted":false},{"type":"link","label":"GitOps","href":"/devops/devops-intro/gitops","docId":"devops/devops-intro/gitops","unlisted":false},{"type":"link","label":"High Availability","href":"/devops/devops-intro/high-availability","docId":"devops/devops-intro/high-availability","unlisted":false},{"type":"link","label":"Infra as Code IaC","href":"/devops/devops-intro/infra-as-code-iac","docId":"devops/devops-intro/infra-as-code-iac","unlisted":false},{"type":"link","label":"Intro","href":"/devops/devops-intro/intro","docId":"devops/devops-intro/intro","unlisted":false},{"type":"link","label":"Load Balancer Features","href":"/devops/devops-intro/load-balancer-features","docId":"devops/devops-intro/load-balancer-features","unlisted":false},{"type":"link","label":"Tools","href":"/devops/devops-intro/load-balancer-tools","docId":"devops/devops-intro/load-balancer-tools","unlisted":false},{"type":"link","label":"Load Balancer","href":"/devops/devops-intro/load-balancer","docId":"devops/devops-intro/load-balancer","unlisted":false},{"type":"link","label":"Load Balancing Algorithms","href":"/devops/devops-intro/load-balancing-algorithms","docId":"devops/devops-intro/load-balancing-algorithms","unlisted":false},{"type":"link","label":"Others","href":"/devops/devops-intro/others","docId":"devops/devops-intro/others","unlisted":false},{"type":"link","label":"Platform Engineering","href":"/devops/devops-intro/platform-engineering","docId":"devops/devops-intro/platform-engineering","unlisted":false},{"type":"link","label":"Proxy","href":"/devops/devops-intro/proxy","docId":"devops/devops-intro/proxy","unlisted":false},{"type":"link","label":"SRE (Site Reliability Engineering)","href":"/devops/devops-intro/sre-site-reliability-engineering","docId":"devops/devops-intro/sre-site-reliability-engineering","unlisted":false}],"href":"/devops/devops-intro/"},{"type":"category","label":"Docker","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Concepts","href":"/devops/docker/concepts","docId":"devops/docker/concepts","unlisted":false},{"type":"link","label":"Containers","href":"/devops/docker/containers","docId":"devops/docker/containers","unlisted":false},{"type":"link","label":"Docker Commands","href":"/devops/docker/docker-commands","docId":"devops/docker/docker-commands","unlisted":false},{"type":"link","label":"docker-compose example","href":"/devops/docker/docker-compose-example","docId":"devops/docker/docker-compose-example","unlisted":false},{"type":"link","label":"docker-compose","href":"/devops/docker/docker-compose","docId":"devops/docker/docker-compose","unlisted":false},{"type":"link","label":"Dockerfile example","href":"/devops/docker/dockerfile-example","docId":"devops/docker/dockerfile-example","unlisted":false},{"type":"link","label":"Dockerfiles","href":"/devops/docker/dockerfiles","docId":"devops/docker/dockerfiles","unlisted":false},{"type":"link","label":"Intro","href":"/devops/docker/intro","docId":"devops/docker/intro","unlisted":false},{"type":"link","label":"Networking","href":"/devops/docker/networking","docId":"devops/docker/networking","unlisted":false},{"type":"link","label":"Others","href":"/devops/docker/others","docId":"devops/docker/others","unlisted":false},{"type":"link","label":"Service Configuration Reference","href":"/devops/docker/service-configuration-reference","docId":"devops/docker/service-configuration-reference","unlisted":false},{"type":"link","label":"Stack / Swarm","href":"/devops/docker/stack-swarm","docId":"devops/docker/stack-swarm","unlisted":false}],"href":"/devops/docker/"},{"type":"category","label":"IDEs","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Jupyter / Jupyterlab / notebook","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Template","href":"/devops/ides/jupyter-jupyterlab-notebook/template","docId":"devops/ides/jupyter-jupyterlab-notebook/template","unlisted":false},{"type":"link","label":"Tools","href":"/devops/ides/jupyter-jupyterlab-notebook/tools","docId":"devops/ides/jupyter-jupyterlab-notebook/tools","unlisted":false}],"href":"/devops/ides/jupyter-jupyterlab-notebook/"},{"type":"link","label":"Mac","href":"/devops/ides/mac","docId":"devops/ides/mac","unlisted":false},{"type":"link","label":"Medium Blogging","href":"/devops/ides/medium-blogging","docId":"devops/ides/medium-blogging","unlisted":false},{"type":"link","label":"Obsidian + VS Code","href":"/devops/ides/obsidian-in-vscode","docId":"devops/ides/obsidian-in-vscode","unlisted":false},{"type":"link","label":"Obsidian","href":"/devops/ides/obsidian","docId":"devops/ides/obsidian","unlisted":false},{"type":"link","label":"OneNote","href":"/devops/ides/onenote","docId":"devops/ides/onenote","unlisted":false},{"type":"link","label":"Others","href":"/devops/ides/others","docId":"devops/ides/others","unlisted":false},{"type":"link","label":"PyCharm","href":"/devops/ides/pycharm","docId":"devops/ides/pycharm","unlisted":false},{"type":"link","label":"Spyder","href":"/devops/ides/spyder","docId":"devops/ides/spyder","unlisted":false},{"type":"link","label":"VSCode / VS Code","href":"/devops/ides/vscode-vs-code","docId":"devops/ides/vscode-vs-code","unlisted":false}],"href":"/devops/ides/"},{"type":"category","label":"Kubernetes","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"api-resources","href":"/devops/kubernetes/api-resources","docId":"devops/kubernetes/api-resources","unlisted":false},{"type":"link","label":"Architecture","href":"/devops/kubernetes/architecture","docId":"devops/kubernetes/architecture","unlisted":false},{"type":"category","label":"Cluster Administration","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Logging Architecture","href":"/devops/kubernetes/cluster-administration/logging-architecture","docId":"devops/kubernetes/cluster-administration/logging-architecture","unlisted":false},{"type":"link","label":"Others","href":"/devops/kubernetes/cluster-administration/others","docId":"devops/kubernetes/cluster-administration/others","unlisted":false}],"href":"/devops/kubernetes/cluster-administration/"},{"type":"category","label":"Concepts & Overview","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Configuration","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Secrets","href":"/devops/kubernetes/concepts-and-overview/configuration/secrets","docId":"devops/kubernetes/concepts-and-overview/configuration/secrets","unlisted":false}],"href":"/devops/kubernetes/concepts-and-overview/configuration/"},{"type":"link","label":"Policies","href":"/devops/kubernetes/concepts-and-overview/policies","docId":"devops/kubernetes/concepts-and-overview/policies","unlisted":false}],"href":"/devops/kubernetes/concepts-and-overview/"},{"type":"link","label":"Configuration","href":"/devops/kubernetes/configuration","docId":"devops/kubernetes/configuration","unlisted":false},{"type":"link","label":"Design Patterns","href":"/devops/kubernetes/design-patterns","docId":"devops/kubernetes/design-patterns","unlisted":false},{"type":"link","label":"Helm","href":"/devops/kubernetes/helm","docId":"devops/kubernetes/helm","unlisted":false},{"type":"link","label":"Intro","href":"/devops/kubernetes/intro","docId":"devops/kubernetes/intro","unlisted":false},{"type":"link","label":"KEDA","href":"/devops/kubernetes/keda","docId":"devops/kubernetes/keda","unlisted":false},{"type":"link","label":"kubectl Commands","href":"/devops/kubernetes/kubectl-commands","docId":"devops/kubernetes/kubectl-commands","unlisted":false},{"type":"link","label":"KubeEdge","href":"/devops/kubernetes/kubeedge","docId":"devops/kubernetes/kubeedge","unlisted":false},{"type":"link","label":"Kubernetes Manifests Examples","href":"/devops/kubernetes/kubernetes-manifests-examples","docId":"devops/kubernetes/kubernetes-manifests-examples","unlisted":false},{"type":"link","label":"Operators","href":"/devops/kubernetes/operators","docId":"devops/kubernetes/operators","unlisted":false},{"type":"link","label":"Optimizations","href":"/devops/kubernetes/optimizations","docId":"devops/kubernetes/optimizations","unlisted":false},{"type":"link","label":"Others","href":"/devops/kubernetes/others","docId":"devops/kubernetes/others","unlisted":false},{"type":"link","label":"Outline Documentation","href":"/devops/kubernetes/outline-documentation","docId":"devops/kubernetes/outline-documentation","unlisted":false},{"type":"category","label":"Reference","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Quality of Service (QoS)","href":"/devops/kubernetes/reference/quality-of-service-qos","docId":"devops/kubernetes/reference/quality-of-service-qos","unlisted":false},{"type":"link","label":"RBAC","href":"/devops/kubernetes/reference/rbac","docId":"devops/kubernetes/reference/rbac","unlisted":false}],"href":"/devops/kubernetes/reference/"},{"type":"category","label":"Services, LoadBalancing and Networking","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Ingress","href":"/devops/kubernetes/services-loadbalancing-and-networking/ingress","docId":"devops/kubernetes/services-loadbalancing-and-networking/ingress","unlisted":false},{"type":"link","label":"Others","href":"/devops/kubernetes/services-loadbalancing-and-networking/others","docId":"devops/kubernetes/services-loadbalancing-and-networking/others","unlisted":false},{"type":"link","label":"Services","href":"/devops/kubernetes/services-loadbalancing-and-networking/services","docId":"devops/kubernetes/services-loadbalancing-and-networking/services","unlisted":false}],"href":"/devops/kubernetes/services-loadbalancing-and-networking/"},{"type":"link","label":"Storage","href":"/devops/kubernetes/storage","docId":"devops/kubernetes/storage","unlisted":false},{"type":"link","label":"Tasks","href":"/devops/kubernetes/tasks","docId":"devops/kubernetes/tasks","unlisted":false},{"type":"link","label":"Kubernetes Scaling Tools","href":"/devops/kubernetes/tools-scaling","docId":"devops/kubernetes/tools-scaling","unlisted":false},{"type":"link","label":"Serverless Tools","href":"/devops/kubernetes/tools-serverless","docId":"devops/kubernetes/tools-serverless","unlisted":false},{"type":"link","label":"Tools","href":"/devops/kubernetes/tools","docId":"devops/kubernetes/tools","unlisted":false},{"type":"link","label":"Troubleshooting","href":"/devops/kubernetes/troubleshooting","docId":"devops/kubernetes/troubleshooting","unlisted":false},{"type":"category","label":"Workloads","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Controllers","href":"/devops/kubernetes/workloads/controllers","docId":"devops/kubernetes/workloads/controllers","unlisted":false},{"type":"link","label":"Others","href":"/devops/kubernetes/workloads/others","docId":"devops/kubernetes/workloads/others","unlisted":false},{"type":"link","label":"Pod Lifecycle","href":"/devops/kubernetes/workloads/pod-lifecycle","docId":"devops/kubernetes/workloads/pod-lifecycle","unlisted":false},{"type":"link","label":"Pods","href":"/devops/kubernetes/workloads/pods","docId":"devops/kubernetes/workloads/pods","unlisted":false}],"href":"/devops/kubernetes/workloads/"}],"href":"/devops/kubernetes/"},{"type":"category","label":"Monitoring","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Grafana Loki","href":"/devops/monitoring/grafana-loki","docId":"devops/monitoring/grafana-loki","unlisted":false},{"type":"link","label":"Grafana","href":"/devops/monitoring/grafana","docId":"devops/monitoring/grafana","unlisted":false},{"type":"link","label":"Graphite","href":"/devops/monitoring/graphite","docId":"devops/monitoring/graphite","unlisted":false},{"type":"category","label":"Istio","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture","href":"/devops/monitoring/istio/architecture","docId":"devops/monitoring/istio/architecture","unlisted":false},{"type":"link","label":"Commands","href":"/devops/monitoring/istio/commands","docId":"devops/monitoring/istio/commands","unlisted":false},{"type":"link","label":"Examples","href":"/devops/monitoring/istio/examples","docId":"devops/monitoring/istio/examples","unlisted":false},{"type":"link","label":"Istio","href":"/devops/monitoring/istio/intro","docId":"devops/monitoring/istio/intro","unlisted":false},{"type":"link","label":"Observability","href":"/devops/monitoring/istio/observability","docId":"devops/monitoring/istio/observability","unlisted":false},{"type":"link","label":"Operations","href":"/devops/monitoring/istio/operations","docId":"devops/monitoring/istio/operations","unlisted":false},{"type":"link","label":"Others","href":"/devops/monitoring/istio/others","docId":"devops/monitoring/istio/others","unlisted":false},{"type":"link","label":"Security","href":"/devops/monitoring/istio/security","docId":"devops/monitoring/istio/security","unlisted":false},{"type":"link","label":"Tasks","href":"/devops/monitoring/istio/tasks","docId":"devops/monitoring/istio/tasks","unlisted":false},{"type":"link","label":"Traffic Management","href":"/devops/monitoring/istio/traffic-management","docId":"devops/monitoring/istio/traffic-management","unlisted":false}],"href":"/devops/monitoring/istio/"},{"type":"link","label":"Linkerd","href":"/devops/monitoring/linkerd","docId":"devops/monitoring/linkerd","unlisted":false},{"type":"link","label":"Metrics","href":"/devops/monitoring/metrics","docId":"devops/monitoring/metrics","unlisted":false},{"type":"link","label":"Open Tracing","href":"/devops/monitoring/open-tracing","docId":"devops/monitoring/open-tracing","unlisted":false},{"type":"link","label":"Others","href":"/devops/monitoring/others","docId":"devops/monitoring/others","unlisted":false},{"type":"category","label":"Prometheus","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Alert Manager","href":"/devops/monitoring/prometheus/alert-manager","docId":"devops/monitoring/prometheus/alert-manager","unlisted":false},{"type":"link","label":"Prometheus","href":"/devops/monitoring/prometheus/intro","docId":"devops/monitoring/prometheus/intro","unlisted":false},{"type":"link","label":"Prometheus Architecture","href":"/devops/monitoring/prometheus/prometheus-architecture","docId":"devops/monitoring/prometheus/prometheus-architecture","unlisted":false},{"type":"link","label":"Querying","href":"/devops/monitoring/prometheus/querying","docId":"devops/monitoring/prometheus/querying","unlisted":false},{"type":"link","label":"Rules","href":"/devops/monitoring/prometheus/rules","docId":"devops/monitoring/prometheus/rules","unlisted":false}],"href":"/devops/monitoring/prometheus/"},{"type":"link","label":"Service Mesh","href":"/devops/monitoring/service-mesh","docId":"devops/monitoring/service-mesh","unlisted":false},{"type":"category","label":"Telegraf","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands & Configs","href":"/devops/monitoring/telegraf/commands-and-configs","docId":"devops/monitoring/telegraf/commands-and-configs","unlisted":false}],"href":"/devops/monitoring/telegraf/"}],"href":"/devops/monitoring/"},{"type":"category","label":"Other DevOps","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Backstage","href":"/devops/others/backstage","docId":"devops/others/backstage","unlisted":false},{"type":"link","label":"CoreSync, Pacemaker","href":"/devops/others/coresync-pacemaker","docId":"devops/others/coresync-pacemaker","unlisted":false},{"type":"link","label":"DevTron","href":"/devops/others/devtron","docId":"devops/others/devtron","unlisted":false},{"type":"link","label":"Jenkins","href":"/devops/others/jenkins","docId":"devops/others/jenkins","unlisted":false},{"type":"link","label":"KeyCloak","href":"/devops/others/keycloak","docId":"devops/others/keycloak","unlisted":false},{"type":"link","label":"Kong","href":"/devops/others/kong","docId":"devops/others/kong","unlisted":false},{"type":"link","label":"Other - CICD","href":"/devops/others/other-cicd","docId":"devops/others/other-cicd","unlisted":false},{"type":"link","label":"Other Tools","href":"/devops/others/other-tools","docId":"devops/others/other-tools","unlisted":false}],"href":"/devops/others/"},{"type":"category","label":"Servers","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Apache Server","href":"/devops/servers/apache-server","docId":"devops/servers/apache-server","unlisted":false},{"type":"link","label":"Gunicorn","href":"/devops/servers/gunicorn","docId":"devops/servers/gunicorn","unlisted":false},{"type":"category","label":"NGINX","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Configs","href":"/devops/servers/nginx/configs","docId":"devops/servers/nginx/configs","unlisted":false}],"href":"/devops/servers/nginx/"}],"href":"/devops/servers/"},{"type":"category","label":"Terminal Bash","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"(1) Linux General / Unix / Linux Commands","href":"/devops/terminal-bash/1-linux-general-unix-linux-commands","docId":"devops/terminal-bash/1-linux-general-unix-linux-commands","unlisted":false},{"type":"link","label":"(2) System Calls","href":"/devops/terminal-bash/2-system-calls","docId":"devops/terminal-bash/2-system-calls","unlisted":false},{"type":"link","label":"(3) Library Functions","href":"/devops/terminal-bash/3-library-functions","docId":"devops/terminal-bash/3-library-functions","unlisted":false},{"type":"link","label":"(8) Linux System Administration","href":"/devops/terminal-bash/8-linux-system-administration","docId":"devops/terminal-bash/8-linux-system-administration","unlisted":false},{"type":"link","label":"Bash Metacharacters","href":"/devops/terminal-bash/bash-metacharacters","docId":"devops/terminal-bash/bash-metacharacters","unlisted":false},{"type":"link","label":"Bash Shortcuts","href":"/devops/terminal-bash/bash-shortcuts","docId":"devops/terminal-bash/bash-shortcuts","unlisted":false},{"type":"link","label":"Manual Pages","href":"/devops/terminal-bash/manual-pages","docId":"devops/terminal-bash/manual-pages","unlisted":false},{"type":"link","label":"Networking tools","href":"/devops/terminal-bash/networking-tools","docId":"devops/terminal-bash/networking-tools","unlisted":false},{"type":"link","label":"Others","href":"/devops/terminal-bash/others","docId":"devops/terminal-bash/others","unlisted":false},{"type":"link","label":"Shell/bash Script","href":"/devops/terminal-bash/shell-bash-script","docId":"devops/terminal-bash/shell-bash-script","unlisted":false},{"type":"link","label":"Shell - Intro","href":"/devops/terminal-bash/shell-intro","docId":"devops/terminal-bash/shell-intro","unlisted":false},{"type":"link","label":"sysctl","href":"/devops/terminal-bash/sysctl","docId":"devops/terminal-bash/sysctl","unlisted":false},{"type":"link","label":"Tmux Iterm","href":"/devops/terminal-bash/tmux-iterm","docId":"devops/terminal-bash/tmux-iterm","unlisted":false},{"type":"category","label":"tools","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"AWK","href":"/devops/terminal-bash/tools/awk","docId":"devops/terminal-bash/tools/awk","unlisted":false},{"type":"link","label":"Crontab","href":"/devops/terminal-bash/tools/crontab","docId":"devops/terminal-bash/tools/crontab","unlisted":false},{"type":"link","label":"Curl","href":"/devops/terminal-bash/tools/curl","docId":"devops/terminal-bash/tools/curl","unlisted":false},{"type":"link","label":"Editors","href":"/devops/terminal-bash/tools/editors","docId":"devops/terminal-bash/tools/editors","unlisted":false},{"type":"link","label":"Mosh","href":"/devops/terminal-bash/tools/mosh","docId":"devops/terminal-bash/tools/mosh","unlisted":false},{"type":"link","label":"rsync / rclone","href":"/devops/terminal-bash/tools/rsync-rclone","docId":"devops/terminal-bash/tools/rsync-rclone","unlisted":false}]}],"href":"/devops/terminal-bash/"},{"type":"category","label":"Terraform","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/devops/terraform/commands","docId":"devops/terraform/commands","unlisted":false},{"type":"link","label":"Documentation","href":"/devops/terraform/documentation","docId":"devops/terraform/documentation","unlisted":false},{"type":"link","label":"Examples","href":"/devops/terraform/examples","docId":"devops/terraform/examples","unlisted":false},{"type":"link","label":"Variables","href":"/devops/terraform/variables","docId":"devops/terraform/variables","unlisted":false}],"href":"/devops/terraform/"}],"href":"/devops/"},{"type":"category","label":"Economics","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Accounting for Finance","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"0 Accounting for Finance","href":"/economics/accounting-for-finance/0-accounting-for-finance","docId":"economics/accounting-for-finance/0-accounting-for-finance","unlisted":false},{"type":"link","label":"1 Accounting First Steps","href":"/economics/accounting-for-finance/1-accounting-first-steps","docId":"economics/accounting-for-finance/1-accounting-first-steps","unlisted":false},{"type":"link","label":"2 Income Statements & Profitability Measures","href":"/economics/accounting-for-finance/2-income-statements-and-profitability-measures","docId":"economics/accounting-for-finance/2-income-statements-and-profitability-measures","unlisted":false},{"type":"link","label":"2A Income Statement Comparisons","href":"/economics/accounting-for-finance/2a-income-statement-comparisons","docId":"economics/accounting-for-finance/2a-income-statement-comparisons","unlisted":false},{"type":"link","label":"3 Balance Sheets","href":"/economics/accounting-for-finance/3-balance-sheets","docId":"economics/accounting-for-finance/3-balance-sheets","unlisted":false},{"type":"link","label":"3A: Balance Sheet Comparisons","href":"/economics/accounting-for-finance/3a-balance-sheet-comparisons","docId":"economics/accounting-for-finance/3a-balance-sheet-comparisons","unlisted":false},{"type":"link","label":"4: Cash Flow Statements - Cash In and Cash Out","href":"/economics/accounting-for-finance/4-cash-flow-statements-cash-in-and-cash-out","docId":"economics/accounting-for-finance/4-cash-flow-statements-cash-in-and-cash-out","unlisted":false},{"type":"link","label":"4A: Cash Flow Statement Comparisons","href":"/economics/accounting-for-finance/4a-cash-flow-statement-comparisons","docId":"economics/accounting-for-finance/4a-cash-flow-statement-comparisons","unlisted":false},{"type":"link","label":"5: Cleaning Up Accounting","href":"/economics/accounting-for-finance/5-cleaning-up-accounting","docId":"economics/accounting-for-finance/5-cleaning-up-accounting","unlisted":false},{"type":"link","label":"5A: Accounting Inconsistency Examples","href":"/economics/accounting-for-finance/5a-accounting-inconsistency-examples","docId":"economics/accounting-for-finance/5a-accounting-inconsistency-examples","unlisted":false},{"type":"link","label":"6: Accouting Financial Ratios - Profitability Measures","href":"/economics/accounting-for-finance/6-accouting-financial-ratios-profitability-measures","docId":"economics/accounting-for-finance/6-accouting-financial-ratios-profitability-measures","unlisted":false},{"type":"link","label":"6A: Ratio Analysis","href":"/economics/accounting-for-finance/6a-ratio-analysis","docId":"economics/accounting-for-finance/6a-ratio-analysis","unlisted":false}],"href":"/economics/accounting-for-finance/"},{"type":"link","label":"Buy Now Pay Later (BNPL)","href":"/economics/buy-now-pay-later-bnpl","docId":"economics/buy-now-pay-later-bnpl","unlisted":false},{"type":"category","label":"Corporate Finance","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Capital budgeting","href":"/economics/corporate-finance/capital-budgeting","docId":"economics/corporate-finance/capital-budgeting","unlisted":false},{"type":"link","label":"Corporate Actions","href":"/economics/corporate-finance/corporate-actions","docId":"economics/corporate-finance/corporate-actions","unlisted":false}],"href":"/economics/corporate-finance/"},{"type":"link","label":"Course - Investing Zerodha Varsity","href":"/economics/course-investing-zerodha-varsity","docId":"economics/course-investing-zerodha-varsity","unlisted":false},{"type":"category","label":"Finance / Investing","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Asset Classes","href":"/economics/finance-investing/asset-classes","docId":"economics/finance-investing/asset-classes","unlisted":false},{"type":"link","label":"Checklist / Tips","href":"/economics/finance-investing/checklist-tips","docId":"economics/finance-investing/checklist-tips","unlisted":false},{"type":"link","label":"Company Analysis","href":"/economics/finance-investing/company-analysis","docId":"economics/finance-investing/company-analysis","unlisted":false},{"type":"link","label":"Company\'s Management","href":"/economics/finance-investing/company-management","docId":"economics/finance-investing/company-management","unlisted":false},{"type":"link","label":"Financial Independence, Retire Early (FIRE)","href":"/economics/finance-investing/financial-independence-fire","docId":"economics/finance-investing/financial-independence-fire","unlisted":false},{"type":"link","label":"HUF / Private Trust","href":"/economics/finance-investing/huf-private-trust","docId":"economics/finance-investing/huf-private-trust","unlisted":false},{"type":"link","label":"Indian Company Types","href":"/economics/finance-investing/indian-company-types","docId":"economics/finance-investing/indian-company-types","unlisted":false},{"type":"link","label":"Industry Sectors","href":"/economics/finance-investing/industry-sectors","docId":"economics/finance-investing/industry-sectors","unlisted":false},{"type":"link","label":"Personal Finance","href":"/economics/finance-investing/personal-finance","docId":"economics/finance-investing/personal-finance","unlisted":false},{"type":"link","label":"Portfolio Management Services (PMS)","href":"/economics/finance-investing/portfolio-management-services-pms","docId":"economics/finance-investing/portfolio-management-services-pms","unlisted":false},{"type":"link","label":"Portfolios","href":"/economics/finance-investing/portfolios","docId":"economics/finance-investing/portfolios","unlisted":false},{"type":"link","label":"Quotes","href":"/economics/finance-investing/quotes","docId":"economics/finance-investing/quotes","unlisted":false},{"type":"link","label":"Returns / Tax / Taxes / ITR","href":"/economics/finance-investing/returns-tax-taxes-itr","docId":"economics/finance-investing/returns-tax-taxes-itr","unlisted":false},{"type":"link","label":"Stocks / Equity","href":"/economics/finance-investing/stocks-equity","docId":"economics/finance-investing/stocks-equity","unlisted":false}],"href":"/economics/finance-investing/"},{"type":"link","label":"Finance Terms","href":"/economics/finance-terms","docId":"economics/finance-terms","unlisted":false},{"type":"link","label":"Facts","href":"/economics/financial-facts","docId":"economics/financial-facts","unlisted":false},{"type":"link","label":"Fintech / NBFC / Banking Terms","href":"/economics/fintech-nbfc-banking-terms","docId":"economics/fintech-nbfc-banking-terms","unlisted":false},{"type":"link","label":"Government Terms","href":"/economics/government-terms","docId":"economics/government-terms","unlisted":false},{"type":"link","label":"Gross Domestic Product (GDP)","href":"/economics/gross-domestic-product-gdp","docId":"economics/gross-domestic-product-gdp","unlisted":false},{"type":"link","label":"Inflation Indexes","href":"/economics/inflation-indexes","docId":"economics/inflation-indexes","unlisted":false},{"type":"link","label":"Insurance","href":"/economics/insurance","docId":"economics/insurance","unlisted":false},{"type":"link","label":"Intro","href":"/economics/intro","docId":"economics/intro","unlisted":false},{"type":"link","label":"Investment Banking","href":"/economics/investment-banking","docId":"economics/investment-banking","unlisted":false},{"type":"link","label":"Investment Terms","href":"/economics/investment-terms","docId":"economics/investment-terms","unlisted":false},{"type":"link","label":"Learning","href":"/economics/learning","docId":"economics/learning","unlisted":false},{"type":"category","label":"Market Terms","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Fundamental Analysis","href":"/economics/market-terms/fundamental-analysis","docId":"economics/market-terms/fundamental-analysis","unlisted":false},{"type":"link","label":"Futures / Options / Trading","href":"/economics/market-terms/futures-options-trading","docId":"economics/market-terms/futures-options-trading","unlisted":false},{"type":"link","label":"IPO","href":"/economics/market-terms/ipo","docId":"economics/market-terms/ipo","unlisted":false},{"type":"link","label":"Others","href":"/economics/market-terms/others","docId":"economics/market-terms/others","unlisted":false},{"type":"link","label":"Swing Trading","href":"/economics/market-terms/swing-trading","docId":"economics/market-terms/swing-trading","unlisted":false},{"type":"link","label":"Technical Analysis","href":"/economics/market-terms/technical-analysis","docId":"economics/market-terms/technical-analysis","unlisted":false},{"type":"link","label":"Technical Indicators","href":"/economics/market-terms/technical-indicators","docId":"economics/market-terms/technical-indicators","unlisted":false},{"type":"link","label":"Valuation Metrics","href":"/economics/market-terms/valuation-metrics","docId":"economics/market-terms/valuation-metrics","unlisted":false},{"type":"link","label":"Wyckoff Method","href":"/economics/market-terms/wyckoff-method","docId":"economics/market-terms/wyckoff-method","unlisted":false}],"href":"/economics/market-terms/"},{"type":"category","label":"mental-models","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Economics Mental Models","href":"/economics/mental-models/economics-mental-models","docId":"economics/mental-models/economics-mental-models","unlisted":false},{"type":"link","label":"Inequality","href":"/economics/mental-models/inequality","docId":"economics/mental-models/inequality","unlisted":false},{"type":"link","label":"Macroeconomics","href":"/economics/mental-models/macroeconomics","docId":"economics/mental-models/macroeconomics","unlisted":false},{"type":"link","label":"Marginal Utility / Analysis","href":"/economics/mental-models/marginal-utility-analysis","docId":"economics/mental-models/marginal-utility-analysis","unlisted":false},{"type":"link","label":"Microeconomics","href":"/economics/mental-models/microeconomics","docId":"economics/mental-models/microeconomics","unlisted":false},{"type":"link","label":"Rankings","href":"/economics/mental-models/rankings","docId":"economics/mental-models/rankings","unlisted":false},{"type":"link","label":"Recession shapes (Recovery types)","href":"/economics/mental-models/recession-shapes-recovery","docId":"economics/mental-models/recession-shapes-recovery","unlisted":false}]},{"type":"link","label":"Monetary Policy","href":"/economics/monetary-policies","docId":"economics/monetary-policies","unlisted":false},{"type":"category","label":"Mutual Funds","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Debentures / Bonds","href":"/economics/mutual-funds/debentures-bonds","docId":"economics/mutual-funds/debentures-bonds","unlisted":false},{"type":"link","label":"Debt Mutual Funds Analysis","href":"/economics/mutual-funds/debt-mutual-funds-analysis","docId":"economics/mutual-funds/debt-mutual-funds-analysis","unlisted":false},{"type":"link","label":"Debt Mutual Funds Risks","href":"/economics/mutual-funds/debt-mutual-funds-risks","docId":"economics/mutual-funds/debt-mutual-funds-risks","unlisted":false},{"type":"link","label":"Debt Mutual Funds","href":"/economics/mutual-funds/debt-mutual-funds","docId":"economics/mutual-funds/debt-mutual-funds","unlisted":false},{"type":"link","label":"Equity Mutual Funds","href":"/economics/mutual-funds/equity-mutual-funds","docId":"economics/mutual-funds/equity-mutual-funds","unlisted":false},{"type":"link","label":"Fixed income","href":"/economics/mutual-funds/fixed-income","docId":"economics/mutual-funds/fixed-income","unlisted":false},{"type":"link","label":"Index Investing / ETF","href":"/economics/mutual-funds/index-investing-etf","docId":"economics/mutual-funds/index-investing-etf","unlisted":false},{"type":"link","label":"Mutual Funds Indicators","href":"/economics/mutual-funds/mutual-funds-indicators","docId":"economics/mutual-funds/mutual-funds-indicators","unlisted":false},{"type":"link","label":"Nifty Indexes / Indices","href":"/economics/mutual-funds/nifty-indexes-indices","docId":"economics/mutual-funds/nifty-indexes-indices","unlisted":false},{"type":"link","label":"Others","href":"/economics/mutual-funds/others","docId":"economics/mutual-funds/others","unlisted":false}],"href":"/economics/mutual-funds/"},{"type":"link","label":"Schools of Economic Thought","href":"/economics/schools-of-economic-thought","docId":"economics/schools-of-economic-thought","unlisted":false}],"href":"/economics/"},{"type":"category","label":"Frontend","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Frontend","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Design System","href":"/frontend/frontend-intro/design-system","docId":"frontend/frontend-intro/design-system","unlisted":false},{"type":"link","label":"Frontend Architecture","href":"/frontend/frontend-intro/frontend-architecture","docId":"frontend/frontend-intro/frontend-architecture","unlisted":false},{"type":"link","label":"Gestalt Principles","href":"/frontend/frontend-intro/gestalt-principles","docId":"frontend/frontend-intro/gestalt-principles","unlisted":false},{"type":"link","label":"Google Crawlers / Crawling","href":"/frontend/frontend-intro/google-crawlers-crawling","docId":"frontend/frontend-intro/google-crawlers-crawling","unlisted":false},{"type":"link","label":"Intro","href":"/frontend/frontend-intro/intro","docId":"frontend/frontend-intro/intro","unlisted":false},{"type":"link","label":"JAMstack / CMS","href":"/frontend/frontend-intro/jamstack-cms","docId":"frontend/frontend-intro/jamstack-cms","unlisted":false},{"type":"link","label":"Microfrontend Architecture","href":"/frontend/frontend-intro/microfrontend-architecture","docId":"frontend/frontend-intro/microfrontend-architecture","unlisted":false},{"type":"link","label":"Others","href":"/frontend/frontend-intro/others","docId":"frontend/frontend-intro/others","unlisted":false},{"type":"link","label":"Performance","href":"/frontend/frontend-intro/performance","docId":"frontend/frontend-intro/performance","unlisted":false},{"type":"link","label":"PWA: Progressive Web Apps","href":"/frontend/frontend-intro/pwa","docId":"frontend/frontend-intro/pwa","unlisted":false},{"type":"link","label":"SEO / ASO","href":"/frontend/frontend-intro/seo-aso","docId":"frontend/frontend-intro/seo-aso","unlisted":false},{"type":"link","label":"UI / UX / IxD / Design / Frontend","href":"/frontend/frontend-intro/ui-ux-ixd-design-frontend","docId":"frontend/frontend-intro/ui-ux-ixd-design-frontend","unlisted":false},{"type":"link","label":"Web Vitals","href":"/frontend/frontend-intro/web-vitals","docId":"frontend/frontend-intro/web-vitals","unlisted":false},{"type":"link","label":"Wordpress","href":"/frontend/frontend-intro/wordpress","docId":"frontend/frontend-intro/wordpress","unlisted":false}],"href":"/frontend/frontend-intro/"},{"type":"category","label":"HTML-CSS","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Component Libraries","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Components","href":"/frontend/html-css/component-libraries/components","docId":"frontend/html-css/component-libraries/components","unlisted":false},{"type":"link","label":"Others","href":"/frontend/html-css/component-libraries/others","docId":"frontend/html-css/component-libraries/others","unlisted":false}],"href":"/frontend/html-css/component-libraries/"},{"type":"category","label":"CSS Intro","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Centering","href":"/frontend/html-css/css-intro/centering","docId":"frontend/html-css/css-intro/centering","unlisted":false},{"type":"link","label":"CSS Positions","href":"/frontend/html-css/css-intro/css-positions","docId":"frontend/html-css/css-intro/css-positions","unlisted":false},{"type":"link","label":"CSS Transitions","href":"/frontend/html-css/css-intro/css-transitions","docId":"frontend/html-css/css-intro/css-transitions","unlisted":false},{"type":"link","label":"Mastering CSS","href":"/frontend/html-css/css-intro/mastering-css","docId":"frontend/html-css/css-intro/mastering-css","unlisted":false},{"type":"link","label":"Others","href":"/frontend/html-css/css-intro/others","docId":"frontend/html-css/css-intro/others","unlisted":false}],"href":"/frontend/html-css/css-intro/"},{"type":"category","label":"HTML Intro","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"HTML Entities / Attributes","href":"/frontend/html-css/html-intro/html-entities-attributes","docId":"frontend/html-css/html-intro/html-entities-attributes","unlisted":false},{"type":"link","label":"Tags","href":"/frontend/html-css/html-intro/tags","docId":"frontend/html-css/html-intro/tags","unlisted":false}],"href":"/frontend/html-css/html-intro/"}],"href":"/frontend/html-css/"},{"type":"category","label":"Javascript","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Basic","href":"/frontend/js-javascript/basic","docId":"frontend/js-javascript/basic","unlisted":false},{"type":"link","label":"Intro","href":"/frontend/js-javascript/intro","docId":"frontend/js-javascript/intro","unlisted":false},{"type":"link","label":"Libraries","href":"/frontend/js-javascript/libraries","docId":"frontend/js-javascript/libraries","unlisted":false},{"type":"link","label":"Others","href":"/frontend/js-javascript/others","docId":"frontend/js-javascript/others","unlisted":false},{"type":"link","label":"Promises","href":"/frontend/js-javascript/promises","docId":"frontend/js-javascript/promises","unlisted":false},{"type":"link","label":"Questions","href":"/frontend/js-javascript/questions","docId":"frontend/js-javascript/questions","unlisted":false},{"type":"link","label":"TypeScript","href":"/frontend/js-javascript/typescript","docId":"frontend/js-javascript/typescript","unlisted":false},{"type":"link","label":"Web API","href":"/frontend/js-javascript/web-api","docId":"frontend/js-javascript/web-api","unlisted":false}],"href":"/frontend/js-javascript/"},{"type":"category","label":"Others","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"AngularJS","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"1. Intro","href":"/frontend/others/angularjs/01-intro","docId":"frontend/others/angularjs/01-intro","unlisted":false},{"type":"link","label":"3. Modules","href":"/frontend/others/angularjs/03-modules","docId":"frontend/others/angularjs/03-modules","unlisted":false},{"type":"link","label":"6. Components","href":"/frontend/others/angularjs/06-components","docId":"frontend/others/angularjs/06-components","unlisted":false},{"type":"link","label":"8. Metadata","href":"/frontend/others/angularjs/08-metadata","docId":"frontend/others/angularjs/08-metadata","unlisted":false},{"type":"link","label":"9. Data Binding","href":"/frontend/others/angularjs/09-data-binding","docId":"frontend/others/angularjs/09-data-binding","unlisted":false},{"type":"link","label":"10. Directives","href":"/frontend/others/angularjs/10-directives","docId":"frontend/others/angularjs/10-directives","unlisted":false},{"type":"link","label":"11. Services","href":"/frontend/others/angularjs/11-services","docId":"frontend/others/angularjs/11-services","unlisted":false},{"type":"link","label":"12. Dependency Injection","href":"/frontend/others/angularjs/12-dependency-injection","docId":"frontend/others/angularjs/12-dependency-injection","unlisted":false},{"type":"link","label":"AngularJS","href":"/frontend/others/angularjs/intro","docId":"frontend/others/angularjs/intro","unlisted":false},{"type":"link","label":"Tour of Heroes","href":"/frontend/others/angularjs/tour-of-heroes","docId":"frontend/others/angularjs/tour-of-heroes","unlisted":false}],"href":"/frontend/others/angularjs/"},{"type":"link","label":"Docusaurus","href":"/frontend/others/docusaurus","docId":"frontend/others/docusaurus","unlisted":false},{"type":"link","label":"Frontend Frameworks","href":"/frontend/others/frontend-frameworks","docId":"frontend/others/frontend-frameworks","unlisted":false},{"type":"link","label":"Gatsby","href":"/frontend/others/gatsby","docId":"frontend/others/gatsby","unlisted":false},{"type":"link","label":"JQuery","href":"/frontend/others/jquery","docId":"frontend/others/jquery","unlisted":false},{"type":"category","label":"NestJs","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Documentation","href":"/frontend/others/nestjs/documentation","docId":"frontend/others/nestjs/documentation","unlisted":false}],"href":"/frontend/others/nestjs/"},{"type":"category","label":"NextJS","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Data Fetching","href":"/frontend/others/nextjs/data-fetching","docId":"frontend/others/nextjs/data-fetching","unlisted":false},{"type":"link","label":"Others","href":"/frontend/others/nextjs/others","docId":"frontend/others/nextjs/others","unlisted":false}],"href":"/frontend/others/nextjs/"},{"type":"category","label":"Nodejs","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Libraries","href":"/frontend/others/nodejs/libraries","docId":"frontend/others/nodejs/libraries","unlisted":false},{"type":"link","label":"Nodejs Frameworks","href":"/frontend/others/nodejs/nodejs-frameworks","docId":"frontend/others/nodejs/nodejs-frameworks","unlisted":false},{"type":"link","label":"npm commands","href":"/frontend/others/nodejs/npm-commands","docId":"frontend/others/nodejs/npm-commands","unlisted":false}],"href":"/frontend/others/nodejs/"},{"type":"link","label":"Static Site Generators","href":"/frontend/others/static-site-generators","docId":"frontend/others/static-site-generators","unlisted":false}],"href":"/frontend/others/"},{"type":"category","label":"React","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Code / Commands / Snippets","href":"/frontend/react/code-commands-snippets","docId":"frontend/react/code-commands-snippets","unlisted":false},{"type":"link","label":"Components","href":"/frontend/react/components","docId":"frontend/react/components","unlisted":false},{"type":"link","label":"Course","href":"/frontend/react/course","docId":"frontend/react/course","unlisted":false},{"type":"link","label":"Docs","href":"/frontend/react/docs","docId":"frontend/react/docs","unlisted":false},{"type":"link","label":"Events","href":"/frontend/react/events","docId":"frontend/react/events","unlisted":false},{"type":"link","label":"Hooks","href":"/frontend/react/hooks","docId":"frontend/react/hooks","unlisted":false},{"type":"link","label":"Intro","href":"/frontend/react/intro","docId":"frontend/react/intro","unlisted":false},{"type":"link","label":"JSX","href":"/frontend/react/jsx","docId":"frontend/react/jsx","unlisted":false},{"type":"link","label":"Libraries","href":"/frontend/react/libraries","docId":"frontend/react/libraries","unlisted":false},{"type":"link","label":"Mordern React with Redux","href":"/frontend/react/mordern-react-with-redux","docId":"frontend/react/mordern-react-with-redux","unlisted":false},{"type":"link","label":"React admin / Templates","href":"/frontend/react/react-admin-templates","docId":"frontend/react/react-admin-templates","unlisted":false},{"type":"link","label":"React DOM","href":"/frontend/react/react-dom","docId":"frontend/react/react-dom","unlisted":false},{"type":"link","label":"React Native","href":"/frontend/react/react-native","docId":"frontend/react/react-native","unlisted":false},{"type":"link","label":"React Router","href":"/frontend/react/react-router","docId":"frontend/react/react-router","unlisted":false},{"type":"link","label":"Redux","href":"/frontend/react/redux","docId":"frontend/react/redux","unlisted":false},{"type":"link","label":"State","href":"/frontend/react/state","docId":"frontend/react/state","unlisted":false},{"type":"link","label":"Tools","href":"/frontend/react/tools","docId":"frontend/react/tools","unlisted":false}],"href":"/frontend/react/"}],"href":"/frontend/"},{"type":"category","label":"Knowledge","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Applied Sciences","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Chemical Engineering","href":"/knowledge/applied-sciences/chemical-engineering","docId":"knowledge/applied-sciences/chemical-engineering","unlisted":false},{"type":"link","label":"Civil Engineering","href":"/knowledge/applied-sciences/civil-engineering","docId":"knowledge/applied-sciences/civil-engineering","unlisted":false},{"type":"link","label":"Control Engineering","href":"/knowledge/applied-sciences/control-engineering","docId":"knowledge/applied-sciences/control-engineering","unlisted":false},{"type":"link","label":"Crash Course Engineering","href":"/knowledge/applied-sciences/crash-course-engineering","docId":"knowledge/applied-sciences/crash-course-engineering","unlisted":false},{"type":"link","label":"Electrical Engineering","href":"/knowledge/applied-sciences/electrical-engineering","docId":"knowledge/applied-sciences/electrical-engineering","unlisted":false},{"type":"link","label":"Embedded Systems / Electronics","href":"/knowledge/applied-sciences/embedded-systems-electronics","docId":"knowledge/applied-sciences/embedded-systems-electronics","unlisted":false},{"type":"link","label":"HVAC Systems","href":"/knowledge/applied-sciences/hvac-systems","docId":"knowledge/applied-sciences/hvac-systems","unlisted":false},{"type":"link","label":"Mechanical Engineering","href":"/knowledge/applied-sciences/mechanical-engineering","docId":"knowledge/applied-sciences/mechanical-engineering","unlisted":false},{"type":"link","label":"Others / Power / Energy","href":"/knowledge/applied-sciences/others-power-energy","docId":"knowledge/applied-sciences/others-power-energy","unlisted":false}],"href":"/knowledge/applied-sciences/"},{"type":"category","label":"Biology","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Alternative Medicine","href":"/knowledge/biology/alternative-medicine","docId":"knowledge/biology/alternative-medicine","unlisted":false},{"type":"link","label":"Digestive System","href":"/knowledge/biology/digestive-system","docId":"knowledge/biology/digestive-system","unlisted":false},{"type":"link","label":"Diseases / Tests","href":"/knowledge/biology/diseases-tests","docId":"knowledge/biology/diseases-tests","unlisted":false},{"type":"category","label":"Exercise / Stretching","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"GYM Nutrition","href":"/knowledge/biology/exercise-stretching/gym-nutrition","docId":"knowledge/biology/exercise-stretching/gym-nutrition","unlisted":false},{"type":"link","label":"Gym Routine","href":"/knowledge/biology/exercise-stretching/gym-routine","docId":"knowledge/biology/exercise-stretching/gym-routine","unlisted":false},{"type":"link","label":"Gym","href":"/knowledge/biology/exercise-stretching/gym","docId":"knowledge/biology/exercise-stretching/gym","unlisted":false},{"type":"link","label":"Home Exercise Routine","href":"/knowledge/biology/exercise-stretching/home-exercise-routine","docId":"knowledge/biology/exercise-stretching/home-exercise-routine","unlisted":false},{"type":"link","label":"Home + Gym","href":"/knowledge/biology/exercise-stretching/home-gym","docId":"knowledge/biology/exercise-stretching/home-gym","unlisted":false},{"type":"link","label":"Exercise / Stretching","href":"/knowledge/biology/exercise-stretching/intro","docId":"knowledge/biology/exercise-stretching/intro","unlisted":false}],"href":"/knowledge/biology/exercise-stretching/"},{"type":"link","label":"Genetics","href":"/knowledge/biology/genetics","docId":"knowledge/biology/genetics","unlisted":false},{"type":"link","label":"Human Skeleton","href":"/knowledge/biology/human-skeleton","docId":"knowledge/biology/human-skeleton","unlisted":false},{"type":"link","label":"Biology","href":"/knowledge/biology/intro","docId":"knowledge/biology/intro","unlisted":false},{"type":"link","label":"MBBS / Medicine / Medical / Health","href":"/knowledge/biology/mbbs-medicine-medical-health","docId":"knowledge/biology/mbbs-medicine-medical-health","unlisted":false},{"type":"link","label":"Muscles","href":"/knowledge/biology/muscles","docId":"knowledge/biology/muscles","unlisted":false},{"type":"link","label":"Nerves System","href":"/knowledge/biology/nerves-system","docId":"knowledge/biology/nerves-system","unlisted":false},{"type":"category","label":"Nutrition","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Chart","href":"/knowledge/biology/nutrition/chart","docId":"knowledge/biology/nutrition/chart","unlisted":false},{"type":"link","label":"Daily Requirements","href":"/knowledge/biology/nutrition/daily-requirements","docId":"knowledge/biology/nutrition/daily-requirements","unlisted":false},{"type":"link","label":"Diet","href":"/knowledge/biology/nutrition/diet","docId":"knowledge/biology/nutrition/diet","unlisted":false},{"type":"link","label":"Ecology","href":"/knowledge/biology/nutrition/ecology","docId":"knowledge/biology/nutrition/ecology","unlisted":false},{"type":"link","label":"Essentiality","href":"/knowledge/biology/nutrition/essentiality","docId":"knowledge/biology/nutrition/essentiality","unlisted":false},{"type":"link","label":"Fatigue","href":"/knowledge/biology/nutrition/fatigue","docId":"knowledge/biology/nutrition/fatigue","unlisted":false},{"type":"link","label":"Food","href":"/knowledge/biology/nutrition/food","docId":"knowledge/biology/nutrition/food","unlisted":false},{"type":"link","label":"Honey","href":"/knowledge/biology/nutrition/honey","docId":"knowledge/biology/nutrition/honey","unlisted":false},{"type":"link","label":"Nutrition","href":"/knowledge/biology/nutrition/intro","docId":"knowledge/biology/nutrition/intro","unlisted":false},{"type":"link","label":"Plants / Gardening","href":"/knowledge/biology/nutrition/plants-gardening","docId":"knowledge/biology/nutrition/plants-gardening","unlisted":false},{"type":"link","label":"Pulses / Daal / Lentils","href":"/knowledge/biology/nutrition/pulses-daal-lentils","docId":"knowledge/biology/nutrition/pulses-daal-lentils","unlisted":false},{"type":"link","label":"Recipe","href":"/knowledge/biology/nutrition/recipe","docId":"knowledge/biology/nutrition/recipe","unlisted":false}],"href":"/knowledge/biology/nutrition/"},{"type":"link","label":"Omics","href":"/knowledge/biology/omics","docId":"knowledge/biology/omics","unlisted":false},{"type":"link","label":"Organ Systems","href":"/knowledge/biology/organ-systems","docId":"knowledge/biology/organ-systems","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/biology/others","docId":"knowledge/biology/others","unlisted":false},{"type":"link","label":"Pregnancy / Baby","href":"/knowledge/biology/pregnancy-baby","docId":"knowledge/biology/pregnancy-baby","unlisted":false}],"href":"/knowledge/biology/"},{"type":"category","label":"Games","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Chess","href":"/knowledge/games/chess","docId":"knowledge/games/chess","unlisted":false},{"type":"link","label":"Couple Activities","href":"/knowledge/games/couple-activities","docId":"knowledge/games/couple-activities","unlisted":false},{"type":"link","label":"Family Games / Gifts","href":"/knowledge/games/family-games-gifts","docId":"knowledge/games/family-games-gifts","unlisted":false},{"type":"link","label":"Marathon / Running","href":"/knowledge/games/marathon-running","docId":"knowledge/games/marathon-running","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/games/others","docId":"knowledge/games/others","unlisted":false},{"type":"link","label":"Rubix Rubics Cube","href":"/knowledge/games/rubix-rubics-cube","docId":"knowledge/games/rubix-rubics-cube","unlisted":false},{"type":"link","label":"Skiing / Sking","href":"/knowledge/games/skiing-sking","docId":"knowledge/games/skiing-sking","unlisted":false},{"type":"link","label":"Sudoku Techniques","href":"/knowledge/games/sudoku-techniques","docId":"knowledge/games/sudoku-techniques","unlisted":false},{"type":"link","label":"Swimming","href":"/knowledge/games/swimming","docId":"knowledge/games/swimming","unlisted":false},{"type":"link","label":"Touch Typing","href":"/knowledge/games/touch-typing","docId":"knowledge/games/touch-typing","unlisted":false}],"href":"/knowledge/games/"},{"type":"category","label":"General","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Important Dates / Timelines","href":"/knowledge/general/important-dates-timelines","docId":"knowledge/general/important-dates-timelines","unlisted":false},{"type":"link","label":"Intro","href":"/knowledge/general/intro","docId":"knowledge/general/intro","unlisted":false},{"type":"link","label":"Knowledge of Humanity","href":"/knowledge/general/knowledge-of-humanity","docId":"knowledge/general/knowledge-of-humanity","unlisted":false},{"type":"link","label":"Mental Models","href":"/knowledge/general/mental-models","docId":"knowledge/general/mental-models","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/general/others","docId":"knowledge/general/others","unlisted":false},{"type":"link","label":"Outline of Knowledge","href":"/knowledge/general/outline-of-knowledge","docId":"knowledge/general/outline-of-knowledge","unlisted":false},{"type":"link","label":"Science","href":"/knowledge/general/science","docId":"knowledge/general/science","unlisted":false}],"href":"/knowledge/general/"},{"type":"category","label":"Geography","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Continents","href":"/knowledge/geography/continents","docId":"knowledge/geography/continents","unlisted":false},{"type":"link","label":"Countries","href":"/knowledge/geography/countries","docId":"knowledge/geography/countries","unlisted":false},{"type":"link","label":"Home / House Building","href":"/knowledge/geography/home-house-building","docId":"knowledge/geography/home-house-building","unlisted":false},{"type":"link","label":"India","href":"/knowledge/geography/india","docId":"knowledge/geography/india","unlisted":false},{"type":"link","label":"Indian States and UTs","href":"/knowledge/geography/indian-states-and-uts","docId":"knowledge/geography/indian-states-and-uts","unlisted":false},{"type":"link","label":"Living","href":"/knowledge/geography/living","docId":"knowledge/geography/living","unlisted":false},{"type":"link","label":"New Home / Place Buying / House","href":"/knowledge/geography/new-home-place-house","docId":"knowledge/geography/new-home-place-house","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/geography/others","docId":"knowledge/geography/others","unlisted":false},{"type":"link","label":"Rivers","href":"/knowledge/geography/rivers","docId":"knowledge/geography/rivers","unlisted":false},{"type":"link","label":"Wildlife","href":"/knowledge/geography/wildlife","docId":"knowledge/geography/wildlife","unlisted":false}],"href":"/knowledge/geography/"},{"type":"category","label":"History","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Crash Course History of Science","href":"/knowledge/history/crash-course-history-of-science","docId":"knowledge/history/crash-course-history-of-science","unlisted":false},{"type":"link","label":"Crash Course World History","href":"/knowledge/history/crash-course-world-history","docId":"knowledge/history/crash-course-world-history","unlisted":false},{"type":"link","label":"Histomap","href":"/knowledge/history/histomap","docId":"knowledge/history/histomap","unlisted":false},{"type":"link","label":"Human History / Anthropology","href":"/knowledge/history/human-history-anthropology","docId":"knowledge/history/human-history-anthropology","unlisted":false},{"type":"link","label":"Indian History Timeline","href":"/knowledge/history/indian-history-timeline","docId":"knowledge/history/indian-history-timeline","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/history/others","docId":"knowledge/history/others","unlisted":false},{"type":"link","label":"Religion","href":"/knowledge/history/religion","docId":"knowledge/history/religion","unlisted":false}],"href":"/knowledge/history/"},{"type":"category","label":"Language","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Figures of Speech","href":"/knowledge/language/figures-of-speech","docId":"knowledge/language/figures-of-speech","unlisted":false},{"type":"link","label":"General","href":"/knowledge/language/general","docId":"knowledge/language/general","unlisted":false},{"type":"link","label":"Grammer / Vocabulary","href":"/knowledge/language/grammer-vocabulary","docId":"knowledge/language/grammer-vocabulary","unlisted":false},{"type":"link","label":"Languages Others","href":"/knowledge/language/languages-others","docId":"knowledge/language/languages-others","unlisted":false},{"type":"link","label":"Linguistics","href":"/knowledge/language/linguistics","docId":"knowledge/language/linguistics","unlisted":false},{"type":"link","label":"Mistakes","href":"/knowledge/language/mistakes","docId":"knowledge/language/mistakes","unlisted":false},{"type":"link","label":"Parts of Speech","href":"/knowledge/language/parts-of-speech","docId":"knowledge/language/parts-of-speech","unlisted":false},{"type":"link","label":"Spanish","href":"/knowledge/language/spanish","docId":"knowledge/language/spanish","unlisted":false}],"href":"/knowledge/language/"},{"type":"category","label":"Law","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"constitution-of-india","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Constitution of India","href":"/knowledge/law/constitution-of-india/constitution","docId":"knowledge/law/constitution-of-india/constitution","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/law/constitution-of-india/others","docId":"knowledge/law/constitution-of-india/others","unlisted":false},{"type":"link","label":"Schedules","href":"/knowledge/law/constitution-of-india/schedules","docId":"knowledge/law/constitution-of-india/schedules","unlisted":false}]},{"type":"link","label":"Judgements 2023","href":"/knowledge/law/judgements-2023","docId":"knowledge/law/judgements-2023","unlisted":false},{"type":"link","label":"Laws","href":"/knowledge/law/laws","docId":"knowledge/law/laws","unlisted":false},{"type":"link","label":"LSAT","href":"/knowledge/law/lsat","docId":"knowledge/law/lsat","unlisted":false},{"type":"link","label":"MCAT","href":"/knowledge/law/mcat","docId":"knowledge/law/mcat","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/law/others","docId":"knowledge/law/others","unlisted":false}],"href":"/knowledge/law/"},{"type":"link","label":"Links","href":"/knowledge/links","docId":"knowledge/links","unlisted":false},{"type":"category","label":"Others","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Chemistry","href":"/knowledge/others/chemistry-outline","docId":"knowledge/others/chemistry-outline","unlisted":false},{"type":"link","label":"Climate Change","href":"/knowledge/others/climate-change","docId":"knowledge/others/climate-change","unlisted":false},{"type":"link","label":"Cloth Fibers / Textiles","href":"/knowledge/others/clothes-textiles","docId":"knowledge/others/clothes-textiles","unlisted":false},{"type":"link","label":"Education / PhD","href":"/knowledge/others/education-phd","docId":"knowledge/others/education-phd","unlisted":false},{"type":"link","label":"International Relations IR","href":"/knowledge/others/international-relations-ir","docId":"knowledge/others/international-relations-ir","unlisted":false},{"type":"link","label":"Mythology","href":"/knowledge/others/mythology","docId":"knowledge/others/mythology","unlisted":false},{"type":"link","label":"News / Problems","href":"/knowledge/others/news-problems","docId":"knowledge/others/news-problems","unlisted":false},{"type":"link","label":"Philosophy","href":"/knowledge/others/philosophy","docId":"knowledge/others/philosophy","unlisted":false},{"type":"category","label":"Politics","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"India Polity","href":"/knowledge/others/politics/indian-polity","docId":"knowledge/others/politics/indian-polity","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/others/politics/others","docId":"knowledge/others/politics/others","unlisted":false},{"type":"link","label":"Types of Governments","href":"/knowledge/others/politics/types-of-governments","docId":"knowledge/others/politics/types-of-governments","unlisted":false}],"href":"/knowledge/others/politics/"},{"type":"link","label":"Others","href":"/knowledge/others/","docId":"knowledge/others/readme","unlisted":false}],"href":"/knowledge/others/"},{"type":"category","label":"Physics","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Astronomy","href":"/knowledge/physics/astronomy","docId":"knowledge/physics/astronomy","unlisted":false},{"type":"link","label":"Crash Course Physics","href":"/knowledge/physics/crash-course-physics","docId":"knowledge/physics/crash-course-physics","unlisted":false},{"type":"link","label":"Intro","href":"/knowledge/physics/intro","docId":"knowledge/physics/intro","unlisted":false},{"type":"link","label":"Khan Academy Physics","href":"/knowledge/physics/khan-academy-physics","docId":"knowledge/physics/khan-academy-physics","unlisted":false},{"type":"link","label":"Others","href":"/knowledge/physics/others","docId":"knowledge/physics/others","unlisted":false}],"href":"/knowledge/physics/"},{"type":"category","label":"Quotes Proverbs","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Business / Management","href":"/knowledge/quotes-proverbs/business-management","docId":"knowledge/quotes-proverbs/business-management","unlisted":false},{"type":"link","label":"Coding","href":"/knowledge/quotes-proverbs/coding","docId":"knowledge/quotes-proverbs/coding","unlisted":false},{"type":"link","label":"Funny","href":"/knowledge/quotes-proverbs/funny","docId":"knowledge/quotes-proverbs/funny","unlisted":false},{"type":"link","label":"Habits","href":"/knowledge/quotes-proverbs/habits","docId":"knowledge/quotes-proverbs/habits","unlisted":false},{"type":"link","label":"Hindi","href":"/knowledge/quotes-proverbs/hindi","docId":"knowledge/quotes-proverbs/hindi","unlisted":false},{"type":"link","label":"Life","href":"/knowledge/quotes-proverbs/life","docId":"knowledge/quotes-proverbs/life","unlisted":false},{"type":"link","label":"Motivation","href":"/knowledge/quotes-proverbs/motivation","docId":"knowledge/quotes-proverbs/motivation","unlisted":false},{"type":"link","label":"My Quotes","href":"/knowledge/quotes-proverbs/my-quotes","docId":"knowledge/quotes-proverbs/my-quotes","unlisted":false},{"type":"link","label":"Poems","href":"/knowledge/quotes-proverbs/poems","docId":"knowledge/quotes-proverbs/poems","unlisted":false},{"type":"link","label":"Science","href":"/knowledge/quotes-proverbs/science","docId":"knowledge/quotes-proverbs/science","unlisted":false},{"type":"link","label":"Stories","href":"/knowledge/quotes-proverbs/stories","docId":"knowledge/quotes-proverbs/stories","unlisted":false},{"type":"link","label":"Tatoos Quotes","href":"/knowledge/quotes-proverbs/tatoos-quotes","docId":"knowledge/quotes-proverbs/tatoos-quotes","unlisted":false},{"type":"link","label":"Tips","href":"/knowledge/quotes-proverbs/tips","docId":"knowledge/quotes-proverbs/tips","unlisted":false}],"href":"/knowledge/quotes-proverbs/"},{"type":"link","label":"Youtube / Podcasts / Magazine / Apps","href":"/knowledge/youtube-podcasts-magazine-apps","docId":"knowledge/youtube-podcasts-magazine-apps","unlisted":false}],"href":"/knowledge/"},{"type":"category","label":"Languages","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"C++","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Constructor","href":"/languages/c++/constructor","docId":"languages/c++/constructor","unlisted":false},{"type":"link","label":"Frameworks","href":"/languages/c++/frameworks","docId":"languages/c++/frameworks","unlisted":false},{"type":"link","label":"Friend Function","href":"/languages/c++/friend-function","docId":"languages/c++/friend-function","unlisted":false},{"type":"link","label":"Header files","href":"/languages/c++/header-files","docId":"languages/c++/header-files","unlisted":false},{"type":"link","label":"Intro","href":"/languages/c++/intro","docId":"languages/c++/intro","unlisted":false},{"type":"link","label":"IO","href":"/languages/c++/io","docId":"languages/c++/io","unlisted":false},{"type":"link","label":"Others","href":"/languages/c++/others","docId":"languages/c++/others","unlisted":false},{"type":"link","label":"printf","href":"/languages/c++/printf","docId":"languages/c++/printf","unlisted":false},{"type":"link","label":"STL Containers","href":"/languages/c++/stl-containers","docId":"languages/c++/stl-containers","unlisted":false},{"type":"link","label":"STL Iterators Algorithms","href":"/languages/c++/stl-iterators-algorithms","docId":"languages/c++/stl-iterators-algorithms","unlisted":false},{"type":"link","label":"Storage classes","href":"/languages/c++/storage-classes","docId":"languages/c++/storage-classes","unlisted":false},{"type":"link","label":"TC++PL4","href":"/languages/c++/tc-pl4","docId":"languages/c++/tc-pl4","unlisted":false},{"type":"link","label":"Templates","href":"/languages/c++/templates","docId":"languages/c++/templates","unlisted":false}],"href":"/languages/c++/"},{"type":"category","label":"Frameworks","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Android","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Jetpack","href":"/languages/frameworks/android/jetpack","docId":"languages/frameworks/android/jetpack","unlisted":false},{"type":"link","label":"Kotlin","href":"/languages/frameworks/android/kotlin","docId":"languages/frameworks/android/kotlin","unlisted":false},{"type":"link","label":"Questions","href":"/languages/frameworks/android/questions","docId":"languages/frameworks/android/questions","unlisted":false},{"type":"link","label":"Service","href":"/languages/frameworks/android/service","docId":"languages/frameworks/android/service","unlisted":false},{"type":"link","label":"Testing","href":"/languages/frameworks/android/testing","docId":"languages/frameworks/android/testing","unlisted":false},{"type":"link","label":"Tools","href":"/languages/frameworks/android/tools","docId":"languages/frameworks/android/tools","unlisted":false}],"href":"/languages/frameworks/android/"},{"type":"link","label":"Comparison","href":"/languages/frameworks/comparison","docId":"languages/frameworks/comparison","unlisted":false},{"type":"link","label":"Dash","href":"/languages/frameworks/dash","docId":"languages/frameworks/dash","unlisted":false},{"type":"link","label":"Flutter","href":"/languages/frameworks/flutter","docId":"languages/frameworks/flutter","unlisted":false},{"type":"link","label":"Intro","href":"/languages/frameworks/intro","docId":"languages/frameworks/intro","unlisted":false},{"type":"link","label":"iOS","href":"/languages/frameworks/ios","docId":"languages/frameworks/ios","unlisted":false},{"type":"link","label":"Masonite","href":"/languages/frameworks/masonite","docId":"languages/frameworks/masonite","unlisted":false},{"type":"link","label":"Others","href":"/languages/frameworks/others","docId":"languages/frameworks/others","unlisted":false},{"type":"link","label":"Server Driven Mobile UIs","href":"/languages/frameworks/server-driven-mobile-uis","docId":"languages/frameworks/server-driven-mobile-uis","unlisted":false},{"type":"link","label":"Stacks","href":"/languages/frameworks/stacks","docId":"languages/frameworks/stacks","unlisted":false}],"href":"/languages/frameworks/"},{"type":"category","label":"golang","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Concepts","href":"/languages/golang/concepts","docId":"languages/golang/concepts","unlisted":false},{"type":"link","label":"Data Types","href":"/languages/golang/data-types","docId":"languages/golang/data-types","unlisted":false},{"type":"link","label":"Examples","href":"/languages/golang/examples","docId":"languages/golang/examples","unlisted":false},{"type":"link","label":"Hello World","href":"/languages/golang/hello-world","docId":"languages/golang/hello-world","unlisted":false},{"type":"link","label":"Interview Questions","href":"/languages/golang/interview-questions","docId":"languages/golang/interview-questions","unlisted":false},{"type":"link","label":"Intro","href":"/languages/golang/intro","docId":"languages/golang/intro","unlisted":false},{"type":"link","label":"Syntax","href":"/languages/golang/syntax","docId":"languages/golang/syntax","unlisted":false},{"type":"link","label":"Testing","href":"/languages/golang/testing","docId":"languages/golang/testing","unlisted":false},{"type":"link","label":"Tools","href":"/languages/golang/tools","docId":"languages/golang/tools","unlisted":false}],"href":"/languages/golang/"},{"type":"category","label":"Java","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Collections","href":"/languages/java/collections","docId":"languages/java/collections","unlisted":false},{"type":"link","label":"Comparable Interface","href":"/languages/java/comparable-interface","docId":"languages/java/comparable-interface","unlisted":false},{"type":"link","label":"Concurrency","href":"/languages/java/concurrency","docId":"languages/java/concurrency","unlisted":false},{"type":"link","label":"Defining Constants","href":"/languages/java/defining-constants","docId":"languages/java/defining-constants","unlisted":false},{"type":"link","label":"Frameworks","href":"/languages/java/frameworks","docId":"languages/java/frameworks","unlisted":false},{"type":"link","label":"Hash Collection","href":"/languages/java/hash-collection","docId":"languages/java/hash-collection","unlisted":false},{"type":"link","label":"Intro","href":"/languages/java/intro","docId":"languages/java/intro","unlisted":false},{"type":"link","label":"JMX","href":"/languages/java/jmx","docId":"languages/java/jmx","unlisted":false},{"type":"link","label":"JVM Architecture","href":"/languages/java/jvm-architecture","docId":"languages/java/jvm-architecture","unlisted":false},{"type":"link","label":"Knowledge","href":"/languages/java/knowledge","docId":"languages/java/knowledge","unlisted":false},{"type":"link","label":"Lambda Expressions","href":"/languages/java/lambda-expressions","docId":"languages/java/lambda-expressions","unlisted":false},{"type":"link","label":"Libraries","href":"/languages/java/libraries","docId":"languages/java/libraries","unlisted":false},{"type":"link","label":"Others","href":"/languages/java/others","docId":"languages/java/others","unlisted":false},{"type":"link","label":"Questions","href":"/languages/java/questions","docId":"languages/java/questions","unlisted":false},{"type":"link","label":"Reflection","href":"/languages/java/reflection","docId":"languages/java/reflection","unlisted":false},{"type":"link","label":"Spring","href":"/languages/java/spring","docId":"languages/java/spring","unlisted":false},{"type":"link","label":"Template FastIO","href":"/languages/java/template-fastio","docId":"languages/java/template-fastio","unlisted":false},{"type":"link","label":"Threading in JavaFX","href":"/languages/java/threading-in-javafx","docId":"languages/java/threading-in-javafx","unlisted":false}],"href":"/languages/java/"},{"type":"category","label":"Other Languages","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Erlang","href":"/languages/others/erlang","docId":"languages/others/erlang","unlisted":false},{"type":"link","label":"General","href":"/languages/others/general","docId":"languages/others/general","unlisted":false},{"type":"link","label":"JavaScript Templating","href":"/languages/others/javascript-templating","docId":"languages/others/javascript-templating","unlisted":false},{"type":"link","label":"JSON","href":"/languages/others/json","docId":"languages/others/json","unlisted":false},{"type":"link","label":"Markdown","href":"/languages/others/markdown","docId":"languages/others/markdown","unlisted":false},{"type":"link","label":"Other Languages","href":"/languages/others/other-languages","docId":"languages/others/other-languages","unlisted":false},{"type":"link","label":"R","href":"/languages/others/r-language","docId":"languages/others/r-language","unlisted":false},{"type":"link","label":"Regular Expressions / Regex","href":"/languages/others/regular-expressions-regex","docId":"languages/others/regular-expressions-regex","unlisted":false},{"type":"link","label":"Ruby","href":"/languages/others/ruby","docId":"languages/others/ruby","unlisted":false},{"type":"link","label":"Rust","href":"/languages/others/rust","docId":"languages/others/rust","unlisted":false},{"type":"link","label":"Scala","href":"/languages/others/scala","docId":"languages/others/scala","unlisted":false},{"type":"link","label":"Swift","href":"/languages/others/swift","docId":"languages/others/swift","unlisted":false},{"type":"link","label":"TLA+","href":"/languages/others/tla-plus","docId":"languages/others/tla-plus","unlisted":false},{"type":"link","label":"TOML","href":"/languages/others/toml","docId":"languages/others/toml","unlisted":false},{"type":"link","label":"Web Assembly","href":"/languages/others/web-assembly","docId":"languages/others/web-assembly","unlisted":false},{"type":"link","label":"Yaml","href":"/languages/others/yaml","docId":"languages/others/yaml","unlisted":false}],"href":"/languages/others/"},{"type":"category","label":"PHP","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"CodeIgnitor","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Application Architecture","href":"/languages/php/codeigniter/application-architecture","docId":"languages/php/codeigniter/application-architecture","unlisted":false},{"type":"link","label":"Basic Concepts","href":"/languages/php/codeigniter/basic-concepts","docId":"languages/php/codeigniter/basic-concepts","unlisted":false},{"type":"link","label":"Commands","href":"/languages/php/codeigniter/commands","docId":"languages/php/codeigniter/commands","unlisted":false},{"type":"link","label":"Configurations","href":"/languages/php/codeigniter/configurations","docId":"languages/php/codeigniter/configurations","unlisted":false},{"type":"link","label":"Helpers / Functions","href":"/languages/php/codeigniter/helpers-functions","docId":"languages/php/codeigniter/helpers-functions","unlisted":false},{"type":"link","label":"HTTP","href":"/languages/php/codeigniter/http","docId":"languages/php/codeigniter/http","unlisted":false},{"type":"link","label":"CodeIgniter","href":"/languages/php/codeigniter/intro","docId":"languages/php/codeigniter/intro","unlisted":false},{"type":"link","label":"MVC","href":"/languages/php/codeigniter/mvc","docId":"languages/php/codeigniter/mvc","unlisted":false},{"type":"link","label":"Others","href":"/languages/php/codeigniter/others","docId":"languages/php/codeigniter/others","unlisted":false}],"href":"/languages/php/codeigniter/"},{"type":"link","label":"Documentation","href":"/languages/php/documentation","docId":"languages/php/documentation","unlisted":false},{"type":"link","label":"Example","href":"/languages/php/example","docId":"languages/php/example","unlisted":false},{"type":"link","label":"Frameworks","href":"/languages/php/frameworks","docId":"languages/php/frameworks","unlisted":false},{"type":"link","label":"Intro","href":"/languages/php/intro","docId":"languages/php/intro","unlisted":false},{"type":"link","label":"Operators","href":"/languages/php/operators","docId":"languages/php/operators","unlisted":false},{"type":"link","label":"Others","href":"/languages/php/others","docId":"languages/php/others","unlisted":false},{"type":"link","label":"Syntax","href":"/languages/php/syntax","docId":"languages/php/syntax","unlisted":false},{"type":"link","label":"Web Concepts","href":"/languages/php/web-concepts","docId":"languages/php/web-concepts","unlisted":false}],"href":"/languages/php/"},{"type":"category","label":"SQL","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Concepts","href":"/languages/sql/concepts","docId":"languages/sql/concepts","unlisted":false},{"type":"link","label":"CTE / Subquery","href":"/languages/sql/cte-subquery","docId":"languages/sql/cte-subquery","unlisted":false},{"type":"link","label":"Databricks SQL Functions","href":"/languages/sql/databricks-sql-functions","docId":"languages/sql/databricks-sql-functions","unlisted":false},{"type":"link","label":"Databricks SQL","href":"/languages/sql/databricks-sql","docId":"languages/sql/databricks-sql","unlisted":false},{"type":"link","label":"DCL - Data Control Language","href":"/languages/sql/dcl-data-control-language","docId":"languages/sql/dcl-data-control-language","unlisted":false},{"type":"category","label":"DDL - Data Definition Language","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Create Table","href":"/languages/sql/ddl-data-definition-language/create-table","docId":"languages/sql/ddl-data-definition-language/create-table","unlisted":false},{"type":"link","label":"Truncate vs Delete","href":"/languages/sql/ddl-data-definition-language/truncate-delete","docId":"languages/sql/ddl-data-definition-language/truncate-delete","unlisted":false}],"href":"/languages/sql/ddl-data-definition-language/"},{"type":"link","label":"DML - Data Manipulation Language","href":"/languages/sql/dml-data-manipulation-language","docId":"languages/sql/dml-data-manipulation-language","unlisted":false},{"type":"category","label":"DQL - Data Query Language","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Aggregation Queries","href":"/languages/sql/dql-data-query-language/aggregation-queries","docId":"languages/sql/dql-data-query-language/aggregation-queries","unlisted":false},{"type":"link","label":"Analytical Queries","href":"/languages/sql/dql-data-query-language/analytical-queries","docId":"languages/sql/dql-data-query-language/analytical-queries","unlisted":false},{"type":"link","label":"Window Functions","href":"/languages/sql/dql-data-query-language/window-functions","docId":"languages/sql/dql-data-query-language/window-functions","unlisted":false}],"href":"/languages/sql/dql-data-query-language/"},{"type":"link","label":"Functions","href":"/languages/sql/functions","docId":"languages/sql/functions","unlisted":false},{"type":"link","label":"Intro","href":"/languages/sql/intro","docId":"languages/sql/intro","unlisted":false},{"type":"link","label":"Join Algorithms","href":"/languages/sql/join-algorithms","docId":"languages/sql/join-algorithms","unlisted":false},{"type":"link","label":"Keys","href":"/languages/sql/keys","docId":"languages/sql/keys","unlisted":false},{"type":"link","label":"Operators / Wildcards","href":"/languages/sql/operators-wildcards","docId":"languages/sql/operators-wildcards","unlisted":false},{"type":"link","label":"Others","href":"/languages/sql/others","docId":"languages/sql/others","unlisted":false},{"type":"link","label":"PartiQL","href":"/languages/sql/partiql","docId":"languages/sql/partiql","unlisted":false},{"type":"link","label":"Postgres Commands","href":"/languages/sql/postgres-commands","docId":"languages/sql/postgres-commands","unlisted":false},{"type":"link","label":"SQL Commands","href":"/languages/sql/sql-commands","docId":"languages/sql/sql-commands","unlisted":false},{"type":"link","label":"SQL Data Types","href":"/languages/sql/sql-data-types","docId":"languages/sql/sql-data-types","unlisted":false},{"type":"link","label":"SQL Examples / Queries","href":"/languages/sql/sql-examples-queries","docId":"languages/sql/sql-examples-queries","unlisted":false},{"type":"link","label":"SQL Joins","href":"/languages/sql/sql-joins","docId":"languages/sql/sql-joins","unlisted":false},{"type":"link","label":"SQL Views","href":"/languages/sql/sql-views","docId":"languages/sql/sql-views","unlisted":false},{"type":"link","label":"Stored Procedure","href":"/languages/sql/stored-procedure","docId":"languages/sql/stored-procedure","unlisted":false},{"type":"link","label":"Types","href":"/languages/sql/types","docId":"languages/sql/types","unlisted":false}],"href":"/languages/sql/"}],"href":"/languages/"},{"type":"category","label":"Management","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Books / Blinkist Management","href":"/management/books-blinkist-management","docId":"management/books-blinkist-management","unlisted":false},{"type":"category","label":"Business","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Business Case Studies","href":"/management/business/business-case-studies","docId":"management/business/business-case-studies","unlisted":false},{"type":"link","label":"Business Terms","href":"/management/business/business-terms","docId":"management/business/business-terms","unlisted":false},{"type":"link","label":"Indian Market","href":"/management/business/indian-market","docId":"management/business/indian-market","unlisted":false},{"type":"link","label":"Service Based Model","href":"/management/business/service-based-model","docId":"management/business/service-based-model","unlisted":false}],"href":"/management/business/"},{"type":"link","label":"Community Building","href":"/management/community-building","docId":"management/community-building","unlisted":false},{"type":"link","label":"Customer Engagement / CX","href":"/management/customer-engagement-cx","docId":"management/customer-engagement-cx","unlisted":false},{"type":"category","label":"Decision Making","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Ethics","href":"/management/decision-making/ethics","docId":"management/decision-making/ethics","unlisted":false}],"href":"/management/decision-making/"},{"type":"link","label":"Growth Hacking Metrics","href":"/management/growth-hacking-metrics","docId":"management/growth-hacking-metrics","unlisted":false},{"type":"link","label":"Growth Hacking","href":"/management/growth-hacking","docId":"management/growth-hacking","unlisted":false},{"type":"category","label":"Job Hunting","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Career","href":"/management/jobs/career","docId":"management/jobs/career","unlisted":false},{"type":"link","label":"Companies","href":"/management/jobs/companies","docId":"management/jobs/companies","unlisted":false},{"type":"link","label":"Finance / Equity / Stocks / ESOPS Questions","href":"/management/jobs/finance-equity-stocks-esops-questions","docId":"management/jobs/finance-equity-stocks-esops-questions","unlisted":false},{"type":"link","label":"Good Profiles","href":"/management/jobs/good-profiles","docId":"management/jobs/good-profiles","unlisted":false},{"type":"link","label":"Hiring Plan + HR / Recruiting","href":"/management/jobs/hiring-plan-hr-recruiting","docId":"management/jobs/hiring-plan-hr-recruiting","unlisted":false},{"type":"link","label":"Questions to company","href":"/management/jobs/questions-to-company","docId":"management/jobs/questions-to-company","unlisted":false},{"type":"link","label":"Resume Keywords Pointers","href":"/management/jobs/resume-keywords-pointers","docId":"management/jobs/resume-keywords-pointers","unlisted":false}],"href":"/management/jobs/"},{"type":"link","label":"Marketing","href":"/management/marketing","docId":"management/marketing","unlisted":false},{"type":"link","label":"Mental Models","href":"/management/mental-models","docId":"management/mental-models","unlisted":false},{"type":"link","label":"Others","href":"/management/others","docId":"management/others","unlisted":false},{"type":"category","label":"People Management","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Culture","href":"/management/people-management/culture","docId":"management/people-management/culture","unlisted":false},{"type":"link","label":"Leadership Interview Questions","href":"/management/people-management/leadership-interview-questions","docId":"management/people-management/leadership-interview-questions","unlisted":false},{"type":"link","label":"Mentoring / Leading","href":"/management/people-management/mentoring-teaching-coaching-leading-leader-leadership","docId":"management/people-management/mentoring-teaching-coaching-leading-leader-leadership","unlisted":false},{"type":"link","label":"Onboarding","href":"/management/people-management/onboarding","docId":"management/people-management/onboarding","unlisted":false},{"type":"link","label":"People / Team Management","href":"/management/people-management/people-team-management","docId":"management/people-management/people-team-management","unlisted":false},{"type":"link","label":"Remote Working / Teams","href":"/management/people-management/remote-working-teams","docId":"management/people-management/remote-working-teams","unlisted":false},{"type":"link","label":"Types of Leadership","href":"/management/people-management/types-of-leadership","docId":"management/people-management/types-of-leadership","unlisted":false}],"href":"/management/people-management/"},{"type":"category","label":"Product Management","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Behavioral Design / Economics","href":"/management/product-management/behavioral-design-economics","docId":"management/product-management/behavioral-design-economics","unlisted":false},{"type":"link","label":"Coursera - PM","href":"/management/product-management/coursera-pm","docId":"management/product-management/coursera-pm","unlisted":false},{"type":"link","label":"Intro","href":"/management/product-management/intro","docId":"management/product-management/intro","unlisted":false},{"type":"link","label":"Kano Model","href":"/management/product-management/kano-model","docId":"management/product-management/kano-model","unlisted":false},{"type":"link","label":"Product Book Summaries","href":"/management/product-management/product-book-summaries","docId":"management/product-management/product-book-summaries","unlisted":false},{"type":"link","label":"Product Design / Questions","href":"/management/product-management/product-design-questions","docId":"management/product-management/product-design-questions","unlisted":false},{"type":"link","label":"Product Design Stages","href":"/management/product-management/product-design-stages","docId":"management/product-management/product-design-stages","unlisted":false},{"type":"link","label":"Product Manager PM Role","href":"/management/product-management/product-manager-role","docId":"management/product-management/product-manager-role","unlisted":false},{"type":"link","label":"Product Market Fit (PMF)","href":"/management/product-management/product-market-fit-pmf","docId":"management/product-management/product-market-fit-pmf","unlisted":false},{"type":"link","label":"Product - Terms - SAAS","href":"/management/product-management/product-terms-saas","docId":"management/product-management/product-terms-saas","unlisted":false},{"type":"link","label":"Retail / Offline / Sales","href":"/management/product-management/retail-offline-sales","docId":"management/product-management/retail-offline-sales","unlisted":false}],"href":"/management/product-management/"},{"type":"category","label":"Project Management","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Agile","href":"/management/project-management/agile","docId":"management/project-management/agile","unlisted":false},{"type":"link","label":"Atlas","href":"/management/project-management/atlas","docId":"management/project-management/atlas","unlisted":false},{"type":"link","label":"Goals Setting","href":"/management/project-management/goals-setting","docId":"management/project-management/goals-setting","unlisted":false},{"type":"link","label":"Intro","href":"/management/project-management/intro","docId":"management/project-management/intro","unlisted":false},{"type":"link","label":"JIRA","href":"/management/project-management/jira","docId":"management/project-management/jira","unlisted":false},{"type":"link","label":"Others","href":"/management/project-management/others","docId":"management/project-management/others","unlisted":false},{"type":"link","label":"PERT & CPM","href":"/management/project-management/pert-and-cpm","docId":"management/project-management/pert-and-cpm","unlisted":false},{"type":"link","label":"PM101","href":"/management/project-management/pm101","docId":"management/project-management/pm101","unlisted":false},{"type":"link","label":"Program Management","href":"/management/project-management/program-management","docId":"management/project-management/program-management","unlisted":false},{"type":"link","label":"Project Contraints","href":"/management/project-management/project-contraints","docId":"management/project-management/project-contraints","unlisted":false},{"type":"link","label":"Scrum / Meetings","href":"/management/project-management/scrum-meetings","docId":"management/project-management/scrum-meetings","unlisted":false},{"type":"link","label":"SDLC Methodologies","href":"/management/project-management/sdlc-methodologies","docId":"management/project-management/sdlc-methodologies","unlisted":false},{"type":"link","label":"1. Summary","href":"/management/project-management/template","docId":"management/project-management/template","unlisted":false}],"href":"/management/project-management/"},{"type":"link","label":"Project / Product / Business - Tools - SAAS","href":"/management/project-product-business-tools-saas","docId":"management/project-product-business-tools-saas","unlisted":false},{"type":"category","label":"roles","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Data","href":"/management/roles/data","docId":"management/roles/data","unlisted":false},{"type":"link","label":"Engineering Manager / Tech Lead","href":"/management/roles/engineering-manager","docId":"management/roles/engineering-manager","unlisted":false},{"type":"link","label":"Others","href":"/management/roles/others","docId":"management/roles/others","unlisted":false},{"type":"link","label":"Principle Software Engineer","href":"/management/roles/principle-software-engineer","docId":"management/roles/principle-software-engineer","unlisted":false}]},{"type":"link","label":"Sales","href":"/management/sales","docId":"management/sales","unlisted":false},{"type":"link","label":"Six Sigma","href":"/management/six-sigma","docId":"management/six-sigma","unlisted":false}],"href":"/management/"},{"type":"category","label":"Mathematics","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Algebra","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Cheatsheet","href":"/mathematics/algebra/cheatsheet","docId":"mathematics/algebra/cheatsheet","unlisted":false},{"type":"link","label":"2.2 Complex Numbers","href":"/mathematics/algebra/complex-numbers","docId":"mathematics/algebra/complex-numbers","unlisted":false},{"type":"link","label":"2.7. Exponential & logarithms","href":"/mathematics/algebra/exponential-and-logarithms","docId":"mathematics/algebra/exponential-and-logarithms","unlisted":false},{"type":"link","label":"2.1 Functions","href":"/mathematics/algebra/functions","docId":"mathematics/algebra/functions","unlisted":false},{"type":"link","label":"Intro","href":"/mathematics/algebra/intro","docId":"mathematics/algebra/intro","unlisted":false},{"type":"link","label":"Others","href":"/mathematics/algebra/others","docId":"mathematics/algebra/others","unlisted":false},{"type":"link","label":"Root","href":"/mathematics/algebra/root","docId":"mathematics/algebra/root","unlisted":false},{"type":"link","label":"2.9. Series","href":"/mathematics/algebra/series","docId":"mathematics/algebra/series","unlisted":false},{"type":"link","label":"Sets","href":"/mathematics/algebra/sets","docId":"mathematics/algebra/sets","unlisted":false}],"href":"/mathematics/algebra/"},{"type":"category","label":"Aptitude","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Chinese Remainder Theorem","href":"/mathematics/aptitude/chinese-remainder-theorem","docId":"mathematics/aptitude/chinese-remainder-theorem","unlisted":false},{"type":"link","label":"Cube Cutting","href":"/mathematics/aptitude/cube-cutting","docId":"mathematics/aptitude/cube-cutting","unlisted":false},{"type":"link","label":"Distance Speed and Time","href":"/mathematics/aptitude/distance-speed-and-time","docId":"mathematics/aptitude/distance-speed-and-time","unlisted":false}],"href":"/mathematics/aptitude/"},{"type":"category","label":"Calculus","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Essence of Calculus - 3Blue1Brown","href":"/mathematics/calculus/essence-of-calculus-3blue1brown","docId":"mathematics/calculus/essence-of-calculus-3blue1brown","unlisted":false},{"type":"link","label":"Functions","href":"/mathematics/calculus/functions","docId":"mathematics/calculus/functions","unlisted":false},{"type":"link","label":"Gradient","href":"/mathematics/calculus/gradient","docId":"mathematics/calculus/gradient","unlisted":false},{"type":"link","label":"Intro","href":"/mathematics/calculus/intro","docId":"mathematics/calculus/intro","unlisted":false},{"type":"link","label":"Others","href":"/mathematics/calculus/others","docId":"mathematics/calculus/others","unlisted":false},{"type":"link","label":"Intro","href":"/mathematics/calculus/precalculus-intro","docId":"mathematics/calculus/precalculus-intro","unlisted":false},{"type":"link","label":"Product Rule for Derivatives","href":"/mathematics/calculus/product-rule-for-derivatives","docId":"mathematics/calculus/product-rule-for-derivatives","unlisted":false},{"type":"link","label":"Quotient Rule","href":"/mathematics/calculus/quotient-rule","docId":"mathematics/calculus/quotient-rule","unlisted":false},{"type":"link","label":"Tangent Line and the Derivative","href":"/mathematics/calculus/tangent-line-and-the-derivative","docId":"mathematics/calculus/tangent-line-and-the-derivative","unlisted":false}],"href":"/mathematics/calculus/"},{"type":"category","label":"Combinatorics","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Birthday Paradox","href":"/mathematics/combinatorics/birthday-paradox","docId":"mathematics/combinatorics/birthday-paradox","unlisted":false},{"type":"link","label":"Conditional Probability","href":"/mathematics/combinatorics/conditional-probability","docId":"mathematics/combinatorics/conditional-probability","unlisted":false},{"type":"link","label":"Inclusion-Exclusion Principle","href":"/mathematics/combinatorics/inclusion-exclusion-principle","docId":"mathematics/combinatorics/inclusion-exclusion-principle","unlisted":false},{"type":"link","label":"Intro","href":"/mathematics/combinatorics/intro","docId":"mathematics/combinatorics/intro","unlisted":false},{"type":"link","label":"Permutation and Combination","href":"/mathematics/combinatorics/permutation-and-combination","docId":"mathematics/combinatorics/permutation-and-combination","unlisted":false},{"type":"link","label":"Pigeonhole Principle","href":"/mathematics/combinatorics/pigeonhole-principle","docId":"mathematics/combinatorics/pigeonhole-principle","unlisted":false}],"href":"/mathematics/combinatorics/"},{"type":"category","label":"General","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Ackermann Function","href":"/mathematics/general/ackermann-function","docId":"mathematics/general/ackermann-function","unlisted":false},{"type":"link","label":"Advanced Topics","href":"/mathematics/general/advanced-topics","docId":"mathematics/general/advanced-topics","unlisted":false},{"type":"link","label":"Conjecture","href":"/mathematics/general/conjecture","docId":"mathematics/general/conjecture","unlisted":false},{"type":"link","label":"Discrete Mathematics","href":"/mathematics/general/discrete-mathematics","docId":"mathematics/general/discrete-mathematics","unlisted":false},{"type":"link","label":"Fermat\'s Last Theorem","href":"/mathematics/general/fermat-last-theorem","docId":"mathematics/general/fermat-last-theorem","unlisted":false},{"type":"link","label":"Fermat\'s Little Theorem","href":"/mathematics/general/fermat-little-theorem","docId":"mathematics/general/fermat-little-theorem","unlisted":false},{"type":"link","label":"GCD / LCM","href":"/mathematics/general/gcd-lcm","docId":"mathematics/general/gcd-lcm","unlisted":false},{"type":"link","label":"Godel\'s Incompleteness Theorem","href":"/mathematics/general/godel-incompleteness-theorem","docId":"mathematics/general/godel-incompleteness-theorem","unlisted":false},{"type":"link","label":"Golden Ratio - phi","href":"/mathematics/general/golden-ratio-phi","docId":"mathematics/general/golden-ratio-phi","unlisted":false},{"type":"link","label":"Greek Letters / Latin","href":"/mathematics/general/greek-letters-latin","docId":"mathematics/general/greek-letters-latin","unlisted":false},{"type":"link","label":"Handshaking Lemma","href":"/mathematics/general/handshaking-lemma","docId":"mathematics/general/handshaking-lemma","unlisted":false},{"type":"link","label":"Logic","href":"/mathematics/general/logic","docId":"mathematics/general/logic","unlisted":false},{"type":"link","label":"Numbers","href":"/mathematics/general/numbers","docId":"mathematics/general/numbers","unlisted":false},{"type":"link","label":"Others","href":"/mathematics/general/others","docId":"mathematics/general/others","unlisted":false},{"type":"link","label":"Pie","href":"/mathematics/general/pie","docId":"mathematics/general/pie","unlisted":false},{"type":"link","label":"Properties","href":"/mathematics/general/properties","docId":"mathematics/general/properties","unlisted":false}],"href":"/mathematics/general/"},{"type":"category","label":"Geometry","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Analytic Geometry","href":"/mathematics/geometry/analytic-geometry","docId":"mathematics/geometry/analytic-geometry","unlisted":false},{"type":"link","label":"Circles","href":"/mathematics/geometry/circles","docId":"mathematics/geometry/circles","unlisted":false},{"type":"link","label":"Congruence","href":"/mathematics/geometry/congruence","docId":"mathematics/geometry/congruence","unlisted":false},{"type":"link","label":"Geometry Foundations","href":"/mathematics/geometry/geometry-foundations","docId":"mathematics/geometry/geometry-foundations","unlisted":false},{"type":"link","label":"Others","href":"/mathematics/geometry/others","docId":"mathematics/geometry/others","unlisted":false},{"type":"link","label":"Right Triangles and Geometry","href":"/mathematics/geometry/right-triangles-and-geometry","docId":"mathematics/geometry/right-triangles-and-geometry","unlisted":false},{"type":"link","label":"Similarity","href":"/mathematics/geometry/similarity","docId":"mathematics/geometry/similarity","unlisted":false},{"type":"link","label":"Solid Geometry","href":"/mathematics/geometry/solid-geometry","docId":"mathematics/geometry/solid-geometry","unlisted":false},{"type":"link","label":"Transformations","href":"/mathematics/geometry/transformations","docId":"mathematics/geometry/transformations","unlisted":false}],"href":"/mathematics/geometry/"},{"type":"category","label":"Linear Algebra","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"3Blue1Brown","href":"/mathematics/linear-algebra/3blue1brown","docId":"mathematics/linear-algebra/3blue1brown","unlisted":false},{"type":"link","label":"Alternate Coordinate systems (bases)","href":"/mathematics/linear-algebra/alternate-coordinate-systems-bases","docId":"mathematics/linear-algebra/alternate-coordinate-systems-bases","unlisted":false},{"type":"link","label":"Cheatsheet","href":"/mathematics/linear-algebra/cheatsheet","docId":"mathematics/linear-algebra/cheatsheet","unlisted":false},{"type":"link","label":"Matrix Transformations","href":"/mathematics/linear-algebra/matrix-transformations","docId":"mathematics/linear-algebra/matrix-transformations","unlisted":false},{"type":"link","label":"Others","href":"/mathematics/linear-algebra/others","docId":"mathematics/linear-algebra/others","unlisted":false},{"type":"link","label":"Vectors and Spaces","href":"/mathematics/linear-algebra/vectors-and-spaces","docId":"mathematics/linear-algebra/vectors-and-spaces","unlisted":false}],"href":"/mathematics/linear-algebra/"},{"type":"category","label":"Probability","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"365 DS - Probability","href":"/mathematics/probability/365-ds-probability","docId":"mathematics/probability/365-ds-probability","unlisted":false},{"type":"link","label":"Binomial Random Variables","href":"/mathematics/probability/binomial-random-variables","docId":"mathematics/probability/binomial-random-variables","unlisted":false},{"type":"link","label":"Central Limit Theorem","href":"/mathematics/probability/central-limit-theorem","docId":"mathematics/probability/central-limit-theorem","unlisted":false},{"type":"link","label":"Cheatsheet","href":"/mathematics/probability/cheatsheet","docId":"mathematics/probability/cheatsheet","unlisted":false},{"type":"category","label":"Intro to Probability","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"1. Probability Models and Axioms","href":"/mathematics/probability/intro-to-probability/1.-probability-models-and-axioms","docId":"mathematics/probability/intro-to-probability/1.-probability-models-and-axioms","unlisted":false},{"type":"link","label":"1.1 Set, Sequences, Limits and Series, (un)countable sets","href":"/mathematics/probability/intro-to-probability/1.1-set-sequences-limits-and-series-un-countable-sets","docId":"mathematics/probability/intro-to-probability/1.1-set-sequences-limits-and-series-un-countable-sets","unlisted":false},{"type":"link","label":"10. Conditioning on a random variable; Independence; Bayes\' rule","href":"/mathematics/probability/intro-to-probability/10-conditioning-on-a-random-variable-independence-bayes-rule","docId":"mathematics/probability/intro-to-probability/10-conditioning-on-a-random-variable-independence-bayes-rule","unlisted":false},{"type":"link","label":"11. Derived Distributions","href":"/mathematics/probability/intro-to-probability/11.-derived-distributions","docId":"mathematics/probability/intro-to-probability/11.-derived-distributions","unlisted":false},{"type":"link","label":"12. Sums of independent r.v.\'s; Covariance and Correlation","href":"/mathematics/probability/intro-to-probability/12.-sums-of-independent-rv-covariance-and-correlation","docId":"mathematics/probability/intro-to-probability/12.-sums-of-independent-rv-covariance-and-correlation","unlisted":false},{"type":"link","label":"13. Conditional expectation and variance revisited","href":"/mathematics/probability/intro-to-probability/13.-conditional-expectation-and-variance-revisited","docId":"mathematics/probability/intro-to-probability/13.-conditional-expectation-and-variance-revisited","unlisted":false},{"type":"link","label":"14. Intro to Bayesian Inference","href":"/mathematics/probability/intro-to-probability/14.-intro-to-bayesian-inference","docId":"mathematics/probability/intro-to-probability/14.-intro-to-bayesian-inference","unlisted":false},{"type":"link","label":"2. Conditioning and Independence","href":"/mathematics/probability/intro-to-probability/2.-conditioning-and-independence","docId":"mathematics/probability/intro-to-probability/2.-conditioning-and-independence","unlisted":false},{"type":"link","label":"3. Independence","href":"/mathematics/probability/intro-to-probability/3.-independence","docId":"mathematics/probability/intro-to-probability/3.-independence","unlisted":false},{"type":"link","label":"4. Counting","href":"/mathematics/probability/intro-to-probability/4.-counting","docId":"mathematics/probability/intro-to-probability/4.-counting","unlisted":false},{"type":"link","label":"5. Probability Mass Functions and Expectations","href":"/mathematics/probability/intro-to-probability/5.-probability-mass-functions-and-expectations","docId":"mathematics/probability/intro-to-probability/5.-probability-mass-functions-and-expectations","unlisted":false},{"type":"link","label":"6. Variance; Conditioning of an event; Multiple r.v.\'s","href":"/mathematics/probability/intro-to-probability/6-variance-conditioning-of-an-event-multiple-rv","docId":"mathematics/probability/intro-to-probability/6-variance-conditioning-of-an-event-multiple-rv","unlisted":false},{"type":"link","label":"7. Conditioning on a rv; Independence of r.v.\'s","href":"/mathematics/probability/intro-to-probability/7-conditioning-on-a-rv-independence-of-rv","docId":"mathematics/probability/intro-to-probability/7-conditioning-on-a-rv-independence-of-rv","unlisted":false},{"type":"link","label":"8. Probability density functions","href":"/mathematics/probability/intro-to-probability/8.-probability-density-functions","docId":"mathematics/probability/intro-to-probability/8.-probability-density-functions","unlisted":false},{"type":"link","label":"9. Conditioning on an event; Multiple continuous r.v.\'s","href":"/mathematics/probability/intro-to-probability/9.-conditioning-on-an-event-multiple-continuous-rv","docId":"mathematics/probability/intro-to-probability/9.-conditioning-on-an-event-multiple-continuous-rv","unlisted":false},{"type":"link","label":"Additional Theoretical Material","href":"/mathematics/probability/intro-to-probability/additional-theoretical-material","docId":"mathematics/probability/intro-to-probability/additional-theoretical-material","unlisted":false},{"type":"link","label":"Intro - Syllabus","href":"/mathematics/probability/intro-to-probability/intro-syllabus","docId":"mathematics/probability/intro-to-probability/intro-syllabus","unlisted":false},{"type":"link","label":"Unit 1 - Solved Problems","href":"/mathematics/probability/intro-to-probability/unit-1-solved-problems","docId":"mathematics/probability/intro-to-probability/unit-1-solved-problems","unlisted":false},{"type":"link","label":"Unit 2 - Solved Problems","href":"/mathematics/probability/intro-to-probability/unit-2-solved-problems","docId":"mathematics/probability/intro-to-probability/unit-2-solved-problems","unlisted":false},{"type":"link","label":"Unit 3 - Solved Problems","href":"/mathematics/probability/intro-to-probability/unit-3-solved-problems","docId":"mathematics/probability/intro-to-probability/unit-3-solved-problems","unlisted":false}],"href":"/mathematics/probability/intro-to-probability/"},{"type":"link","label":"Intro","href":"/mathematics/probability/intro","docId":"mathematics/probability/intro","unlisted":false},{"type":"link","label":"Monte Carlo Simulation","href":"/mathematics/probability/monte-carlo-simulation","docId":"mathematics/probability/monte-carlo-simulation","unlisted":false},{"type":"link","label":"Normal Distributions","href":"/mathematics/probability/normal-distributions","docId":"mathematics/probability/normal-distributions","unlisted":false},{"type":"link","label":"Others","href":"/mathematics/probability/others","docId":"mathematics/probability/others","unlisted":false},{"type":"link","label":"Probability Distribution","href":"/mathematics/probability/probability-distribution","docId":"mathematics/probability/probability-distribution","unlisted":false},{"type":"link","label":"Random Variables","href":"/mathematics/probability/random-variables","docId":"mathematics/probability/random-variables","unlisted":false}],"href":"/mathematics/probability/"},{"type":"category","label":"Statistics","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Bivariate Analysis","href":"/mathematics/statistics/bivariate-analysis","docId":"mathematics/statistics/bivariate-analysis","unlisted":false},{"type":"link","label":"Confidence Intervals","href":"/mathematics/statistics/confidence-intervals","docId":"mathematics/statistics/confidence-intervals","unlisted":false},{"type":"link","label":"Correlation and Covariance","href":"/mathematics/statistics/correlation-and-covariance","docId":"mathematics/statistics/correlation-and-covariance","unlisted":false},{"type":"link","label":"Crash Course Statistics","href":"/mathematics/statistics/crash-course-statistics","docId":"mathematics/statistics/crash-course-statistics","unlisted":false},{"type":"link","label":"Crosstab","href":"/mathematics/statistics/crosstab","docId":"mathematics/statistics/crosstab","unlisted":false},{"type":"link","label":"Descriptive Statistics","href":"/mathematics/statistics/descriptive-statistics","docId":"mathematics/statistics/descriptive-statistics","unlisted":false},{"type":"link","label":"Discriminant Analysis","href":"/mathematics/statistics/discriminant-analysis","docId":"mathematics/statistics/discriminant-analysis","unlisted":false},{"type":"link","label":"Estimation Statistics","href":"/mathematics/statistics/estimation-statistics","docId":"mathematics/statistics/estimation-statistics","unlisted":false},{"type":"link","label":"Glossary","href":"/mathematics/statistics/glossary","docId":"mathematics/statistics/glossary","unlisted":false},{"type":"link","label":"Hypothesis Testing","href":"/mathematics/statistics/hypothesis-testing","docId":"mathematics/statistics/hypothesis-testing","unlisted":false},{"type":"link","label":"Inferential Statistics","href":"/mathematics/statistics/inferential-statistics","docId":"mathematics/statistics/inferential-statistics","unlisted":false},{"type":"link","label":"Intro","href":"/mathematics/statistics/intro","docId":"mathematics/statistics/intro","unlisted":false},{"type":"link","label":"Nonparametric Statistics","href":"/mathematics/statistics/nonparametric-statistics","docId":"mathematics/statistics/nonparametric-statistics","unlisted":false},{"type":"link","label":"Other Statistics","href":"/mathematics/statistics/other-statistics","docId":"mathematics/statistics/other-statistics","unlisted":false},{"type":"link","label":"Percentiles","href":"/mathematics/statistics/percentiles","docId":"mathematics/statistics/percentiles","unlisted":false},{"type":"link","label":"Ranking","href":"/mathematics/statistics/ranking","docId":"mathematics/statistics/ranking","unlisted":false},{"type":"link","label":"Sampling","href":"/mathematics/statistics/sampling","docId":"mathematics/statistics/sampling","unlisted":false}],"href":"/mathematics/statistics/"}],"href":"/mathematics/"},{"type":"category","label":"Networking","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"MQTT","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Client, Broker & Connection Establishment","href":"/networking/mqtt/client-broker-and-connection-establishment","docId":"networking/mqtt/client-broker-and-connection-establishment","unlisted":false},{"type":"link","label":"Intro","href":"/networking/mqtt/intro","docId":"networking/mqtt/intro","unlisted":false},{"type":"link","label":"Keep Alive & Client Take-Over","href":"/networking/mqtt/keep-alive-and-client-take-over","docId":"networking/mqtt/keep-alive-and-client-take-over","unlisted":false},{"type":"link","label":"Last Will and Testament","href":"/networking/mqtt/last-will-and-testament","docId":"networking/mqtt/last-will-and-testament","unlisted":false},{"type":"link","label":"Libraries","href":"/networking/mqtt/libraries","docId":"networking/mqtt/libraries","unlisted":false},{"type":"link","label":"Messages","href":"/networking/mqtt/messages","docId":"networking/mqtt/messages","unlisted":false},{"type":"link","label":"MQTT 5.0","href":"/networking/mqtt/mqtt-5.0","docId":"networking/mqtt/mqtt-5.0","unlisted":false},{"type":"link","label":"MQTT over WebSockets","href":"/networking/mqtt/mqtt-over-websockets","docId":"networking/mqtt/mqtt-over-websockets","unlisted":false},{"type":"link","label":"MQTT - SN","href":"/networking/mqtt/mqtt-sn","docId":"networking/mqtt/mqtt-sn","unlisted":false},{"type":"link","label":"MQTT vs HTTP","href":"/networking/mqtt/mqtt-vs-http","docId":"networking/mqtt/mqtt-vs-http","unlisted":false},{"type":"link","label":"Paho Client","href":"/networking/mqtt/paho-client","docId":"networking/mqtt/paho-client","unlisted":false},{"type":"link","label":"Persistent Session & Queuing Messages","href":"/networking/mqtt/persistent-session-and-queuing-messages","docId":"networking/mqtt/persistent-session-and-queuing-messages","unlisted":false},{"type":"link","label":"Publish, Subscribe & Unsubscribe","href":"/networking/mqtt/publish-subscribe-and-unsubscribe","docId":"networking/mqtt/publish-subscribe-and-unsubscribe","unlisted":false},{"type":"link","label":"Publish Subscribe Pattern","href":"/networking/mqtt/publish-subscribe-pattern","docId":"networking/mqtt/publish-subscribe-pattern","unlisted":false},{"type":"link","label":"QoS Levels","href":"/networking/mqtt/qos-levels","docId":"networking/mqtt/qos-levels","unlisted":false},{"type":"link","label":"Retained Messages","href":"/networking/mqtt/retained-messages","docId":"networking/mqtt/retained-messages","unlisted":false},{"type":"link","label":"Scaling","href":"/networking/mqtt/scaling","docId":"networking/mqtt/scaling","unlisted":false},{"type":"link","label":"Security","href":"/networking/mqtt/security","docId":"networking/mqtt/security","unlisted":false},{"type":"link","label":"Topics & Best Practices","href":"/networking/mqtt/topics-and-best-practices","docId":"networking/mqtt/topics-and-best-practices","unlisted":false}],"href":"/networking/mqtt/"},{"type":"category","label":"Networking Concepts","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Addressing Methods / cast protocols","href":"/networking/networking-concepts/addressing-methods-cast-protocols","docId":"networking/networking-concepts/addressing-methods-cast-protocols","unlisted":false},{"type":"link","label":"Book - Computer Networks","href":"/networking/networking-concepts/book-computer-networks","docId":"networking/networking-concepts/book-computer-networks","unlisted":false},{"type":"link","label":"CIDR","href":"/networking/networking-concepts/cidr","docId":"networking/networking-concepts/cidr","unlisted":false},{"type":"link","label":"Data Center Networking","href":"/networking/networking-concepts/data-center-networking","docId":"networking/networking-concepts/data-center-networking","unlisted":false},{"type":"link","label":"Forward Error Correction","href":"/networking/networking-concepts/forward-error-correction","docId":"networking/networking-concepts/forward-error-correction","unlisted":false},{"type":"link","label":"Intro","href":"/networking/networking-concepts/intro","docId":"networking/networking-concepts/intro","unlisted":false},{"type":"link","label":"IP","href":"/networking/networking-concepts/ip","docId":"networking/networking-concepts/ip","unlisted":false},{"type":"link","label":"Network Sockets/Ports","href":"/networking/networking-concepts/network-sockets-ports","docId":"networking/networking-concepts/network-sockets-ports","unlisted":false},{"type":"link","label":"Networking Fabric","href":"/networking/networking-concepts/networking-fabric","docId":"networking/networking-concepts/networking-fabric","unlisted":false},{"type":"link","label":"OSI Layers","href":"/networking/networking-concepts/osi-layers","docId":"networking/networking-concepts/osi-layers","unlisted":false},{"type":"link","label":"Others","href":"/networking/networking-concepts/others","docId":"networking/networking-concepts/others","unlisted":false},{"type":"link","label":"Peer to Peer Networks","href":"/networking/networking-concepts/peer-to-peer","docId":"networking/networking-concepts/peer-to-peer","unlisted":false},{"type":"link","label":"Questions","href":"/networking/networking-concepts/questions","docId":"networking/networking-concepts/questions","unlisted":false},{"type":"link","label":"Routing","href":"/networking/networking-concepts/routing","docId":"networking/networking-concepts/routing","unlisted":false},{"type":"link","label":"Sockets","href":"/networking/networking-concepts/sockets","docId":"networking/networking-concepts/sockets","unlisted":false},{"type":"link","label":"TCP/IP","href":"/networking/networking-concepts/tcp-ip","docId":"networking/networking-concepts/tcp-ip","unlisted":false}],"href":"/networking/networking-concepts/"},{"type":"category","label":"Others","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"5G Wireless Networking","href":"/networking/others/5g-wireless-networking","docId":"networking/others/5g-wireless-networking","unlisted":false},{"type":"link","label":"Apache Avro","href":"/networking/others/apache-avro","docId":"networking/others/apache-avro","unlisted":false},{"type":"link","label":"Apache Parquet","href":"/networking/others/apache-parquet","docId":"networking/others/apache-parquet","unlisted":false},{"type":"link","label":"Data formats","href":"/networking/others/data-formats","docId":"networking/others/data-formats","unlisted":false},{"type":"link","label":"Delta Lake Tutorial","href":"/networking/others/delta-lake-tutorial","docId":"networking/others/delta-lake-tutorial","unlisted":false},{"type":"link","label":"Delta Lake","href":"/networking/others/delta-lake","docId":"networking/others/delta-lake","unlisted":false},{"type":"link","label":"Falcor","href":"/networking/others/falcor","docId":"networking/others/falcor","unlisted":false},{"type":"link","label":"File Format Comparisons","href":"/networking/others/file-formats-comparisons","docId":"networking/others/file-formats-comparisons","unlisted":false},{"type":"link","label":"File Formats","href":"/networking/others/file-formats","docId":"networking/others/file-formats","unlisted":false},{"type":"category","label":"gRPC","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/networking/others/grpc/commands","docId":"networking/others/grpc/commands","unlisted":false},{"type":"link","label":"Comparison","href":"/networking/others/grpc/comparison","docId":"networking/others/grpc/comparison","unlisted":false},{"type":"link","label":"Concepts","href":"/networking/others/grpc/concepts","docId":"networking/others/grpc/concepts","unlisted":false},{"type":"link","label":"Guides","href":"/networking/others/grpc/guides","docId":"networking/others/grpc/guides","unlisted":false},{"type":"link","label":"gRPC","href":"/networking/others/grpc/intro","docId":"networking/others/grpc/intro","unlisted":false},{"type":"link","label":"Others","href":"/networking/others/grpc/others","docId":"networking/others/grpc/others","unlisted":false}],"href":"/networking/others/grpc/"},{"type":"link","label":"Others","href":"/networking/others/other","docId":"networking/others/other","unlisted":false},{"type":"link","label":"Protocol Buffers Protobuf","href":"/networking/others/protocol-buffers-protobuf","docId":"networking/others/protocol-buffers-protobuf","unlisted":false},{"type":"link","label":"RPC","href":"/networking/others/rpc","docId":"networking/others/rpc","unlisted":false},{"type":"link","label":"Serialization/Deserialization","href":"/networking/others/serialization-deserialization","docId":"networking/others/serialization-deserialization","unlisted":false},{"type":"link","label":"VPN Tools","href":"/networking/others/vpn-tools","docId":"networking/others/vpn-tools","unlisted":false},{"type":"link","label":"VPN","href":"/networking/others/vpn","docId":"networking/others/vpn","unlisted":false}],"href":"/networking/others/"},{"type":"category","label":"Protocols","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"AMQP","href":"/networking/protocols/amqp","docId":"networking/protocols/amqp","unlisted":false},{"type":"link","label":"DNS Domain Name System","href":"/networking/protocols/dns-domain-name-system","docId":"networking/protocols/dns-domain-name-system","unlisted":false},{"type":"link","label":"GraphQL","href":"/networking/protocols/graphql","docId":"networking/protocols/graphql","unlisted":false},{"type":"link","label":"HTTP/3 QUIC","href":"/networking/protocols/http-3-quic","docId":"networking/protocols/http-3-quic","unlisted":false},{"type":"link","label":"HTTP / HTTPS","href":"/networking/protocols/http-https","docId":"networking/protocols/http-https","unlisted":false},{"type":"link","label":"Http Status Code","href":"/networking/protocols/http-status-code","docId":"networking/protocols/http-status-code","unlisted":false},{"type":"link","label":"Protocols","href":"/networking/protocols/intro","docId":"networking/protocols/intro","unlisted":false},{"type":"link","label":"Messaging","href":"/networking/protocols/messaging","docId":"networking/protocols/messaging","unlisted":false},{"type":"link","label":"OpenAPI","href":"/networking/protocols/openapi","docId":"networking/protocols/openapi","unlisted":false},{"type":"link","label":"OpenThread","href":"/networking/protocols/openthread","docId":"networking/protocols/openthread","unlisted":false},{"type":"link","label":"Others","href":"/networking/protocols/others","docId":"networking/protocols/others","unlisted":false},{"type":"link","label":"Protocols Intro","href":"/networking/protocols/protocols-intro","docId":"networking/protocols/protocols-intro","unlisted":false},{"type":"link","label":"REST Representational State Transfer / RESTFul","href":"/networking/protocols/rest-representational-state-transfer-restful","docId":"networking/protocols/rest-representational-state-transfer-restful","unlisted":false},{"type":"link","label":"Rsocket","href":"/networking/protocols/rsocket","docId":"networking/protocols/rsocket","unlisted":false},{"type":"category","label":"TCP (Connection Oriented Protocol)","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Flow Control","href":"/networking/protocols/tcp-connection-oriented-protocol/flow-control","docId":"networking/protocols/tcp-connection-oriented-protocol/flow-control","unlisted":false}],"href":"/networking/protocols/tcp-connection-oriented-protocol/"},{"type":"link","label":"UDP","href":"/networking/protocols/udp","docId":"networking/protocols/udp","unlisted":false},{"type":"link","label":"Video / Live Streaming","href":"/networking/protocols/video-live-streaming","docId":"networking/protocols/video-live-streaming","unlisted":false},{"type":"link","label":"Weave","href":"/networking/protocols/weave","docId":"networking/protocols/weave","unlisted":false},{"type":"link","label":"WebSockets","href":"/networking/protocols/websockets","docId":"networking/protocols/websockets","unlisted":false},{"type":"link","label":"ZeroMQ: Distributed Messaging","href":"/networking/protocols/zeromq-distributed-messaging","docId":"networking/protocols/zeromq-distributed-messaging","unlisted":false}],"href":"/networking/protocols/"}],"href":"/networking/"},{"type":"category","label":"Psychology","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Biases / Fallacies","href":"/psychology/biases-fallacies","docId":"psychology/biases-fallacies","unlisted":false},{"type":"link","label":"Brain","href":"/psychology/brain","docId":"psychology/brain","unlisted":false},{"type":"link","label":"Burnout","href":"/psychology/burnout","docId":"psychology/burnout","unlisted":false},{"type":"link","label":"Consumerism","href":"/psychology/consumerism","docId":"psychology/consumerism","unlisted":false},{"type":"link","label":"Course - Mindshift","href":"/psychology/course-mindshift","docId":"psychology/course-mindshift","unlisted":false},{"type":"link","label":"Criticism / Criticizing / Criticize / Critic","href":"/psychology/criticism","docId":"psychology/criticism","unlisted":false},{"type":"link","label":"Defence Mechanisms","href":"/psychology/defence-mechanisms","docId":"psychology/defence-mechanisms","unlisted":false},{"type":"link","label":"Emotions","href":"/psychology/emotions","docId":"psychology/emotions","unlisted":false},{"type":"link","label":"Habits","href":"/psychology/habits","docId":"psychology/habits","unlisted":false},{"type":"link","label":"Human Psychology & Thinking","href":"/psychology/human-psychology-and-thinking","docId":"psychology/human-psychology-and-thinking","unlisted":false},{"type":"link","label":"Ikigai","href":"/psychology/ikigai","docId":"psychology/ikigai","unlisted":false},{"type":"link","label":"Intelligence","href":"/psychology/intelligence","docId":"psychology/intelligence","unlisted":false},{"type":"link","label":"Psychology","href":"/psychology/intro","docId":"psychology/intro","unlisted":false},{"type":"category","label":"Learning","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Chunking - The Essentials","href":"/psychology/learning/chunking-the-essentials","docId":"psychology/learning/chunking-the-essentials","unlisted":false},{"type":"link","label":"Concentration / Mindfulness / Attention / Focus / Hard Work","href":"/psychology/learning/concentration-mindfulness-attention-focus-hard-work","docId":"psychology/learning/concentration-mindfulness-attention-focus-hard-work","unlisted":false},{"type":"link","label":"Course - Learning How to Learn","href":"/psychology/learning/course-learning-how-to-learn","docId":"psychology/learning/course-learning-how-to-learn","unlisted":false},{"type":"link","label":"Exams","href":"/psychology/learning/exams","docId":"psychology/learning/exams","unlisted":false},{"type":"link","label":"Learning - Intro","href":"/psychology/learning/learning-intro","docId":"psychology/learning/learning-intro","unlisted":false},{"type":"link","label":"Memory","href":"/psychology/learning/memory","docId":"psychology/learning/memory","unlisted":false},{"type":"link","label":"Mistakes / Apology","href":"/psychology/learning/mistakes-apology","docId":"psychology/learning/mistakes-apology","unlisted":false},{"type":"link","label":"Note Taking / Second Brain / PKM / Zettelkasten / Digital Garden","href":"/psychology/learning/note-taking-second-brain-pkm-zettelkasten","docId":"psychology/learning/note-taking-second-brain-pkm-zettelkasten","unlisted":false},{"type":"link","label":"Speed Reading","href":"/psychology/learning/speed-reading","docId":"psychology/learning/speed-reading","unlisted":false},{"type":"link","label":"Tips","href":"/psychology/learning/tips","docId":"psychology/learning/tips","unlisted":false}],"href":"/psychology/learning/"},{"type":"link","label":"Life / Relationship / People","href":"/psychology/life-relationship-people","docId":"psychology/life-relationship-people","unlisted":false},{"type":"link","label":"Mental Models","href":"/psychology/mental-models","docId":"psychology/mental-models","unlisted":false},{"type":"link","label":"Others","href":"/psychology/others","docId":"psychology/others","unlisted":false},{"type":"link","label":"Paradox","href":"/psychology/paradox","docId":"psychology/paradox","unlisted":false},{"type":"link","label":"Parenting / children","href":"/psychology/parenting","docId":"psychology/parenting","unlisted":false},{"type":"link","label":"People","href":"/psychology/people","docId":"psychology/people","unlisted":false},{"type":"link","label":"Personality","href":"/psychology/personality","docId":"psychology/personality","unlisted":false},{"type":"link","label":"Power","href":"/psychology/power","docId":"psychology/power","unlisted":false},{"type":"link","label":"Procrastination","href":"/psychology/procrastination","docId":"psychology/procrastination","unlisted":false},{"type":"link","label":"Productivity / Productive / Time Management / TODO","href":"/psychology/productivity-productive-time-management-todo","docId":"psychology/productivity-productive-time-management-todo","unlisted":false},{"type":"link","label":"Research","href":"/psychology/research","docId":"psychology/research","unlisted":false},{"type":"link","label":"Self Awareness","href":"/psychology/self-awareness","docId":"psychology/self-awareness","unlisted":false},{"type":"link","label":"Self Control / Will Power","href":"/psychology/self-control-will-power","docId":"psychology/self-control-will-power","unlisted":false},{"type":"link","label":"Sleep","href":"/psychology/sleep","docId":"psychology/sleep","unlisted":false},{"type":"category","label":"Soft Skills","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Asking Right Questions","href":"/psychology/soft-skills/asking-right-questions","docId":"psychology/soft-skills/asking-right-questions","unlisted":false},{"type":"link","label":"Disagreement / Feedback","href":"/psychology/soft-skills/disagreement-feedback","docId":"psychology/soft-skills/disagreement-feedback","unlisted":false},{"type":"link","label":"Listening","href":"/psychology/soft-skills/listening","docId":"psychology/soft-skills/listening","unlisted":false},{"type":"link","label":"Negotiation Tips","href":"/psychology/soft-skills/negotiation","docId":"psychology/soft-skills/negotiation","unlisted":false},{"type":"link","label":"Prioritization / Leverage","href":"/psychology/soft-skills/prioritization-leverage","docId":"psychology/soft-skills/prioritization-leverage","unlisted":false},{"type":"link","label":"Reasoning","href":"/psychology/soft-skills/reasoning","docId":"psychology/soft-skills/reasoning","unlisted":false},{"type":"link","label":"Speaking - Phrases / Quotes","href":"/psychology/soft-skills/speaking-phrases-quotes","docId":"psychology/soft-skills/speaking-phrases-quotes","unlisted":false},{"type":"link","label":"Speaking / Story / Talking / Presentation / Phrases / Body Language","href":"/psychology/soft-skills/speaking-story-talking-conversation-presentation-phrases","docId":"psychology/soft-skills/speaking-story-talking-conversation-presentation-phrases","unlisted":false},{"type":"link","label":"Writing / Newsletter","href":"/psychology/soft-skills/writing","docId":"psychology/soft-skills/writing","unlisted":false}],"href":"/psychology/soft-skills/"},{"type":"link","label":"Stoicism","href":"/psychology/stoicism","docId":"psychology/stoicism","unlisted":false},{"type":"link","label":"Strategic Thinking","href":"/psychology/strategic-thinking","docId":"psychology/strategic-thinking","unlisted":false},{"type":"link","label":"Thinking Mental Models","href":"/psychology/thinking-mental-models","docId":"psychology/thinking-mental-models","unlisted":false},{"type":"link","label":"Travelling","href":"/psychology/travelling","docId":"psychology/travelling","unlisted":false},{"type":"link","label":"Trust","href":"/psychology/trust","docId":"psychology/trust","unlisted":false}],"href":"/psychology/"},{"type":"category","label":"Python","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Advanced","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture","href":"/python/advanced/architecture","docId":"python/advanced/architecture","unlisted":false},{"type":"link","label":"Concurrency","href":"/python/advanced/concurrency","docId":"python/advanced/concurrency","unlisted":false},{"type":"link","label":"CPython","href":"/python/advanced/cpython","docId":"python/advanced/cpython","unlisted":false},{"type":"link","label":"Faster Python","href":"/python/advanced/faster-python","docId":"python/advanced/faster-python","unlisted":false},{"type":"link","label":"Idiomatic Python","href":"/python/advanced/idiomatic-python","docId":"python/advanced/idiomatic-python","unlisted":false},{"type":"link","label":"Memory Management","href":"/python/advanced/memory-management","docId":"python/advanced/memory-management","unlisted":false},{"type":"link","label":"Mixin","href":"/python/advanced/mixin","docId":"python/advanced/mixin","unlisted":false},{"type":"link","label":"Others","href":"/python/advanced/others","docId":"python/advanced/others","unlisted":false},{"type":"link","label":"Python Tricks","href":"/python/advanced/python-tricks","docId":"python/advanced/python-tricks","unlisted":false},{"type":"link","label":"Python Versions","href":"/python/advanced/python-versions","docId":"python/advanced/python-versions","unlisted":false},{"type":"link","label":"Super","href":"/python/advanced/super","docId":"python/advanced/super","unlisted":false},{"type":"link","label":"Web Scraping","href":"/python/advanced/web-scraping","docId":"python/advanced/web-scraping","unlisted":false}],"href":"/python/advanced/"},{"type":"category","label":"Django","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Admin site","href":"/python/django/admin-site","docId":"python/django/admin-site","unlisted":false},{"type":"link","label":"Advanced","href":"/python/django/advanced","docId":"python/django/advanced","unlisted":false},{"type":"link","label":"Architecture","href":"/python/django/architecture","docId":"python/django/architecture","unlisted":false},{"type":"link","label":"Authentication / Authorization","href":"/python/django/authentication-authorization","docId":"python/django/authentication-authorization","unlisted":false},{"type":"link","label":"Cheatsheet","href":"/python/django/cheatsheet","docId":"python/django/cheatsheet","unlisted":false},{"type":"link","label":"Commands","href":"/python/django/commands","docId":"python/django/commands","unlisted":false},{"type":"link","label":"Content Types","href":"/python/django/content-types","docId":"python/django/content-types","unlisted":false},{"type":"link","label":"Django Rest Framework DRF","href":"/python/django/django-rest-framework-drf","docId":"python/django/django-rest-framework-drf","unlisted":false},{"type":"link","label":"Django Template Language","href":"/python/django/django-template-language","docId":"python/django/django-template-language","unlisted":false},{"type":"link","label":"Docs - Topic Guides","href":"/python/django/docs-topic-guides","docId":"python/django/docs-topic-guides","unlisted":false},{"type":"link","label":"Libaries","href":"/python/django/libraries","docId":"python/django/libraries","unlisted":false},{"type":"link","label":"Logging","href":"/python/django/logging","docId":"python/django/logging","unlisted":false},{"type":"link","label":"Models","href":"/python/django/models","docId":"python/django/models","unlisted":false},{"type":"link","label":"Optimizations","href":"/python/django/optimizations","docId":"python/django/optimizations","unlisted":false},{"type":"link","label":"Other Topics","href":"/python/django/other-topics","docId":"python/django/other-topics","unlisted":false},{"type":"link","label":"Others","href":"/python/django/others","docId":"python/django/others","unlisted":false},{"type":"link","label":"Overview","href":"/python/django/overview","docId":"python/django/overview","unlisted":false},{"type":"link","label":"QuerySet & Query Expressions","href":"/python/django/queryset-and-query-expressions","docId":"python/django/queryset-and-query-expressions","unlisted":false},{"type":"link","label":"Unicode","href":"/python/django/unicode","docId":"python/django/unicode","unlisted":false}],"href":"/python/django/"},{"type":"category","label":"Documentation","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"1. Intro","href":"/python/documentation/01-intro","docId":"python/documentation/01-intro","unlisted":false},{"type":"link","label":"2. Built-in Functions","href":"/python/documentation/02-built-in-functions","docId":"python/documentation/02-built-in-functions","unlisted":false},{"type":"link","label":"3. Built-in Constants","href":"/python/documentation/03-built-in-constants","docId":"python/documentation/03-built-in-constants","unlisted":false},{"type":"link","label":"4. Built-in Types","href":"/python/documentation/04-built-in-types","docId":"python/documentation/04-built-in-types","unlisted":false},{"type":"link","label":"6. Text Processing Services","href":"/python/documentation/06-text-processing-services","docId":"python/documentation/06-text-processing-services","unlisted":false},{"type":"link","label":"7. Binary Data Services","href":"/python/documentation/07-binary-data-services","docId":"python/documentation/07-binary-data-services","unlisted":false},{"type":"link","label":"8. Data Types","href":"/python/documentation/08-data-types","docId":"python/documentation/08-data-types","unlisted":false},{"type":"link","label":"9. Numeric and Mathematical Modules","href":"/python/documentation/09-numeric-and-mathematical-modules","docId":"python/documentation/09-numeric-and-mathematical-modules","unlisted":false},{"type":"link","label":"10. Functional Programming Modules","href":"/python/documentation/10-functional-programming-modules","docId":"python/documentation/10-functional-programming-modules","unlisted":false},{"type":"link","label":"11. File and Directory Access","href":"/python/documentation/11-file-and-directory-access","docId":"python/documentation/11-file-and-directory-access","unlisted":false},{"type":"link","label":"12. Data Persistence","href":"/python/documentation/12-data-persistence","docId":"python/documentation/12-data-persistence","unlisted":false},{"type":"link","label":"14. File Formats","href":"/python/documentation/14-file-formats","docId":"python/documentation/14-file-formats","unlisted":false},{"type":"link","label":"15. Cryptographic Services","href":"/python/documentation/15-cryptographic-services","docId":"python/documentation/15-cryptographic-services","unlisted":false},{"type":"link","label":"16. Generic Operating System Services / Logging","href":"/python/documentation/16-generic-operating-system-services-logging","docId":"python/documentation/16-generic-operating-system-services-logging","unlisted":false},{"type":"link","label":"17. Concurrent Execution","href":"/python/documentation/17-concurrent-execution","docId":"python/documentation/17-concurrent-execution","unlisted":false},{"type":"link","label":"18. Interprocess Communication and Networking","href":"/python/documentation/18-interprocess-communication-and-networking","docId":"python/documentation/18-interprocess-communication-and-networking","unlisted":false},{"type":"link","label":"19. Internet Data Handling","href":"/python/documentation/19-internet-data-handling","docId":"python/documentation/19-internet-data-handling","unlisted":false},{"type":"link","label":"21. Structured Markup Processing Tools","href":"/python/documentation/21-structured-markup-processing-tools","docId":"python/documentation/21-structured-markup-processing-tools","unlisted":false},{"type":"link","label":"22. Internet Protocols and Support","href":"/python/documentation/22-internet-protocols-and-support","docId":"python/documentation/22-internet-protocols-and-support","unlisted":false},{"type":"category","label":"27. Development Tools","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Static Code Analysis","href":"/python/documentation/27-development-tools/static-code-analysis","docId":"python/documentation/27-development-tools/static-code-analysis","unlisted":false},{"type":"link","label":"Testing","href":"/python/documentation/27-development-tools/testing","docId":"python/documentation/27-development-tools/testing","unlisted":false}],"href":"/python/documentation/27-development-tools/"},{"type":"link","label":"28. Debugging and Profiling","href":"/python/documentation/28-debugging-and-profiling","docId":"python/documentation/28-debugging-and-profiling","unlisted":false},{"type":"link","label":"30. Python Runtime Services","href":"/python/documentation/30-python-runtime-services","docId":"python/documentation/30-python-runtime-services","unlisted":false},{"type":"link","label":"33. Python Language Services","href":"/python/documentation/33-python-language-services","docId":"python/documentation/33-python-language-services","unlisted":false},{"type":"link","label":"PEP","href":"/python/documentation/pep","docId":"python/documentation/pep","unlisted":false},{"type":"link","label":"Python HowTos","href":"/python/documentation/python-howtos","docId":"python/documentation/python-howtos","unlisted":false},{"type":"link","label":"Python Language Reference","href":"/python/documentation/python-language-reference","docId":"python/documentation/python-language-reference","unlisted":false},{"type":"link","label":"The Python Standard Library","href":"/python/documentation/the-python-standard-library","docId":"python/documentation/the-python-standard-library","unlisted":false}],"href":"/python/documentation/"},{"type":"category","label":"Others","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"boto & boto3","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Slides","href":"/python/others/boto-and-boto3/slides","docId":"python/others/boto-and-boto3/slides","unlisted":false}],"href":"/python/others/boto-and-boto3/"},{"type":"category","label":"FastAPI","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Internal working","href":"/python/others/fastapi/internal-working","docId":"python/others/fastapi/internal-working","unlisted":false}],"href":"/python/others/fastapi/"},{"type":"category","label":"Flask","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Documentation","href":"/python/others/flask/documentation","docId":"python/others/flask/documentation","unlisted":false},{"type":"link","label":"Flask-sqlalchemy","href":"/python/others/flask/flask-sqlalchemy","docId":"python/others/flask/flask-sqlalchemy","unlisted":false},{"type":"link","label":"Others","href":"/python/others/flask/others","docId":"python/others/flask/others","unlisted":false}],"href":"/python/others/flask/"},{"type":"link","label":"Frameworks","href":"/python/others/frameworks","docId":"python/others/frameworks","unlisted":false},{"type":"link","label":"Libraries","href":"/python/others/libraries","docId":"python/others/libraries","unlisted":false},{"type":"link","label":"PyMySQL","href":"/python/others/pymysql","docId":"python/others/pymysql","unlisted":false},{"type":"link","label":"Requests","href":"/python/others/requests","docId":"python/others/requests","unlisted":false},{"type":"category","label":"SQLAlchemy","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Models","href":"/python/others/sqlalchemy/models","docId":"python/others/sqlalchemy/models","unlisted":false},{"type":"link","label":"ORM","href":"/python/others/sqlalchemy/orm","docId":"python/others/sqlalchemy/orm","unlisted":false}],"href":"/python/others/sqlalchemy/"},{"type":"link","label":"Twisted","href":"/python/others/twisted","docId":"python/others/twisted","unlisted":false}],"href":"/python/others/"},{"type":"category","label":"Python","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Basic","href":"/python/python-intro/basic","docId":"python/python-intro/basic","unlisted":false},{"type":"link","label":"Classes","href":"/python/python-intro/classes","docId":"python/python-intro/classes","unlisted":false},{"type":"category","label":"Data Structure","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Dict Evolution","href":"/python/python-intro/data-structure/dict-evolution","docId":"python/python-intro/data-structure/dict-evolution","unlisted":false},{"type":"link","label":"Dictionary Architecture","href":"/python/python-intro/data-structure/dictionary-architecture","docId":"python/python-intro/data-structure/dictionary-architecture","unlisted":false},{"type":"link","label":"Dictionary","href":"/python/python-intro/data-structure/dictionary","docId":"python/python-intro/data-structure/dictionary","unlisted":false},{"type":"link","label":"List","href":"/python/python-intro/data-structure/list","docId":"python/python-intro/data-structure/list","unlisted":false},{"type":"link","label":"Set","href":"/python/python-intro/data-structure/set","docId":"python/python-intro/data-structure/set","unlisted":false},{"type":"link","label":"Tuples","href":"/python/python-intro/data-structure/tuples","docId":"python/python-intro/data-structure/tuples","unlisted":false}],"href":"/python/python-intro/data-structure/"},{"type":"link","label":"DateTime","href":"/python/python-intro/datetime","docId":"python/python-intro/datetime","unlisted":false},{"type":"link","label":"Exceptions","href":"/python/python-intro/exceptions","docId":"python/python-intro/exceptions","unlisted":false},{"type":"link","label":"File IO","href":"/python/python-intro/file-io","docId":"python/python-intro/file-io","unlisted":false},{"type":"link","label":"Functions","href":"/python/python-intro/functions","docId":"python/python-intro/functions","unlisted":false},{"type":"link","label":"Generators","href":"/python/python-intro/generators","docId":"python/python-intro/generators","unlisted":false},{"type":"link","label":"Input Output Template","href":"/python/python-intro/input-output-template","docId":"python/python-intro/input-output-template","unlisted":false},{"type":"link","label":"Iterators","href":"/python/python-intro/iterators","docId":"python/python-intro/iterators","unlisted":false},{"type":"link","label":"Keywords","href":"/python/python-intro/keywords","docId":"python/python-intro/keywords","unlisted":false},{"type":"link","label":"Loops","href":"/python/python-intro/loops","docId":"python/python-intro/loops","unlisted":false},{"type":"link","label":"Map, reduce, filter","href":"/python/python-intro/map-reduce-filter","docId":"python/python-intro/map-reduce-filter","unlisted":false},{"type":"link","label":"Mathematics","href":"/python/python-intro/mathematics","docId":"python/python-intro/mathematics","unlisted":false},{"type":"link","label":"Modules","href":"/python/python-intro/modules","docId":"python/python-intro/modules","unlisted":false},{"type":"link","label":"OOPS","href":"/python/python-intro/oops","docId":"python/python-intro/oops","unlisted":false},{"type":"link","label":"Operators","href":"/python/python-intro/operators","docId":"python/python-intro/operators","unlisted":false},{"type":"link","label":"Questions","href":"/python/python-intro/questions","docId":"python/python-intro/questions","unlisted":false},{"type":"link","label":"Regular Expressions","href":"/python/python-intro/regular-expressions","docId":"python/python-intro/regular-expressions","unlisted":false},{"type":"link","label":"Requirements file","href":"/python/python-intro/requirements-file","docId":"python/python-intro/requirements-file","unlisted":false},{"type":"link","label":"Resources","href":"/python/python-intro/resources","docId":"python/python-intro/resources","unlisted":false},{"type":"link","label":"Sorting","href":"/python/python-intro/sorting","docId":"python/python-intro/sorting","unlisted":false},{"type":"link","label":"Strings","href":"/python/python-intro/strings","docId":"python/python-intro/strings","unlisted":false},{"type":"link","label":"Time complexities","href":"/python/python-intro/time-complexities","docId":"python/python-intro/time-complexities","unlisted":false},{"type":"link","label":"virtualenv & pip","href":"/python/python-intro/virtualenv-and-pip","docId":"python/python-intro/virtualenv-and-pip","unlisted":false}],"href":"/python/python-intro/"}],"href":"/python/"},{"type":"link","label":"Deep Notes","href":"/","docId":"readme","unlisted":false},{"type":"category","label":"Technologies","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Apache","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Airflow","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Airflow Architecture","href":"/technologies/apache/airflow/airflow-architecture","docId":"technologies/apache/airflow/airflow-architecture","unlisted":false},{"type":"link","label":"Astronomer","href":"/technologies/apache/airflow/astronomer","docId":"technologies/apache/airflow/astronomer","unlisted":false},{"type":"link","label":"Commands / Configs","href":"/technologies/apache/airflow/commands-configs","docId":"technologies/apache/airflow/commands-configs","unlisted":false},{"type":"link","label":"Concepts","href":"/technologies/apache/airflow/concepts","docId":"technologies/apache/airflow/concepts","unlisted":false},{"type":"link","label":"Dags Example","href":"/technologies/apache/airflow/dags-example","docId":"technologies/apache/airflow/dags-example","unlisted":false},{"type":"link","label":"Airflow","href":"/technologies/apache/airflow/intro","docId":"technologies/apache/airflow/intro","unlisted":false},{"type":"link","label":"Others","href":"/technologies/apache/airflow/others","docId":"technologies/apache/airflow/others","unlisted":false},{"type":"link","label":"Parallelism","href":"/technologies/apache/airflow/parallelism","docId":"technologies/apache/airflow/parallelism","unlisted":false}],"href":"/technologies/apache/airflow/"},{"type":"link","label":"Apache Flink","href":"/technologies/apache/apache-flink","docId":"technologies/apache/apache-flink","unlisted":false},{"type":"category","label":"Apache Hadoop","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Apache Hadoop","href":"/technologies/apache/apache-hadoop/about","docId":"technologies/apache/apache-hadoop/about","unlisted":false},{"type":"link","label":"Big Data Hadoop Stack","href":"/technologies/apache/apache-hadoop/big-data-hadoop-stack","docId":"technologies/apache/apache-hadoop/big-data-hadoop-stack","unlisted":false},{"type":"link","label":"Hadoop MapReduce 1.0","href":"/technologies/apache/apache-hadoop/hadoop-mapreduce-1.0","docId":"technologies/apache/apache-hadoop/hadoop-mapreduce-1.0","unlisted":false},{"type":"link","label":"Hadoop MapReduce 2.0","href":"/technologies/apache/apache-hadoop/hadoop-mapreduce-2.0","docId":"technologies/apache/apache-hadoop/hadoop-mapreduce-2.0","unlisted":false},{"type":"link","label":"HDFS","href":"/technologies/apache/apache-hadoop/hdfs","docId":"technologies/apache/apache-hadoop/hdfs","unlisted":false},{"type":"link","label":"Intro","href":"/technologies/apache/apache-hadoop/intro","docId":"technologies/apache/apache-hadoop/intro","unlisted":false},{"type":"link","label":"MapReduce Examples","href":"/technologies/apache/apache-hadoop/mapreduce-examples","docId":"technologies/apache/apache-hadoop/mapreduce-examples","unlisted":false},{"type":"link","label":"Others","href":"/technologies/apache/apache-hadoop/others","docId":"technologies/apache/apache-hadoop/others","unlisted":false}],"href":"/technologies/apache/apache-hadoop/"},{"type":"link","label":"Apache HBase","href":"/technologies/apache/apache-hbase","docId":"technologies/apache/apache-hbase","unlisted":false},{"type":"link","label":"Apache Hive","href":"/technologies/apache/apache-hive","docId":"technologies/apache/apache-hive","unlisted":false},{"type":"link","label":"Hudi","href":"/technologies/apache/apache-hudi","docId":"technologies/apache/apache-hudi","unlisted":false},{"type":"link","label":"Apache Projects","href":"/technologies/apache/apache-projects","docId":"technologies/apache/apache-projects","unlisted":false},{"type":"link","label":"Apache Pulsar","href":"/technologies/apache/apache-pulsar","docId":"technologies/apache/apache-pulsar","unlisted":false},{"type":"link","label":"Apache Samza","href":"/technologies/apache/apache-samza","docId":"technologies/apache/apache-samza","unlisted":false},{"type":"category","label":"Apache Spark","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Intro","href":"/technologies/apache/apache-spark/00-intro","docId":"technologies/apache/apache-spark/00-intro","unlisted":false},{"type":"link","label":"Terms","href":"/technologies/apache/apache-spark/01-terms","docId":"technologies/apache/apache-spark/01-terms","unlisted":false},{"type":"link","label":"Spark Modules","href":"/technologies/apache/apache-spark/02-spark-modules","docId":"technologies/apache/apache-spark/02-spark-modules","unlisted":false},{"type":"link","label":"Processing Model","href":"/technologies/apache/apache-spark/03-processing-model","docId":"technologies/apache/apache-spark/03-processing-model","unlisted":false},{"type":"link","label":"Key points","href":"/technologies/apache/apache-spark/04-key-points","docId":"technologies/apache/apache-spark/04-key-points","unlisted":false},{"type":"link","label":"Spark Built-in Libraries","href":"/technologies/apache/apache-spark/05-spark-built-in-libraries","docId":"technologies/apache/apache-spark/05-spark-built-in-libraries","unlisted":false},{"type":"link","label":"Sliding Window Analytics","href":"/technologies/apache/apache-spark/06-sliding-window-analytics","docId":"technologies/apache/apache-spark/06-sliding-window-analytics","unlisted":false},{"type":"link","label":"Joins","href":"/technologies/apache/apache-spark/07-joins","docId":"technologies/apache/apache-spark/07-joins","unlisted":false},{"type":"link","label":"Examples","href":"/technologies/apache/apache-spark/08-examples","docId":"technologies/apache/apache-spark/08-examples","unlisted":false},{"type":"link","label":"DataFrame","href":"/technologies/apache/apache-spark/09-dataframe","docId":"technologies/apache/apache-spark/09-dataframe","unlisted":false},{"type":"link","label":"SQL Functions / Datasources","href":"/technologies/apache/apache-spark/10-sql-functions-datasources","docId":"technologies/apache/apache-spark/10-sql-functions-datasources","unlisted":false},{"type":"link","label":"Built-In Functions","href":"/technologies/apache/apache-spark/11-built-in-functions","docId":"technologies/apache/apache-spark/11-built-in-functions","unlisted":false},{"type":"link","label":"Others","href":"/technologies/apache/apache-spark/99-others","docId":"technologies/apache/apache-spark/99-others","unlisted":false}],"href":"/technologies/apache/apache-spark/"},{"type":"link","label":"Apache Storm","href":"/technologies/apache/apache-storm","docId":"technologies/apache/apache-storm","unlisted":false},{"type":"link","label":"Apache Zookeeper","href":"/technologies/apache/apache-zookeeper","docId":"technologies/apache/apache-zookeeper","unlisted":false},{"type":"category","label":"Celery","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Celery Backend","href":"/technologies/apache/celery/celery-backend","docId":"technologies/apache/celery/celery-backend","unlisted":false},{"type":"link","label":"Commands / Tools","href":"/technologies/apache/celery/commands-tools","docId":"technologies/apache/celery/commands-tools","unlisted":false},{"type":"link","label":"Workers","href":"/technologies/apache/celery/workers","docId":"technologies/apache/celery/workers","unlisted":false}],"href":"/technologies/apache/celery/"},{"type":"link","label":"CNCF","href":"/technologies/apache/cncf","docId":"technologies/apache/cncf","unlisted":false},{"type":"link","label":"Data Pipeline Architecture","href":"/technologies/apache/data-pipeline-architecture","docId":"technologies/apache/data-pipeline-architecture","unlisted":false},{"type":"link","label":"Others","href":"/technologies/apache/others","docId":"technologies/apache/others","unlisted":false}],"href":"/technologies/apache/"},{"type":"category","label":"Brokers","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"EMQTT","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/technologies/brokers/emqtt/commands","docId":"technologies/brokers/emqtt/commands","unlisted":false},{"type":"link","label":"Conf","href":"/technologies/brokers/emqtt/conf","docId":"technologies/brokers/emqtt/conf","unlisted":false},{"type":"link","label":"Deployment and Installation","href":"/technologies/brokers/emqtt/deployment-and-installation","docId":"technologies/brokers/emqtt/deployment-and-installation","unlisted":false},{"type":"link","label":"Plugins","href":"/technologies/brokers/emqtt/plugins","docId":"technologies/brokers/emqtt/plugins","unlisted":false}],"href":"/technologies/brokers/emqtt/"},{"type":"link","label":"Others","href":"/technologies/brokers/others","docId":"technologies/brokers/others","unlisted":false},{"type":"link","label":"RabbitMQ","href":"/technologies/brokers/rabbitmq","docId":"technologies/brokers/rabbitmq","unlisted":false},{"type":"link","label":"sMAP","href":"/technologies/brokers/smap","docId":"technologies/brokers/smap","unlisted":false},{"type":"category","label":"VerneMQ","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Commands","href":"/technologies/brokers/vernemq/commands","docId":"technologies/brokers/vernemq/commands","unlisted":false}],"href":"/technologies/brokers/vernemq/"},{"type":"link","label":"Volttron","href":"/technologies/brokers/volttron","docId":"technologies/brokers/volttron","unlisted":false}],"href":"/technologies/brokers/"},{"type":"category","label":"Databricks","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Databricks","href":"/technologies/databricks/01-databricks","docId":"technologies/databricks/01-databricks","unlisted":false},{"type":"link","label":"Databricks in 5 minutes","href":"/technologies/databricks/02-databricks-getting-started","docId":"technologies/databricks/02-databricks-getting-started","unlisted":false},{"type":"link","label":"Optimizations","href":"/technologies/databricks/03-optimizations","docId":"technologies/databricks/03-optimizations","unlisted":false},{"type":"link","label":"Workflow","href":"/technologies/databricks/04-workflow","docId":"technologies/databricks/04-workflow","unlisted":false},{"type":"link","label":"Medallion Architecture","href":"/technologies/databricks/10-medallion-architecture","docId":"technologies/databricks/10-medallion-architecture","unlisted":false},{"type":"link","label":"Delta Live Tables","href":"/technologies/databricks/20-delta-live-tables","docId":"technologies/databricks/20-delta-live-tables","unlisted":false},{"type":"link","label":"Unity Catalog","href":"/technologies/databricks/30-unity-catalog","docId":"technologies/databricks/30-unity-catalog","unlisted":false},{"type":"link","label":"Databricks-commands","href":"/technologies/databricks/40-databricks-commands","docId":"technologies/databricks/40-databricks-commands","unlisted":false},{"type":"link","label":"Others","href":"/technologies/databricks/99-others","docId":"technologies/databricks/99-others","unlisted":false}],"href":"/technologies/databricks/"},{"type":"category","label":"Elasticsearch","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Analysis and Analyzers","href":"/technologies/elasticsearch/analysis-and-analyzers","docId":"technologies/elasticsearch/analysis-and-analyzers","unlisted":false},{"type":"link","label":"Architecture","href":"/technologies/elasticsearch/architecture","docId":"technologies/elasticsearch/architecture","unlisted":false},{"type":"link","label":"Commands","href":"/technologies/elasticsearch/commands","docId":"technologies/elasticsearch/commands","unlisted":false},{"type":"link","label":"ElastAlert","href":"/technologies/elasticsearch/elastalert","docId":"technologies/elasticsearch/elastalert","unlisted":false},{"type":"link","label":"Elasticsearch: The Definitive Guide","href":"/technologies/elasticsearch/elasticsearch-the-definitive-guide","docId":"technologies/elasticsearch/elasticsearch-the-definitive-guide","unlisted":false},{"type":"link","label":"ELK/EFK Stack /Elastic Stack / ElasticSearch","href":"/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch","docId":"technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch","unlisted":false},{"type":"link","label":"Full Text Searches","href":"/technologies/elasticsearch/full-text-searches","docId":"technologies/elasticsearch/full-text-searches","unlisted":false},{"type":"link","label":"Getting Started","href":"/technologies/elasticsearch/getting-started","docId":"technologies/elasticsearch/getting-started","unlisted":false},{"type":"link","label":"Information Retrieval","href":"/technologies/elasticsearch/information-retrieval","docId":"technologies/elasticsearch/information-retrieval","unlisted":false},{"type":"link","label":"Internal Working","href":"/technologies/elasticsearch/internal-working","docId":"technologies/elasticsearch/internal-working","unlisted":false},{"type":"link","label":"Others","href":"/technologies/elasticsearch/others","docId":"technologies/elasticsearch/others","unlisted":false}],"href":"/technologies/elasticsearch/"},{"type":"category","label":"Git","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Branching Strategies","href":"/technologies/git/branching-strategies","docId":"technologies/git/branching-strategies","unlisted":false},{"type":"link","label":"Commands","href":"/technologies/git/commands","docId":"technologies/git/commands","unlisted":false},{"type":"link","label":"Github","href":"/technologies/git/github","docId":"technologies/git/github","unlisted":false},{"type":"link","label":"Others","href":"/technologies/git/others","docId":"technologies/git/others","unlisted":false},{"type":"link","label":"Theory","href":"/technologies/git/theory","docId":"technologies/git/theory","unlisted":false}],"href":"/technologies/git/"},{"type":"category","label":"Kafka","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"confluent-kafka","href":"/technologies/kafka/confluent-kafka","docId":"technologies/kafka/confluent-kafka","unlisted":false},{"type":"link","label":"Installing Kafka","href":"/technologies/kafka/installing-kafka","docId":"technologies/kafka/installing-kafka","unlisted":false},{"type":"link","label":"Intro to Kafka","href":"/technologies/kafka/intro-to-kafka","docId":"technologies/kafka/intro-to-kafka","unlisted":false},{"type":"link","label":"Intro","href":"/technologies/kafka/intro","docId":"technologies/kafka/intro","unlisted":false},{"type":"link","label":"Kafka Architecture","href":"/technologies/kafka/kafka-architecture","docId":"technologies/kafka/kafka-architecture","unlisted":false},{"type":"link","label":"Kafka Commands","href":"/technologies/kafka/kafka-commands","docId":"technologies/kafka/kafka-commands","unlisted":false},{"type":"link","label":"Kafka Connect","href":"/technologies/kafka/kafka-connect","docId":"technologies/kafka/kafka-connect","unlisted":false},{"type":"link","label":"Kafka Consumers","href":"/technologies/kafka/kafka-consumers","docId":"technologies/kafka/kafka-consumers","unlisted":false},{"type":"link","label":"Kafka Listeners","href":"/technologies/kafka/kafka-listeners","docId":"technologies/kafka/kafka-listeners","unlisted":false},{"type":"link","label":"Kafka Producers","href":"/technologies/kafka/kafka-producers","docId":"technologies/kafka/kafka-producers","unlisted":false},{"type":"link","label":"kafka-python","href":"/technologies/kafka/kafka-python","docId":"technologies/kafka/kafka-python","unlisted":false},{"type":"link","label":"kafka-rest proxy","href":"/technologies/kafka/kafka-rest-proxy","docId":"technologies/kafka/kafka-rest-proxy","unlisted":false},{"type":"link","label":"Kafka schema-registry","href":"/technologies/kafka/kafka-schema-registry","docId":"technologies/kafka/kafka-schema-registry","unlisted":false},{"type":"link","label":"Kafka Streams","href":"/technologies/kafka/kafka-streams","docId":"technologies/kafka/kafka-streams","unlisted":false},{"type":"link","label":"Kafka Topic/Replication","href":"/technologies/kafka/kafka-topic-replication","docId":"technologies/kafka/kafka-topic-replication","unlisted":false},{"type":"link","label":"kafkacat","href":"/technologies/kafka/kafkacat","docId":"technologies/kafka/kafkacat","unlisted":false},{"type":"link","label":"Migration / Mirroring / Replication","href":"/technologies/kafka/migration-mirroring-replication","docId":"technologies/kafka/migration-mirroring-replication","unlisted":false},{"type":"link","label":"Monitoring","href":"/technologies/kafka/monitoring","docId":"technologies/kafka/monitoring","unlisted":false},{"type":"link","label":"Others","href":"/technologies/kafka/others","docId":"technologies/kafka/others","unlisted":false},{"type":"link","label":"Security","href":"/technologies/kafka/security","docId":"technologies/kafka/security","unlisted":false},{"type":"link","label":"Strimzi","href":"/technologies/kafka/strimzi","docId":"technologies/kafka/strimzi","unlisted":false}],"href":"/technologies/kafka/"},{"type":"category","label":"Others","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"FastTag","href":"/technologies/others/fasttag","docId":"technologies/others/fasttag","unlisted":false},{"type":"link","label":"Other Technologies","href":"/technologies/others/other-technologies","docId":"technologies/others/other-technologies","unlisted":false},{"type":"link","label":"Others - Distributed Systems","href":"/technologies/others/others-distributed-systems","docId":"technologies/others/others-distributed-systems","unlisted":false},{"type":"link","label":"Others - IoT","href":"/technologies/others/others-iot","docId":"technologies/others/others-iot","unlisted":false},{"type":"link","label":"Presto","href":"/technologies/others/presto","docId":"technologies/others/presto","unlisted":false}],"href":"/technologies/others/"}],"href":"/technologies/"}]},"docs":{"about-me/achievements-activities-awards":{"id":"about-me/achievements-activities-awards","title":"Achievements / Activities / Awards","description":"Achievements","sidebar":"tutorialSidebar"},"about-me/experience":{"id":"about-me/experience","title":"Experience","description":"Resume","sidebar":"tutorialSidebar"},"about-me/faqs":{"id":"about-me/faqs","title":"FAQs","description":"Describe yourself in a short phrase","sidebar":"tutorialSidebar"},"about-me/ideas/creating-a-business-startup":{"id":"about-me/ideas/creating-a-business-startup","title":"Creating a Business / Startup","description":"Brand name - How to create a great brand name | Jonathan Bell","sidebar":"tutorialSidebar"},"about-me/ideas/donations":{"id":"about-me/ideas/donations","title":"Donations","description":"Altruism / Compassion","sidebar":"tutorialSidebar"},"about-me/ideas/education":{"id":"about-me/ideas/education","title":"Education","description":"Education\'s purpose is to replace an empty mind with an open one.","sidebar":"tutorialSidebar"},"about-me/ideas/improvements-feedbacks":{"id":"about-me/ideas/improvements-feedbacks","title":"Improvements / Feedbacks","description":"Android","sidebar":"tutorialSidebar"},"about-me/ideas/intro":{"id":"about-me/ideas/intro","title":"Intro","description":"Once an idea has taken hold of the brain it\'s almost impossible to eradicate. An idea that is fully formed - fully understood - that sticks; right in there somewhere. -- Inception","sidebar":"tutorialSidebar"},"about-me/ideas/non-profit":{"id":"about-me/ideas/non-profit","title":"Non Profit","description":"Homeless shelter run by homeless people","sidebar":"tutorialSidebar"},"about-me/ideas/others":{"id":"about-me/ideas/others","title":"Others","description":"Examples / Products","sidebar":"tutorialSidebar"},"about-me/ideas/readme":{"id":"about-me/ideas/readme","title":"Ideas","description":"- Intro","sidebar":"tutorialSidebar"},"about-me/ideas/society":{"id":"about-me/ideas/society","title":"Society","description":"Gender Equality (Women Empowerment)","sidebar":"tutorialSidebar"},"about-me/ideas/startup-ideas-physical":{"id":"about-me/ideas/startup-ideas-physical","title":"Startup Ideas - Physical","description":"Consolidated Gig Marketplace","sidebar":"tutorialSidebar"},"about-me/ideas/startup-quotes":{"id":"about-me/ideas/startup-quotes","title":"Startup Quotes","description":"If you have to spell your startup name every time you say it, it\'s a bad name","sidebar":"tutorialSidebar"},"about-me/ideas/startups-ideas-saas":{"id":"about-me/ideas/startups-ideas-saas","title":"Startups Ideas - SAAS","description":"Create best software companies with Indian labour, since labour is cheap in India like Zoho","sidebar":"tutorialSidebar"},"about-me/ideas/thoughts-future-ideas-vision-prediction":{"id":"about-me/ideas/thoughts-future-ideas-vision-prediction","title":"Thoughts / Future / Ideas / Vision / Prediction","description":"1. Over time people will reduce reading books (Books will die)","sidebar":"tutorialSidebar"},"about-me/paper-publications-references":{"id":"about-me/paper-publications-references","title":"Papers & Publications","description":"Deepika Yadav, Pushpendra Singh, Kyle Montague, Vijay Kumar, Deepak Sood, Madeline Balaam, Drishti Sharma, Mona Duggal, Tom Bartindale, Delvin Varghese, and Patrick Olivier. 2017. Sangoshthi https://doi.org/10.1145/3038912.3052624","sidebar":"tutorialSidebar"},"about-me/personality":{"id":"about-me/personality","title":"Personality","description":"About Me","sidebar":"tutorialSidebar"},"about-me/projects/44-agri-tech-digital-transformation-case-study":{"id":"about-me/projects/44-agri-tech-digital-transformation-case-study","title":"Agri Tech Digital Transformation Case Study","description":"Case Study: Digital Transformation for an Agri-Tech Startup","sidebar":"tutorialSidebar"},"about-me/projects/45-traditional-ai-case-studies":{"id":"about-me/projects/45-traditional-ai-case-studies","title":"Traditional AI Case study","description":"Financial Technology (FinTech) Fraud Detection Case Study","sidebar":"tutorialSidebar"},"about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering":{"id":"about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering","title":"Podcast - Streamlining Cloud Migration Through Data Engineering","description":"In the fast-evolving world of cloud computing, a successful migration isn\'t just about moving infrastructure\u2014it\'s about handling data with precision. Data engineering plays a pivotal role in ensuring a seamless, efficient, and secure cloud migration.","sidebar":"tutorialSidebar"},"about-me/projects/47-genai-case-study-careers360":{"id":"about-me/projects/47-genai-case-study-careers360","title":"GenAI Case Study - Careers360","description":"Case Study: Enhancing Productivity at Careers360 with GenAI and Amazon Bedrock","sidebar":"tutorialSidebar"},"about-me/projects/48-rag-genai-presentation":{"id":"about-me/projects/48-rag-genai-presentation","title":"RAG / GenAI Presentation","description":"TFUG - TensorFlow User Group Ghaziabad","sidebar":"tutorialSidebar"},"about-me/projects/49-data-practical-use-cases":{"id":"about-me/projects/49-data-practical-use-cases","title":"Data Practical Use Cases","description":"Data Engineering","sidebar":"tutorialSidebar"},"about-me/projects/50-use-cases-aiml-logistics-warehousing":{"id":"about-me/projects/50-use-cases-aiml-logistics-warehousing","title":"Use Cases: AIML in Logistics and Warehousing","description":"To achieve 100% On-time Delivery (OTD) and reduce delivery lead time using AI/ML, consider the following use cases and solutions:","sidebar":"tutorialSidebar"},"about-me/projects/51-case-study-anomaly-detection":{"id":"about-me/projects/51-case-study-anomaly-detection","title":"Case Study: Anomaly Detection in Metric Data using Isolation Forest","description":"Introduction","sidebar":"tutorialSidebar"},"about-me/projects/52-pull-request-risk-tagging-heuristics":{"id":"about-me/projects/52-pull-request-risk-tagging-heuristics","title":"Pull Request Risk Tagging Heuristics","description":"What are all the heuristics that can be used to create a AI model that can create a \\"change risk tag\\" if the code changes is risky or not","sidebar":"tutorialSidebar"},"about-me/projects/53-mozark-cloud-cost-optimization":{"id":"about-me/projects/53-mozark-cloud-cost-optimization","title":"Mozark - Cloud Cost Optimization and Performance Enhancement","description":"Client Overview","sidebar":"tutorialSidebar"},"about-me/projects/54-airflow-kafka-migration":{"id":"about-me/projects/54-airflow-kafka-migration","title":"Airflow and Kafka Migration","description":"Client - Coto.World | Women-Only Community & Consultation App","sidebar":"tutorialSidebar"},"about-me/projects/55-azure-social-media-analytics":{"id":"about-me/projects/55-azure-social-media-analytics","title":"Azure Social Media Analytics","description":"Social Media is changing the ways we consume the internet. Users from almost every background have a social media presence and dedicate a significant amount of time to using social media.","sidebar":"tutorialSidebar"},"about-me/projects/56-freecharge-cost-optimization-dba":{"id":"about-me/projects/56-freecharge-cost-optimization-dba","title":"Freecharge - Cost Optimization and Database Administration","description":"Client Overview","sidebar":"tutorialSidebar"},"about-me/projects/57-careers360-cost-optimization":{"id":"about-me/projects/57-careers360-cost-optimization","title":"Careers360 Cost Optimization","description":"Client Overview","sidebar":"tutorialSidebar"},"about-me/projects/58-aws-gen-ai-hackathon-rag":{"id":"about-me/projects/58-aws-gen-ai-hackathon-rag","title":"AWS Gen AI Hackathon RAG","description":"Virtual Recruiter | GenAI - RAG - Google Slides","sidebar":"tutorialSidebar"},"about-me/projects/59-data-engineering-product-pitch-iot-industry":{"id":"about-me/projects/59-data-engineering-product-pitch-iot-industry","title":"Data Engineering Product Pitch IoT Industry","description":"Top Questions","sidebar":"tutorialSidebar"},"about-me/projects/60-data-engineering-case-studies":{"id":"about-me/projects/60-data-engineering-case-studies","title":"Data Engineering Case Studies","description":"Internet of Things (IoT)","sidebar":"tutorialSidebar"},"about-me/projects/61-general-application-management-case-study":{"id":"about-me/projects/61-general-application-management-case-study","title":"General Application Management Case Study","description":"Title","sidebar":"tutorialSidebar"},"about-me/projects/62-application-management-case-study-telecom":{"id":"about-me/projects/62-application-management-case-study-telecom","title":"Application Management Case Study - Telecom","description":"Title","sidebar":"tutorialSidebar"},"about-me/projects/63-mlops-master-document":{"id":"about-me/projects/63-mlops-master-document","title":"MLOps Master Document","description":"Introduction","sidebar":"tutorialSidebar"},"about-me/projects/64-mlops-case-studies":{"id":"about-me/projects/64-mlops-case-studies","title":"MLOps Case Studies","description":"Financial Technology (FinTech) Fraud Detection Case Study","sidebar":"tutorialSidebar"},"about-me/projects/65-problems-in-iot-industry":{"id":"about-me/projects/65-problems-in-iot-industry","title":"Problems in IoT Industry","description":"Top 5 Problems Faced by IoT Industry","sidebar":"tutorialSidebar"},"about-me/projects/66-iot-case-studies":{"id":"about-me/projects/66-iot-case-studies","title":"IoT Case Studies","description":"Zenatix Case Study","sidebar":"tutorialSidebar"},"about-me/projects/67-data-engineering-battle-cards":{"id":"about-me/projects/67-data-engineering-battle-cards","title":"Data Engineering - Battle Cards","description":"Battle Card 1: Migration Services","sidebar":"tutorialSidebar"},"about-me/projects/70-interview-datainsight-alerting-engine":{"id":"about-me/projects/70-interview-datainsight-alerting-engine","title":"Interview - Datainsight / Alerting Engine","description":"Data Insight","sidebar":"tutorialSidebar"},"about-me/projects/71-opstree-standard-proposal-format":{"id":"about-me/projects/71-opstree-standard-proposal-format","title":"Opstree Standard Proposal Format","description":"Landing Page","sidebar":"tutorialSidebar"},"about-me/projects/75-bake-io-data-engineering":{"id":"about-me/projects/75-bake-io-data-engineering","title":"Bake.io Data Engineering","description":"- Working on Databricks to create centralized data warehouse with bronze, silver and gold layers","sidebar":"tutorialSidebar"},"about-me/projects/80-stashfin":{"id":"about-me/projects/80-stashfin","title":"Stashfin","description":"Product","sidebar":"tutorialSidebar"},"about-me/projects/81-stashfin-terms":{"id":"about-me/projects/81-stashfin-terms","title":"Stashfin Terms","description":"- FCP - Free Credit Period","sidebar":"tutorialSidebar"},"about-me/projects/82-stashfin-metrics":{"id":"about-me/projects/82-stashfin-metrics","title":"Stashfin Metrics","description":"Management Metrics / Tools","sidebar":"tutorialSidebar"},"about-me/projects/85-stashfin-twitter-bot":{"id":"about-me/projects/85-stashfin-twitter-bot","title":"Stashfin Twitter Bot","description":"Enhancing Customer Support with a Twitter Bot: A Case Study for Stashfin","sidebar":"tutorialSidebar"},"about-me/projects/86-stashfin-customer-support":{"id":"about-me/projects/86-stashfin-customer-support","title":"Stashfin Customer Support","description":"Improvements","sidebar":"tutorialSidebar"},"about-me/projects/87-stashfin-team-management-culture":{"id":"about-me/projects/87-stashfin-team-management-culture","title":"Stashfin Team Management / Culture","description":"Hiring","sidebar":"tutorialSidebar"},"about-me/projects/88-stashfin-security-iam-apis":{"id":"about-me/projects/88-stashfin-security-iam-apis","title":"Stashfin Security / IAM / APIs","description":"Security","sidebar":"tutorialSidebar"},"about-me/projects/89-stashfin-devops-overhaul":{"id":"about-me/projects/89-stashfin-devops-overhaul","title":"Stashfin DevOps Overhaul","description":"- Scaled the stack and team to increase loan disbursals from 100K USD to 60M USD per month","sidebar":"tutorialSidebar"},"about-me/projects/90-stashfin-tech-stack-infra":{"id":"about-me/projects/90-stashfin-tech-stack-infra","title":"Stashfin Tech Stack / Infra","description":"Stashfin Infra Diagram","sidebar":"tutorialSidebar"},"about-me/projects/91-stashfin-aiml-use-cases":{"id":"about-me/projects/91-stashfin-aiml-use-cases","title":"Stashfin AIML Use Cases & Implementation","description":"1. Credit Scoring and Risk Assessment","sidebar":"tutorialSidebar"},"about-me/projects/98-others":{"id":"about-me/projects/98-others","title":"Others","description":"2024-09-03 - Manav Rachna - Sabyasachi","sidebar":"tutorialSidebar"},"about-me/projects/99-ciso-cybersecurity":{"id":"about-me/projects/99-ciso-cybersecurity","title":"CISO Cybersecurity","description":"- Implemented face detection using Viola-Jones Algorithm, corner detection using fixed points, Live Video Streaming using ffmpeg with scripting in python and product development using Java, Spring and Java-FX","sidebar":"tutorialSidebar"},"about-me/projects/readme":{"id":"about-me/projects/readme","title":"Projects","description":"Office Projects","sidebar":"tutorialSidebar"},"about-me/readme":{"id":"about-me/readme","title":"About Me","description":"- Resume","sidebar":"tutorialSidebar"},"about-me/social-links":{"id":"about-me/social-links","title":"Social Links","description":"Schedule a call with me - Deepak Sood | Calendly","sidebar":"tutorialSidebar"},"ai/big-data/characteristics":{"id":"ai/big-data/characteristics","title":"Characteristics","description":"Big Data includes huge volume, high velocity, and extensible variety of data.","sidebar":"tutorialSidebar"},"ai/big-data/data":{"id":"ai/big-data/data","title":"Data","description":"What is Data","sidebar":"tutorialSidebar"},"ai/big-data/data-masking":{"id":"ai/big-data/data-masking","title":"Data Masking","description":"What is data masking?","sidebar":"tutorialSidebar"},"ai/big-data/data-preprocessing":{"id":"ai/big-data/data-preprocessing","title":"Data Preprocessing","description":"Data Preprocessing","sidebar":"tutorialSidebar"},"ai/big-data/data-quality":{"id":"ai/big-data/data-quality","title":"# Data Quality","description":"Data Quality","sidebar":"tutorialSidebar"},"ai/big-data/design-of-hbase":{"id":"ai/big-data/design-of-hbase","title":"Design of HBase","description":"1. What is HBase","sidebar":"tutorialSidebar"},"ai/big-data/design-of-key-value-stores":{"id":"ai/big-data/design-of-key-value-stores","title":"Design of Key-Value Stores","description":"- We will discuss the design and insight of key-value/NoSQL stores for today\'s cloud storage systems.","sidebar":"tutorialSidebar"},"ai/big-data/design-of-zookeeper":{"id":"ai/big-data/design-of-zookeeper","title":"Design of Zookeeper","description":"Zookeeper - Service for coordinating processes of distributed applications","sidebar":"tutorialSidebar"},"ai/big-data/intro":{"id":"ai/big-data/intro","title":"Big Data","description":"Big data is a term used to refer to data sets that are too large or complex for traditional data-processing application software to adequately deal with.","sidebar":"tutorialSidebar"},"ai/big-data/page-rank":{"id":"ai/big-data/page-rank","title":"Page Rank","description":"https://towardsdatascience.com/pagerank-algorithm-fully-explained-dc794184b4af","sidebar":"tutorialSidebar"},"ai/big-data/parameter-servers":{"id":"ai/big-data/parameter-servers","title":"Parameter Servers","description":"Parameter Servers and Stale Synchronous Parallel Model","sidebar":"tutorialSidebar"},"ai/big-data/processing-engine":{"id":"ai/big-data/processing-engine","title":"Processing Engine","description":"A processing engine, sometimes called a processing framework, is responsible for performing data processing tasks. A comparison is probably the best way to understand this. Apache Hadoop is an open source software platform that also deals with \\"Big Data\\" and distributed computing. Hadoop has a processing engine, distinct from Spark, called MapReduce. MapReduce has its own particular way of optimizing tasks to be processed on multiple nodes and Spark has a different way. One of Sparks strengths is that it is a processing engine that can be used on its own, or used in place of Hadoop MapReduce, taking advantage of the other features of Hadoop.","sidebar":"tutorialSidebar"},"ai/big-data/readme":{"id":"ai/big-data/readme","title":"Big Data","description":"- Big Data","sidebar":"tutorialSidebar"},"ai/big-data/tools":{"id":"ai/big-data/tools","title":"Tools","description":"Data Hub","sidebar":"tutorialSidebar"},"ai/big-data/types-of-data":{"id":"ai/big-data/types-of-data","title":"Types of Data","description":"Types of Data - by organization","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/convolutional-neural-network-cnn":{"id":"ai/computer-vision-cv/convolutional-neural-network-cnn","title":"Convolutional Neural Network (CNN)","description":"Neural Networks","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/cv-libraries-tools":{"id":"ai/computer-vision-cv/cv-libraries-tools","title":"CV - Libraries / Tools","description":"SSD - Single Shot MultiBox Detector","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/examples":{"id":"ai/computer-vision-cv/examples","title":"Examples","description":"- Image Classifier","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/image-data-labeling-tools":{"id":"ai/computer-vision-cv/image-data-labeling-tools","title":"Image / Data Labeling Tools","description":"Open Source Data Labeling | Label Studio","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/image-formats":{"id":"ai/computer-vision-cv/image-formats","title":"Image Formats","description":"Exchangeable image file format (EXIF)","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/imagemagick":{"id":"ai/computer-vision-cv/imagemagick","title":"ImageMagick","description":"GitHub - ImageMagick/ImageMagick: \ud83e\uddd9\u200d\u2642\ufe0f ImageMagick 7","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/intro":{"id":"ai/computer-vision-cv/intro","title":"Computer Vision / CV Intro","description":"1. 13.1. Image Augmentation","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow":{"id":"ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow","title":"MNIST For ML Beginners | TensorFlow","description":"When one learns how to program, there\'s a tradition that the first thing you do is print \\"Hello World.\\" Just like programming has Hello World, machine learning has MNIST.","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/model-building-stages":{"id":"ai/computer-vision-cv/model-building-stages","title":"Model Building Stages","description":"1. Define the Problem","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/others":{"id":"ai/computer-vision-cv/others","title":"Others","description":"Locally Linear Embedding","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/pre-trained-models":{"id":"ai/computer-vision-cv/pre-trained-models","title":"Pre-Trained Models","description":"Pre-trained models\xa0are neural networks trained on large datasets before being fine-tuned for specific tasks. These models capture intricate patterns and features, making them highly effective for image classification. By leveraging pre-trained models, developers can save time and computational resources. They can also achieve high accuracy with less data. Popular models like VGG, ResNet, and Inception have set benchmarks in the field.","sidebar":"tutorialSidebar"},"ai/computer-vision-cv/readme":{"id":"ai/computer-vision-cv/readme","title":"Computer Vision","description":"- Computer Vision (CV) Intro","sidebar":"tutorialSidebar"},"ai/data-science/data-analysis":{"id":"ai/data-science/data-analysis","title":"Data Analysis","description":"https://www.freecodecamp.org/learn/data-analysis-with-python","sidebar":"tutorialSidebar"},"ai/data-science/data-governance":{"id":"ai/data-science/data-governance","title":"Data Governance","description":"Data governance (DG) is the process of managing the availability, usability, integrity and security of the data in enterprise systems, based on internal data standards and policies that also control data usage. Effective data governance ensures that data is consistent and trustworthy and doesn\'t get misused. It\'s increasingly critical as organizations face new data privacy regulations and rely more and more on data analytics to help optimize operations and drive business decision-making.","sidebar":"tutorialSidebar"},"ai/data-science/data-mining":{"id":"ai/data-science/data-mining","title":"Data Mining","description":"Why data Mining","sidebar":"tutorialSidebar"},"ai/data-science/datasets":{"id":"ai/data-science/datasets","title":"Datasets","description":"Home - Data Commons","sidebar":"tutorialSidebar"},"ai/data-science/intro":{"id":"ai/data-science/intro","title":"Intro","description":"1. Problem Framing","sidebar":"tutorialSidebar"},"ai/data-science/questions":{"id":"ai/data-science/questions","title":"Questions","description":"Data Science","sidebar":"tutorialSidebar"},"ai/data-science/readme":{"id":"ai/data-science/readme","title":"Data Science","description":"- Intro","sidebar":"tutorialSidebar"},"ai/data-science/recommender-system":{"id":"ai/data-science/recommender-system","title":"Recommender System","description":"A Recommender System (a.k.a. Collaborative Filtering, Social Filtering, and Social Information Filtering) is an information filtering technique that takes details and data associated with a user\'s profile and compares it with similar data (habits, likes, opinions, etc.) of other users on the same service in order to present recommendations of what might be of interest to the original user.","sidebar":"tutorialSidebar"},"ai/data-science/statistics":{"id":"ai/data-science/statistics","title":"Statistics","description":"Statistics in Data Preparation","sidebar":"tutorialSidebar"},"ai/data-science/topics":{"id":"ai/data-science/topics","title":"Topics","description":"DBSCAN","sidebar":"tutorialSidebar"},"ai/data-visualization/bi-tools":{"id":"ai/data-visualization/bi-tools","title":"BI Tools","description":"https://www.toptal.com/business-intelligence/interview-questions","sidebar":"tutorialSidebar"},"ai/data-visualization/charts":{"id":"ai/data-visualization/charts","title":"Charts","description":"Graphic Types","sidebar":"tutorialSidebar"},"ai/data-visualization/d3-data-driven-documents":{"id":"ai/data-visualization/d3-data-driven-documents","title":"D3 (Data Driven Documents)","description":"https://www.freecodecamp.org/learn/data-visualization","sidebar":"tutorialSidebar"},"ai/data-visualization/intro":{"id":"ai/data-visualization/intro","title":"Data Visualization","description":"Exploratory and Explanatory visualization","sidebar":"tutorialSidebar"},"ai/data-visualization/matplotlib":{"id":"ai/data-visualization/matplotlib","title":"Matplotlib","description":"Matplotlib","sidebar":"tutorialSidebar"},"ai/data-visualization/metabase":{"id":"ai/data-visualization/metabase","title":"Metabase","description":"Metabase is an open source business intelligence tool. It lets you ask questions about your data, and displays answers in formats that make sense, whether that\'s a bar graph or a detailed table.","sidebar":"tutorialSidebar"},"ai/data-visualization/plotly":{"id":"ai/data-visualization/plotly","title":"Plotly","description":"similar to matplotlib","sidebar":"tutorialSidebar"},"ai/data-visualization/powerbi":{"id":"ai/data-visualization/powerbi","title":"PowerBI","description":"Questions","sidebar":"tutorialSidebar"},"ai/data-visualization/readme":{"id":"ai/data-visualization/readme","title":"Data Visualization","description":"- Data Visualization","sidebar":"tutorialSidebar"},"ai/data-visualization/tableau/architecture-components":{"id":"ai/data-visualization/tableau/architecture-components","title":"Architecture and Components","description":"- Tableau Server Architecture","sidebar":"tutorialSidebar"},"ai/data-visualization/tableau/augmented-analytics":{"id":"ai/data-visualization/tableau/augmented-analytics","title":"Augmented Analytics","description":"Augmented analytics is a class of analytics powered by artificial intelligence (AI) and machine learning (ML) that expands a human\u2019s ability to interact with data at a contextual level. We use AI to make analytics accessible so that more people can confidently explore and interact with data to drive meaningful decisions. From automated modeling to guided natural language queries, our augmented analytics capabilities are powerful and trusted to help organizations leverage their growing amount of data and empower a wider business audience to discover insights.","sidebar":"tutorialSidebar"},"ai/data-visualization/tableau/concepts":{"id":"ai/data-visualization/tableau/concepts","title":"Concepts","description":"Field Types: Dimensions and Measures, Blue and Green","sidebar":"tutorialSidebar"},"ai/data-visualization/tableau/dashboarding":{"id":"ai/data-visualization/tableau/dashboarding","title":"Dashboarding","description":"Changing Time from Date Range Filter","sidebar":"tutorialSidebar"},"ai/data-visualization/tableau/data-model":{"id":"ai/data-visualization/tableau/data-model","title":"Data Model","description":"Every data source that you create in Tableau has a data model. You can think of a data model as a diagram that tells Tableau how it should query data in the connected database tables.","sidebar":"tutorialSidebar"},"ai/data-visualization/tableau/data-sources":{"id":"ai/data-visualization/tableau/data-sources","title":"Data Sources","description":"Refresh Data Sources","sidebar":"tutorialSidebar"},"ai/data-visualization/tableau/others":{"id":"ai/data-visualization/tableau/others","title":"Others","description":"Optimizations","sidebar":"tutorialSidebar"},"ai/data-visualization/tableau/readme":{"id":"ai/data-visualization/tableau/readme","title":"Tableau","description":"- Architecture and Components","sidebar":"tutorialSidebar"},"ai/deep-learning/commands":{"id":"ai/deep-learning/commands","title":"Commands","description":"Libraries","sidebar":"tutorialSidebar"},"ai/deep-learning/components":{"id":"ai/deep-learning/components","title":"Components","description":"Components of a Deep Learning Network","sidebar":"tutorialSidebar"},"ai/deep-learning/dl-specialization":{"id":"ai/deep-learning/dl-specialization","title":"DL Specialization","description":"https://www.coursera.org/specializations/deep-learning","sidebar":"tutorialSidebar"},"ai/deep-learning/neural-network-and-deep-learning":{"id":"ai/deep-learning/neural-network-and-deep-learning","title":"Neural network and deep learning","description":"Logistic Regression - Binary Classification","sidebar":"tutorialSidebar"},"ai/deep-learning/others":{"id":"ai/deep-learning/others","title":"Others","description":"Neural networks racing car - https://www.youtube.com/watch?v=wL7tSgUpy8w","sidebar":"tutorialSidebar"},"ai/deep-learning/readme":{"id":"ai/deep-learning/readme","title":"Deep Learning","description":"- Roadmap","sidebar":"tutorialSidebar"},"ai/deep-learning/resources":{"id":"ai/deep-learning/resources","title":"Resources","description":"- GitHub - kjw0612/awesome-deep-vision: A curated list of deep learning resources for computer vision","sidebar":"tutorialSidebar"},"ai/deep-learning/roadmap":{"id":"ai/deep-learning/roadmap","title":"Roadmap","description":"complete roadmap to prepare for deep learning","sidebar":"tutorialSidebar"},"ai/hackathons":{"id":"ai/hackathons","title":"Hackathons","description":"Hackathon Problem Statement: Automated Root Cause Analysis with ML","sidebar":"tutorialSidebar"},"ai/libraries/aws-sagemaker":{"id":"ai/libraries/aws-sagemaker","title":"AWS Sagemaker","description":"image","sidebar":"tutorialSidebar"},"ai/libraries/deep-learning-frameworks":{"id":"ai/libraries/deep-learning-frameworks","title":"Deep Learning Frameworks","description":"Pytorch","sidebar":"tutorialSidebar"},"ai/libraries/distributed-training":{"id":"ai/libraries/distributed-training","title":"Distributed Training","description":"Architecture of Distributed Training","sidebar":"tutorialSidebar"},"ai/libraries/jax":{"id":"ai/libraries/jax","title":"JAX","description":"- J - Just-in-time","sidebar":"tutorialSidebar"},"ai/libraries/keras":{"id":"ai/libraries/keras","title":"Keras","description":"Keras 3 is a multi-backend deep learning framework, with support for JAX, TensorFlow, and PyTorch. Effortlessly build and train models for computer vision, natural language processing, audio processing, timeseries forecasting, recommender systems, etc.","sidebar":"tutorialSidebar"},"ai/libraries/ml-libraries":{"id":"ai/libraries/ml-libraries","title":"Libraries","description":"Deep Graph Library (DGL)","sidebar":"tutorialSidebar"},"ai/libraries/ml-monitoring":{"id":"ai/libraries/ml-monitoring","title":"ML Monitoring","description":"A Guide to Monitoring Machine Learning Models in Production | NVIDIA Technical Blog","sidebar":"tutorialSidebar"},"ai/libraries/mlops-model-deployment":{"id":"ai/libraries/mlops-model-deployment","title":"MLOps / Model Deployment","description":"image","sidebar":"tutorialSidebar"},"ai/libraries/readme":{"id":"ai/libraries/readme","title":"Libraries","description":"- AWS Sagemaker","sidebar":"tutorialSidebar"},"ai/libraries/tensorflow/core-tensorflow":{"id":"ai/libraries/tensorflow/core-tensorflow","title":"Core Tensorflow","description":"tf_estimator to create, train and evaluate an ML model","sidebar":"tutorialSidebar"},"ai/libraries/tensorflow/estimator-api":{"id":"ai/libraries/tensorflow/estimator-api","title":"Estimator API","description":"- Estimator API - Wrapping a model in a common set of APIs","sidebar":"tutorialSidebar"},"ai/libraries/tensorflow/intro":{"id":"ai/libraries/tensorflow/intro","title":"TensorFlow","description":"Tools","sidebar":"tutorialSidebar"},"ai/libraries/tensorflow/readme":{"id":"ai/libraries/tensorflow/readme","title":"TensorFlow","description":"- TensorFlow","sidebar":"tutorialSidebar"},"ai/libraries/tools":{"id":"ai/libraries/tools","title":"Tools","description":"AutoML (Automated Machine Learning)","sidebar":"tutorialSidebar"},"ai/llm/code-generators":{"id":"ai/llm/code-generators","title":"Code Generators","description":"Github Copilot","sidebar":"tutorialSidebar"},"ai/llm/design-patterns":{"id":"ai/llm/design-patterns","title":"Design patterns","description":"In-context learning","sidebar":"tutorialSidebar"},"ai/llm/fintech-use-cases":{"id":"ai/llm/fintech-use-cases","title":"Fintech Use Cases","description":"Customer Support and Chatbots","sidebar":"tutorialSidebar"},"ai/llm/genai-projects":{"id":"ai/llm/genai-projects","title":"GenAI Projects","description":"Projects on Large Language Models","sidebar":"tutorialSidebar"},"ai/llm/interview-questions":{"id":"ai/llm/interview-questions","title":"Interview Questions","description":"Can you provide a high-level overview of Transformers\' architecture?","sidebar":"tutorialSidebar"},"ai/llm/intro":{"id":"ai/llm/intro","title":"Intro","description":"LLM makes good programmers great, and not make bad programmers good","sidebar":"tutorialSidebar"},"ai/llm/libraries":{"id":"ai/llm/libraries","title":"Libraries","description":"Top Python libraries of 2023 | Tryolabs","sidebar":"tutorialSidebar"},"ai/llm/limitations-problems":{"id":"ai/llm/limitations-problems","title":"Model Limitations / Problems","description":"Hallucinations","sidebar":"tutorialSidebar"},"ai/llm/llm-building":{"id":"ai/llm/llm-building","title":"LLM Building","description":"- Create a Large Language Model from Scratch with Python - Tutorial - YouTube","sidebar":"tutorialSidebar"},"ai/llm/llm-tuning":{"id":"ai/llm/llm-tuning","title":"LLM Tuning","description":"The process of adapting a model to a new domain or set of custom use cases by training the model on new data","sidebar":"tutorialSidebar"},"ai/llm/models":{"id":"ai/llm/models","title":"Models","description":"Intro","sidebar":"tutorialSidebar"},"ai/llm/natural-language-to-sql":{"id":"ai/llm/natural-language-to-sql","title":"Natural Language to SQL","description":"Unified NLQ (Natural Language Query)","sidebar":"tutorialSidebar"},"ai/llm/prompt-engineering":{"id":"ai/llm/prompt-engineering","title":"Prompt Engineering","description":"Prompt design is the process of creating a prompt that is tailored to the specific task that the system is being asked to perform.","sidebar":"tutorialSidebar"},"ai/llm/prompt-examples":{"id":"ai/llm/prompt-examples","title":"Prompt Examples","description":"Prompts","sidebar":"tutorialSidebar"},"ai/llm/rag-hackathon-questions":{"id":"ai/llm/rag-hackathon-questions","title":"RAG Hackathon Questions","description":"Use case 1: Virtual recruiter","sidebar":"tutorialSidebar"},"ai/llm/rag-retrieval-augmented-generation":{"id":"ai/llm/rag-retrieval-augmented-generation","title":"RAG - retrieval-augmented generation","description":"Presentation - Empowering GenAI with RAG","sidebar":"tutorialSidebar"},"ai/llm/readme":{"id":"ai/llm/readme","title":"ChatGPT / LLM","description":"- Intro","sidebar":"tutorialSidebar"},"ai/llm/tools":{"id":"ai/llm/tools","title":"Tools","description":"ChatGPT / Bard","sidebar":"tutorialSidebar"},"ai/ml-algorithms/artificial-neural-networks":{"id":"ai/ml-algorithms/artificial-neural-networks","title":"Artificial Neural Networks","description":"image","sidebar":"tutorialSidebar"},"ai/ml-algorithms/association-rules-and-apriori-algorithm":{"id":"ai/ml-algorithms/association-rules-and-apriori-algorithm","title":"Association Rules & Apriori Algorithm","description":"Association Rule Mining","sidebar":"tutorialSidebar"},"ai/ml-algorithms/bagging-and-random-forest":{"id":"ai/ml-algorithms/bagging-and-random-forest","title":"Bagging and Random Forest","description":"Random Forest is one of the most popular machine learning algorithms. It is a type of ensemble machine learning algorithm called Bootstrap Aggregation or bagging.","sidebar":"tutorialSidebar"},"ai/ml-algorithms/bayes-classification":{"id":"ai/ml-algorithms/bayes-classification","title":"Bayes Classification","description":"Naive Bayes","sidebar":"tutorialSidebar"},"ai/ml-algorithms/boosting-and-adaboost":{"id":"ai/ml-algorithms/boosting-and-adaboost","title":"Boosting and Adaboost","description":"Boosting is an ensemble technique that attempts to create a strong classifier from a number of weak classifiers.","sidebar":"tutorialSidebar"},"ai/ml-algorithms/classification":{"id":"ai/ml-algorithms/classification","title":"Classification","description":"https://neptune.ml/blog/evaluation-metrics-binary-classification","sidebar":"tutorialSidebar"},"ai/ml-algorithms/clustering":{"id":"ai/ml-algorithms/clustering","title":"Clustering","description":"https://www.toptal.com/clustering/clustering-metrics-for-comparison","sidebar":"tutorialSidebar"},"ai/ml-algorithms/decision-tree":{"id":"ai/ml-algorithms/decision-tree","title":"Decision Tree","description":"Decision Tree for Big Data Analytics","sidebar":"tutorialSidebar"},"ai/ml-algorithms/dimensionality-reduction":{"id":"ai/ml-algorithms/dimensionality-reduction","title":"Dimensionality Reduction","description":"Dimensionality Reduction","sidebar":"tutorialSidebar"},"ai/ml-algorithms/embeddings-and-estimators":{"id":"ai/ml-algorithms/embeddings-and-estimators","title":"Embeddings & Estimators","description":"- Embeddings","sidebar":"tutorialSidebar"},"ai/ml-algorithms/ensemble-algorithms":{"id":"ai/ml-algorithms/ensemble-algorithms","title":"Ensemble Algorithms","description":"In statistics and machine learning, ensemble methods use multiple learning algorithms to obtain better predictive performance than could be obtained from any of the constituent learning algorithms alone. Unlike a statistical ensemble in statistical mechanics, which is usually infinite, a machine learning ensemble consists of only a concrete finite set of alternative models, but typically allows for much more flexible structure to exist among those alternatives.","sidebar":"tutorialSidebar"},"ai/ml-algorithms/feature-engineering":{"id":"ai/ml-algorithms/feature-engineering","title":"Feature Engineering","description":"- Scale to large datasets","sidebar":"tutorialSidebar"},"ai/ml-algorithms/generative-adversarial-networks-gans":{"id":"ai/ml-algorithms/generative-adversarial-networks-gans","title":"Generative Adversarial Networks (GANs)","description":"https://www.toptal.com/machine-learning/generative-adversarial-networks","sidebar":"tutorialSidebar"},"ai/ml-algorithms/graph-neural-networks-gnn":{"id":"ai/ml-algorithms/graph-neural-networks-gnn","title":"Graph Neural Networks (GNN)","description":"Why Is a Graph Difficult To Analyze?","sidebar":"tutorialSidebar"},"ai/ml-algorithms/id3-c45-and-chaid":{"id":"ai/ml-algorithms/id3-c45-and-chaid","title":"ID3, C4.5 and CHAID","description":"CHAID - Chi-Squared Automatic Interaction Detection","sidebar":"tutorialSidebar"},"ai/ml-algorithms/k-nearest-neighbor-knn":{"id":"ai/ml-algorithms/k-nearest-neighbor-knn","title":"K-Nearest Neighbor (KNN)","description":"The model representation for KNN is the entire training dataset. Simple right?","sidebar":"tutorialSidebar"},"ai/ml-algorithms/learning-vector-quantization-lvq":{"id":"ai/ml-algorithms/learning-vector-quantization-lvq","title":"Learning Vector Quantization (LVQ)","description":"Hi, adownside of K-Nearest Neighbors is that you need to hang on to your entire training dataset.","sidebar":"tutorialSidebar"},"ai/ml-algorithms/linear-discriminant-analysis-lda":{"id":"ai/ml-algorithms/linear-discriminant-analysis-lda","title":"Linear Discriminant Analysis (LDA)","description":"Hi, Logistic Regression is a classification algorithm traditionally limited to only two-class classification problems.","sidebar":"tutorialSidebar"},"ai/ml-algorithms/linear-regression":{"id":"ai/ml-algorithms/linear-regression","title":"Linear regression","description":"Linear regressionis a method for finding the straight line or hyperplane that best fits a set of points","sidebar":"tutorialSidebar"},"ai/ml-algorithms/logistic-regression":{"id":"ai/ml-algorithms/logistic-regression","title":"Logistic regression","description":"Logistic regression is another technique borrowed by machine learning from the field of statistics. It is the go-to method for binary classification problems (problems with two class values).","sidebar":"tutorialSidebar"},"ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics":{"id":"ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics","title":"Machine Learning Algorithm K-means using Map Reduce for Big Data Analytics","description":"Preface","sidebar":"tutorialSidebar"},"ai/ml-algorithms/non-linear-regression":{"id":"ai/ml-algorithms/non-linear-regression","title":"Non linear regression","description":"Non-linear Regression","sidebar":"tutorialSidebar"},"ai/ml-algorithms/others":{"id":"ai/ml-algorithms/others","title":"Others","description":"Bag Of Words (BOW)","sidebar":"tutorialSidebar"},"ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis":{"id":"ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis","title":"Parallel K-means using Map Reduce on Big Data Cluster Analysis","description":"image","sidebar":"tutorialSidebar"},"ai/ml-algorithms/predictive-analytics-1":{"id":"ai/ml-algorithms/predictive-analytics-1","title":"Predictive Analytics 1","description":"Preface","sidebar":"tutorialSidebar"},"ai/ml-algorithms/predictive-analytics-2":{"id":"ai/ml-algorithms/predictive-analytics-2","title":"Predictive Analytics 2","description":"Gradient Boosted Decision Trees - Regression","sidebar":"tutorialSidebar"},"ai/ml-algorithms/readme":{"id":"ai/ml-algorithms/readme","title":"ML Algorithms","description":"- Regression","sidebar":"tutorialSidebar"},"ai/ml-algorithms/regression":{"id":"ai/ml-algorithms/regression","title":"Regression","description":"Regression is a technique used to predict the value of a response (dependent) variables, from one or more predictor (independent) variables, where the variable are numeric. There are various forms of regression such as linear, multiple, logistic, polynomial, non-parametric, etc.","sidebar":"tutorialSidebar"},"ai/ml-algorithms/regularization":{"id":"ai/ml-algorithms/regularization","title":"Regularization","description":"Techniques used to generalize a model","sidebar":"tutorialSidebar"},"ai/ml-algorithms/rule-generation-and-pattern-evaluation":{"id":"ai/ml-algorithms/rule-generation-and-pattern-evaluation","title":"Rule generation & Pattern Evaluation","description":"monotone - a continuing sound, especially of a person\'s voice, that is unchanging in pitch and without intonation.","sidebar":"tutorialSidebar"},"ai/ml-algorithms/support-vector-machine-svm":{"id":"ai/ml-algorithms/support-vector-machine-svm","title":"Support Vector Machine (SVM)","description":"A hyperplane is a line that splits the input variable space. In SVM, a hyperplane is selected to best separate the points in the input variable space by their class, either class 0 or class 1.","sidebar":"tutorialSidebar"},"ai/ml-algorithms/vector-embeddings":{"id":"ai/ml-algorithms/vector-embeddings","title":"Vector Embeddings","description":"Vector embeddings are a way to convert words and sentences and other data into numbers that capture their meaning and relationships.\xa0They represent different data types as points in a multidimensional space, where similar data points are clustered closer together. These numerical representations help machines understand and process this data more effectively.","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/andrew-ng":{"id":"ai/ml-fundamentals/andrew-ng","title":"Andrew NG","description":"Model and cost function","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/intro":{"id":"ai/ml-fundamentals/intro","title":"Intro","description":"Machine learning is a subset of artificial intelligence in the field of computer science that often uses statistical techniques to give computers the ability to \\"learn\\" (i.e., progressively improve performance on a specific task) with data, without being explicitly programmed.","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/loss-function":{"id":"ai/ml-fundamentals/loss-function","title":"Loss Function","description":"In a Convolutional Neural Network (CNN), the loss function is a key component used to measure the difference between the predicted output of the network and the actual target labels (ground truth). It essentially quantifies how well or poorly the model is performing. The goal of training a CNN is to minimize this loss, meaning the model\'s predictions get closer to the actual targets.","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/ml-classification":{"id":"ai/ml-fundamentals/ml-classification","title":"ML Classification","description":"Types of ML Algorithms","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/ml-process":{"id":"ai/ml-fundamentals/ml-process","title":"ML Process","description":"ML Process","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/neural-networks":{"id":"ai/ml-fundamentals/neural-networks","title":"Neural Networks","description":"In computer programming, humans instruct a computer to solve a problem by specifying each step using many lines of code. With machine learning and neural networks, you instead get the computer to solve the problem through examples.","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/neural-networks-3b1b":{"id":"ai/ml-fundamentals/neural-networks-3b1b","title":"Neural Networks 3B1B","description":"Mnemonic - Input, times Weight, add a Bias, Activate","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/practical-ai-problems":{"id":"ai/ml-fundamentals/practical-ai-problems","title":"Practical AI Problems","description":"Netflix AI Problems","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/preliminaries":{"id":"ai/ml-fundamentals/preliminaries","title":"Preliminaries","description":"2. Preliminaries","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/questions":{"id":"ai/ml-fundamentals/questions","title":"Questions","description":"Differentiate between univariate, bivariate, and multivariate analysis","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/readme":{"id":"ai/ml-fundamentals/readme","title":"ML Fundamentals","description":"- Table of Contents","sidebar":"tutorialSidebar"},"ai/ml-fundamentals/table-of-contents":{"id":"ai/ml-fundamentals/table-of-contents","title":"Table of contents","description":"Preface - https://d2l.ai/chapter_preface/index.html","sidebar":"tutorialSidebar"},"ai/model-evaluation/bias-variance-trade-off":{"id":"ai/model-evaluation/bias-variance-trade-off","title":"bias-variance trade-off","description":"Machine learning algorithms can best be understood through the lens of the bias-variance trade-off.","sidebar":"tutorialSidebar"},"ai/model-evaluation/confusion-matrix":{"id":"ai/model-evaluation/confusion-matrix","title":"Confusion Matrix","description":"The confusion matrix shows - The observations broken down by actual classes and predicted classes","sidebar":"tutorialSidebar"},"ai/model-evaluation/evaluation":{"id":"ai/model-evaluation/evaluation","title":"Evaluation","description":"- Generalization and overfitting","sidebar":"tutorialSidebar"},"ai/model-evaluation/generalization-and-sampling":{"id":"ai/model-evaluation/generalization-and-sampling","title":"Generalization and Sampling","description":"Learn how to","sidebar":"tutorialSidebar"},"ai/model-evaluation/model-validation-monitoring":{"id":"ai/model-evaluation/model-validation-monitoring","title":"Model Validation / Monitoring","description":"Poor model performance on unseen data","sidebar":"tutorialSidebar"},"ai/model-evaluation/optimization":{"id":"ai/model-evaluation/optimization","title":"Optimization","description":"Learn how to","sidebar":"tutorialSidebar"},"ai/model-evaluation/others":{"id":"ai/model-evaluation/others","title":"Others","description":"K-S Model Evaluation","sidebar":"tutorialSidebar"},"ai/model-evaluation/readme":{"id":"ai/model-evaluation/readme","title":"Model Evaluation","description":"- Confusion Matrix","sidebar":"tutorialSidebar"},"ai/move-37/1-markov-decision-process":{"id":"ai/move-37/1-markov-decision-process","title":"1. Markov Decision Process","description":"Introduction","sidebar":"tutorialSidebar"},"ai/move-37/2-dynamic-programming":{"id":"ai/move-37/2-dynamic-programming","title":"2. Dynamic Programming","description":"Sports Betting","sidebar":"tutorialSidebar"},"ai/move-37/3-monte-carlo-methods":{"id":"ai/move-37/3-monte-carlo-methods","title":"3. Monte Carlo Methods","description":"Internet of Things Optimization","sidebar":"tutorialSidebar"},"ai/move-37/4-model-free-learning":{"id":"ai/move-37/4-model-free-learning","title":"4. Model Free Learning","description":"image","sidebar":"tutorialSidebar"},"ai/move-37/5-rl-in-continuous-space":{"id":"ai/move-37/5-rl-in-continuous-space","title":"5. RL in Continuous Space","description":"Augmented Random Search (ARS)","sidebar":"tutorialSidebar"},"ai/move-37/algorithms":{"id":"ai/move-37/algorithms","title":"Algorithms","description":"1. Brute force algorithm","sidebar":"tutorialSidebar"},"ai/move-37/open-ai-gym":{"id":"ai/move-37/open-ai-gym","title":"Open AI Gym","description":"FronzenLake-v0","sidebar":"tutorialSidebar"},"ai/move-37/others":{"id":"ai/move-37/others","title":"Others","description":"MCMC - Markov Chain Monte Carlo","sidebar":"tutorialSidebar"},"ai/move-37/q-learning-algorithms":{"id":"ai/move-37/q-learning-algorithms","title":"Q-Learning Algorithms","description":"Q-Learning algorithms are a family of Reinforcement Learning algorithms.","sidebar":"tutorialSidebar"},"ai/move-37/quizzes":{"id":"ai/move-37/quizzes","title":"Quizzes","description":"image","sidebar":"tutorialSidebar"},"ai/move-37/readme":{"id":"ai/move-37/readme","title":"Move37","description":"- Syllabus","sidebar":"tutorialSidebar"},"ai/move-37/reinforcement-learning":{"id":"ai/move-37/reinforcement-learning","title":"Reinforcement Learning","description":"Reinforcement learning","sidebar":"tutorialSidebar"},"ai/move-37/syllabus":{"id":"ai/move-37/syllabus","title":"Syllabus","description":"1. Markov Decision Processes","sidebar":"tutorialSidebar"},"ai/nlp/chatbot-chatops":{"id":"ai/nlp/chatbot-chatops","title":"Chatbot / chatops","description":"https://www.freecodecamp.org/news/how-to-build-an-ai-chatbot-with-redis-python-and-gpt","sidebar":"tutorialSidebar"},"ai/nlp/chatbot-saas":{"id":"ai/nlp/chatbot-saas","title":"Chatbot SAAS","description":"Chats: Human and Bots","sidebar":"tutorialSidebar"},"ai/nlp/intro":{"id":"ai/nlp/intro","title":"NLP","description":"- 14. Natural Language Processing: Pretraining","sidebar":"tutorialSidebar"},"ai/nlp/nlp-concepts":{"id":"ai/nlp/nlp-concepts","title":"NLP Concepts","description":"A token is the technical name for a sequence of characters - such as hairy, his, or :) - that we want to treat as a group. When we count the number of tokens in a text, say, the phrase to be or not to be, we are counting occurrences of these sequences","sidebar":"tutorialSidebar"},"ai/nlp/nltk":{"id":"ai/nlp/nltk","title":"NLTK","description":"NLTK -- the Natural Language Toolkit -- is a suite of open source Python modules, data sets, and tutorials supporting research and development in Natural Language Processing.","sidebar":"tutorialSidebar"},"ai/nlp/readme":{"id":"ai/nlp/readme","title":"NLP","description":"- NLP","sidebar":"tutorialSidebar"},"ai/nlp/word-embedding-to-transformers":{"id":"ai/nlp/word-embedding-to-transformers","title":"Word Embedding to Transformers","description":"1. Introduction","sidebar":"tutorialSidebar"},"ai/numpy/cheatsheet":{"id":"ai/numpy/cheatsheet","title":"Cheatsheet","description":"References","sidebar":"tutorialSidebar"},"ai/numpy/data-types":{"id":"ai/numpy/data-types","title":"Data Types","description":"| Sr.No. | Data Types & Description |","sidebar":"tutorialSidebar"},"ai/numpy/internals":{"id":"ai/numpy/internals","title":"Internals","description":"Why is NumPy Faster?","sidebar":"tutorialSidebar"},"ai/numpy/intro":{"id":"ai/numpy/intro","title":"Intro","description":"https://www.tutorialspoint.com/numpy/index.htm","sidebar":"tutorialSidebar"},"ai/numpy/ndarray-object":{"id":"ai/numpy/ndarray-object","title":"Ndarray Object","description":"The most important object defined in NumPy is an N-dimensional array type calledndarray. It describes the collection of items of the same type. Items in the collection can be accessed using a zero-based index.","sidebar":"tutorialSidebar"},"ai/numpy/numpy-reference":{"id":"ai/numpy/numpy-reference","title":"NumPy Reference","description":"- Array objects","sidebar":"tutorialSidebar"},"ai/numpy/readme":{"id":"ai/numpy/readme","title":"Numpy","description":"- Intro","sidebar":"tutorialSidebar"},"ai/others-resources-interview-learning-courses":{"id":"ai/others-resources-interview-learning-courses","title":"Others / Resources / Interview / Learning / Courses","description":"- Intro to graph neural networks (ML Tech Talks)","sidebar":"tutorialSidebar"},"ai/pandas/cheatsheet":{"id":"ai/pandas/cheatsheet","title":"CheatSheet","description":"https://www.kaggle.com/grroverpr/pandas-cheatsheet","sidebar":"tutorialSidebar"},"ai/pandas/commands":{"id":"ai/pandas/commands","title":"Commands","description":"DataFrame.describe(percentiles=None, include=None, exclude=None)","sidebar":"tutorialSidebar"},"ai/pandas/data-structures":{"id":"ai/pandas/data-structures","title":"Data Structures","description":"class pandas. DataFrame (data=None,index=None, columns=None, dtype=None, copy=False)","sidebar":"tutorialSidebar"},"ai/pandas/examples":{"id":"ai/pandas/examples","title":"Examples","description":"","sidebar":"tutorialSidebar"},"ai/pandas/others":{"id":"ai/pandas/others","title":"Others","description":"https://en.wikipedia.org/wiki/MathKernelLibrary","sidebar":"tutorialSidebar"},"ai/pandas/pandas-intro":{"id":"ai/pandas/pandas-intro","title":"Pandas Intro","description":"Pandas is an open-source, BSD-licensed Python library providing high-performance, easy-to-use data structures and data analysis tools for the Python programming language.","sidebar":"tutorialSidebar"},"ai/pandas/readme":{"id":"ai/pandas/readme","title":"Pandas","description":"- Intro","sidebar":"tutorialSidebar"},"ai/pandas/user_guide":{"id":"ai/pandas/user_guide","title":"user_guide","description":"https://pandas.pydata.org/pandas-docs/stable/user_guide/index.html","sidebar":"tutorialSidebar"},"ai/readme":{"id":"ai/readme","title":"AI","description":"- Model Evaulation","sidebar":"tutorialSidebar"},"ai/scikit-learn/commands":{"id":"ai/scikit-learn/commands","title":"Commands","description":"image","sidebar":"tutorialSidebar"},"ai/scikit-learn/intro":{"id":"ai/scikit-learn/intro","title":"Intro","description":"- Simple and efficient tools for data mining and data analysis","sidebar":"tutorialSidebar"},"ai/scikit-learn/others":{"id":"ai/scikit-learn/others","title":"Others","description":"Some Classifiers in scikit-learn","sidebar":"tutorialSidebar"},"ai/scikit-learn/readme":{"id":"ai/scikit-learn/readme","title":"Scikit Learn / Scipy","description":"- Scikit Learn Intro","sidebar":"tutorialSidebar"},"ai/scikit-learn/scipy-cheatsheet":{"id":"ai/scikit-learn/scipy-cheatsheet","title":"Cheatsheet","description":"image","sidebar":"tutorialSidebar"},"ai/scikit-learn/scipy-intro":{"id":"ai/scikit-learn/scipy-intro","title":"Intro","description":"SciPy provides a large menu of libraries for scientific computation, such as integration, interpolation, signal processing, linear algebra, statistics, etc. It is built upon the infrastructure of Numpy","sidebar":"tutorialSidebar"},"ai/social-media-analytics-solution":{"id":"ai/social-media-analytics-solution","title":"Social Media Analytics Solution","description":"Build and deploy a social media analytics solution - Azure Architecture Center | Microsoft Learn","sidebar":"tutorialSidebar"},"ai/solutions":{"id":"ai/solutions","title":"Solutions","description":"Artificial intelligence (AI) architecture - Azure Architecture Center | Microsoft Learn","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/a-search-algorithm":{"id":"algorithms/advanced-algorithms/a-search-algorithm","title":"A* Search Algorithm","description":"The process of plotting an efficiently directed path between multiple points, called nodes.","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/automated-planning-and-scheduling":{"id":"algorithms/advanced-algorithms/automated-planning-and-scheduling","title":"Automated Planning and Scheduling","description":"Automated planning and scheduling, sometimes denoted as simply AI Planning, is a branch of artificial intelligence that concerns the realization of strategies or action sequences, typically for execution by intelligent agents, autonomous robots and unmanned vehicles. Unlike classical control and classification problems, the solutions are complex and must be discovered and optimized in multidimensional space. Planning is also related to decision theory","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/disk-scheduling-algorithms":{"id":"algorithms/advanced-algorithms/disk-scheduling-algorithms","title":"Disk Scheduling Algorithms","description":"Elevator algorithm / SCAN","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/informed-search-algorithms":{"id":"algorithms/advanced-algorithms/informed-search-algorithms","title":"Informed Search Algorithms","description":"Be smart about what paths to try","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/intractability":{"id":"algorithms/advanced-algorithms/intractability","title":"Intractability","description":"Is there a universal problem-solving model to which all problems that we would like to solve reduce and for which we know an efficient algorithm? You may be surprised to learn that we do not know the answer to this question. In this lecture we introduce the complexity classes P, NP, and NP-complete, pose the famous P = NP question, and consider implications in the context of algorithms that we have treated in this course.","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/linear-programming":{"id":"algorithms/advanced-algorithms/linear-programming","title":"Linear Programming","description":"The quintessential problem-solving model is known as linear programming, and the simplex method for solving it is one of the most widely used algorithms. In this lecture, we given an overview of this central topic in operations research and describe its relationship to algorithms that we have considered.","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/multi-armed-bandit-mab":{"id":"algorithms/advanced-algorithms/multi-armed-bandit-mab","title":"Multi Armed Bandit (MAB)","description":"The multi-armed bandit (MAB) is a classic problem in decision sciences. Effectively, it is one of optimal resource allocation under uncertainty.","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/others":{"id":"algorithms/advanced-algorithms/others","title":"Others","description":"Streaming and Sketching Algorithms","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/principle-of-deferred-decisions":{"id":"algorithms/advanced-algorithms/principle-of-deferred-decisions","title":"Principle of Deferred Decisions","description":"The principle of deferred decisions is the concept that we have two ways to make a random choice both of which are equivalent.","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/readme":{"id":"algorithms/advanced-algorithms/readme","title":"Advanced Algorithms","description":"- A* Search Algorithms","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/reductions":{"id":"algorithms/advanced-algorithms/reductions","title":"Reductions","description":"In this lecture our goal is to develop ways to classify problems according to their computational requirements. We introduce the concept of reduction as a technique for studying the relationship among problems. People use reductions to design algorithms, establish lower bounds, and classify problems in terms of their computational requirements.","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/regular-expressions":{"id":"algorithms/advanced-algorithms/regular-expressions","title":"Regular Expressions","description":"A regular expression is a method for specifying a set of strings. Our topic for this lecture is the famous grep algorithm that determines whether a given text contains any substring from the set. We examine an efficient implementation that makes use of our digraph reachability implementation from Week 1.","sidebar":"tutorialSidebar"},"algorithms/advanced-algorithms/travelling-salesman-problem":{"id":"algorithms/advanced-algorithms/travelling-salesman-problem","title":"Travelling Salesman Problem","description":"The Traveling Salesman Problem is a well known challenge in Computer Science: it consists on finding the shortest route possible that traverses all cities in a given map only once. Although its simple explanation, this problem is, indeed, NP-Complete. This implies that the difficulty to solve it increases rapidly with the number of cities, and we do not know in fact a general solution that solves the problem. For that reason, we currently consider that any method able to find a sub-optimal solution is generally good enough (we cannot verify if the solution returned is the optimal one most of the times).","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/analysis-of-algorithms":{"id":"algorithms/algorithmic-complexity/analysis-of-algorithms","title":"Analysis of Algorithms","description":"Discrete Fourier Transform (FTT - Fast Fourier Transform)","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/complexity-zoo":{"id":"algorithms/algorithmic-complexity/complexity-zoo","title":"Complexity Zoo","description":"image","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/computational-complexity-theory":{"id":"algorithms/algorithmic-complexity/computational-complexity-theory","title":"Computational Complexity Theory","description":"Computational complexity theoryfocuses on classifying computational problems according to their inherent difficulty, and relating these classes to each other. A computational problem is a task solved by a computer. A computation problem is solvable by mechanical application of mathematical steps, such as an algorithm.","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/finite-state-machine":{"id":"algorithms/algorithmic-complexity/finite-state-machine","title":"Finite-State Machine","description":"DFA - Deterministic Finite Automata","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/halting-problem":{"id":"algorithms/algorithmic-complexity/halting-problem","title":"Halting Problem","description":"In computability theory), the**halting problem** is the problem of determining, from a description of an arbitrary computer program and an input, whether the program will finish running (i.e., halt) or continue to run forever.","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/np-hardness":{"id":"algorithms/algorithmic-complexity/np-hardness","title":"NP Hardness","description":"| | |","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/readme":{"id":"algorithms/algorithmic-complexity/readme","title":"Algorithmic Complexity","description":"- Analysis of Algorithms","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/sub-linear-time":{"id":"algorithms/algorithmic-complexity/sub-linear-time","title":"Sub-linear time","description":"An algorithm is said to run insub-linear time(often spelledsublinear time) ifT(n) = o(n) (small oh)","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/time-complexities":{"id":"algorithms/algorithmic-complexity/time-complexities","title":"Time Complexities","description":"Big-O Algorithm Complexity Cheat Sheet (Know Thy Complexities!) @ericdrowell","sidebar":"tutorialSidebar"},"algorithms/algorithmic-complexity/turing-vs-non-turing-machine":{"id":"algorithms/algorithmic-complexity/turing-vs-non-turing-machine","title":"Turing vs Non Turing Machine","description":"History","sidebar":"tutorialSidebar"},"algorithms/bit-manipulation/examples":{"id":"algorithms/bit-manipulation/examples","title":"Examples","description":"1. Check if a number is power of two","sidebar":"tutorialSidebar"},"algorithms/bit-manipulation/general":{"id":"algorithms/bit-manipulation/general","title":"General","description":"Bitwise Operators ( a = 60, b = 13)","sidebar":"tutorialSidebar"},"algorithms/bit-manipulation/readme":{"id":"algorithms/bit-manipulation/readme","title":"Bit Manipulation","description":"- General","sidebar":"tutorialSidebar"},"algorithms/complex-systems/game-theory":{"id":"algorithms/complex-systems/game-theory","title":"Game Theory","description":"A Game is any interaction between multiple people in which each person\'s payoff is affected by the decisions made by others.","sidebar":"tutorialSidebar"},"algorithms/complex-systems/intro":{"id":"algorithms/complex-systems/intro","title":"Complex Systems","description":"image","sidebar":"tutorialSidebar"},"algorithms/complex-systems/minimax-algorithm":{"id":"algorithms/complex-systems/minimax-algorithm","title":"MiniMax Algorithm","description":"https://en.wikipedia.org/wiki/Minimax","sidebar":"tutorialSidebar"},"algorithms/complex-systems/move-by-nature":{"id":"algorithms/complex-systems/move-by-nature","title":"Move by nature","description":"https://en.wikipedia.org/wiki/Movebynature","sidebar":"tutorialSidebar"},"algorithms/complex-systems/others":{"id":"algorithms/complex-systems/others","title":"Others","description":"Braess\'s Paradox","sidebar":"tutorialSidebar"},"algorithms/complex-systems/readme":{"id":"algorithms/complex-systems/readme","title":"Complex Systems","description":"- Complex Systems","sidebar":"tutorialSidebar"},"algorithms/data-compression/bitmap-compression-algorithms":{"id":"algorithms/data-compression/bitmap-compression-algorithms","title":"Bitmap Compression Algorithms","description":"1. Byte-aligned Bitmap Code","sidebar":"tutorialSidebar"},"algorithms/data-compression/huffman-compression":{"id":"algorithms/data-compression/huffman-compression","title":"Huffman Compression","description":"Variable-length codes","sidebar":"tutorialSidebar"},"algorithms/data-compression/intro":{"id":"algorithms/data-compression/intro","title":"Intro","description":"https://quixdb.github.io/squash-benchmark","sidebar":"tutorialSidebar"},"algorithms/data-compression/lzw-compression":{"id":"algorithms/data-compression/lzw-compression","title":"LZW Compression","description":"LZF belongs to a family of compression codecs called \\"simple Lempel-Ziv\\" codecs. Since LZ compression is also the first part ofdeflatecompression (which is used, along with simple framing, forgzip), it can be viewed as \\"first-part of gzip\\" (second part being Huffman-encoding of compressed content).","sidebar":"tutorialSidebar"},"algorithms/data-compression/others":{"id":"algorithms/data-compression/others","title":"Others","description":"image","sidebar":"tutorialSidebar"},"algorithms/data-compression/readme":{"id":"algorithms/data-compression/readme","title":"Data Compression","description":"- Intro","sidebar":"tutorialSidebar"},"algorithms/data-compression/run-length-encoding":{"id":"algorithms/data-compression/run-length-encoding","title":"Run Length Encoding","description":"image","sidebar":"tutorialSidebar"},"algorithms/dynamic-programming/basic-gold-mines":{"id":"algorithms/dynamic-programming/basic-gold-mines","title":"Basic Gold Mines","description":"https://www.hackerearth.com/practice/algorithms/dynamic-programming/2-dimensional/practice-problems/algorithm/gold-mines-10","sidebar":"tutorialSidebar"},"algorithms/dynamic-programming/greedy-algorithms":{"id":"algorithms/dynamic-programming/greedy-algorithms","title":"General","description":"Algorithms","sidebar":"tutorialSidebar"},"algorithms/dynamic-programming/how-to-find-dp":{"id":"algorithms/dynamic-programming/how-to-find-dp","title":"How to find DP","description":"Steps to solve a DP","sidebar":"tutorialSidebar"},"algorithms/dynamic-programming/intro":{"id":"algorithms/dynamic-programming/intro","title":"Intro","description":"Dynamic Programming is an algorithmic paradigm that solves a given complex problem by breaking it into subproblems and stores the results of subproblems to avoid computing the same results again.","sidebar":"tutorialSidebar"},"algorithms/dynamic-programming/knapsack-problem":{"id":"algorithms/dynamic-programming/knapsack-problem","title":"Knapsack Problem","description":"The knapsack problem or rucksack problem is a combinatorial optimization: Given a set of items, each with a weight and a value, determine the number of each item to include in a collection so that the total weight is less than or equal to a given limit and the total value is as large as possible. It derives its name from the problem faced by someone who is constrained by a fixed-sizeknapsack and must fill it with the most valuable items.","sidebar":"tutorialSidebar"},"algorithms/dynamic-programming/levenshtein-distance-or-edit-distance":{"id":"algorithms/dynamic-programming/levenshtein-distance-or-edit-distance","title":"Levenshtein distance or Edit Distance","description":"The Levenshtein Distance, or Edit Distance, is the amount by which two strings differ.","sidebar":"tutorialSidebar"},"algorithms/dynamic-programming/readme":{"id":"algorithms/dynamic-programming/readme","title":"Dynamic Programming","description":"- Intro","sidebar":"tutorialSidebar"},"algorithms/general/1d-range-search":{"id":"algorithms/general/1d-range-search","title":"1d Range Search","description":"Operations","sidebar":"tutorialSidebar"},"algorithms/general/2d-orthogonal-range-search":{"id":"algorithms/general/2d-orthogonal-range-search","title":"2d orthogonal range search","description":"image","sidebar":"tutorialSidebar"},"algorithms/general/algo-ds":{"id":"algorithms/general/algo-ds","title":"Algo + DS","description":"Algorithms","sidebar":"tutorialSidebar"},"algorithms/general/algorithms-questions":{"id":"algorithms/general/algorithms-questions","title":"Algorithms Questions","description":"Homework Problems","sidebar":"tutorialSidebar"},"algorithms/general/appel-algorithm":{"id":"algorithms/general/appel-algorithm","title":"Appel\'s Algorithm","description":"Appel\'s algorithm for N-body simulation","sidebar":"tutorialSidebar"},"algorithms/general/competitive-programming":{"id":"algorithms/general/competitive-programming","title":"Competitive Programming Questions","description":"Two Pointers","sidebar":"tutorialSidebar"},"algorithms/general/euclidean-algorithm-gcd":{"id":"algorithms/general/euclidean-algorithm-gcd","title":"Euclidean Algorithm - Gcd","description":"Synonyms","sidebar":"tutorialSidebar"},"algorithms/general/flocking-boids-algorithm":{"id":"algorithms/general/flocking-boids-algorithm","title":"Flocking Boids Algorithm","description":"Boids","sidebar":"tutorialSidebar"},"algorithms/general/knuth-shuffle":{"id":"algorithms/general/knuth-shuffle","title":"Knuth Shuffle","description":"Goal: Rearrange array so that the result is a uniformly random permutation in linear time","sidebar":"tutorialSidebar"},"algorithms/general/list-of-algorithms":{"id":"algorithms/general/list-of-algorithms","title":"List of Algorithms","description":"1. Automated Planning","sidebar":"tutorialSidebar"},"algorithms/general/n-queens-problem":{"id":"algorithms/general/n-queens-problem","title":"N Queens Problem","description":"The N Queen is the problem of placing N chess queens on an N\xd7N chessboard so that no two queens attack each other. For example, following is a solution for 4 Queen problem.","sidebar":"tutorialSidebar"},"algorithms/general/orthogonal-rectangle-intersection-search":{"id":"algorithms/general/orthogonal-rectangle-intersection-search","title":"Orthogonal rectangle intersection search","description":"Goal: find all intersections among a set of N orthogonal rectangles","sidebar":"tutorialSidebar"},"algorithms/general/prime-factorization":{"id":"algorithms/general/prime-factorization","title":"Prime Factorization","description":"Prime factorization or integer factorization of a number is breaking a number down into the set of prime numbers which multiply together to result in the original number. This is also known as prime decomposition.","sidebar":"tutorialSidebar"},"algorithms/general/quick-select":{"id":"algorithms/general/quick-select","title":"Quick Select","description":"Randomized quickselect, a quicksort variant which finds the kth smallest item in linear time.","sidebar":"tutorialSidebar"},"algorithms/general/readme":{"id":"algorithms/general/readme","title":"General","description":"- Algo + DS","sidebar":"tutorialSidebar"},"algorithms/general/recursion":{"id":"algorithms/general/recursion","title":"Recursion","description":"https://www.topcoder.com/community/data-science/data-science-tutorials/an-introduction-to-recursion-part-2","sidebar":"tutorialSidebar"},"algorithms/general/reverse-polish-notation-postfix-notation":{"id":"algorithms/general/reverse-polish-notation-postfix-notation","title":"Reverse Polish Notation / Postfix Notation","description":"Infix - (2+5)*3","sidebar":"tutorialSidebar"},"algorithms/general/sweep-line-algorithm":{"id":"algorithms/general/sweep-line-algorithm","title":"Sweep Line Algorithm","description":"Orthogonal Line Segment Intersection","sidebar":"tutorialSidebar"},"algorithms/general/two-stack-algorithm":{"id":"algorithms/general/two-stack-algorithm","title":"Two-Stack Algorithm","description":"Goal: Evaluate Infix Expressions","sidebar":"tutorialSidebar"},"algorithms/general/types-of-algorithms":{"id":"algorithms/general/types-of-algorithms","title":"Types of algorithms","description":"1. Simple recursive algorithms","sidebar":"tutorialSidebar"},"algorithms/general/union-find-algorithm":{"id":"algorithms/general/union-find-algorithm","title":"Union-Find Algorithm","description":"A union-find algorithm is an algorithm that performs two operations on a disjoint-set data structure -","sidebar":"tutorialSidebar"},"algorithms/graphtheory/acyclic-edge-weighted-digraphs":{"id":"algorithms/graphtheory/acyclic-edge-weighted-digraphs","title":"Acyclic Edge Weighted Digraphs","description":"It is easier to find shortest paths in an edge-weighted digraph that has no directed cycles than general digraph.","sidebar":"tutorialSidebar"},"algorithms/graphtheory/bellman-ford-algorithm":{"id":"algorithms/graphtheory/bellman-ford-algorithm","title":"Bellman Ford Algorithm","description":"image","sidebar":"tutorialSidebar"},"algorithms/graphtheory/breadth-first-search-bfs":{"id":"algorithms/graphtheory/breadth-first-search-bfs","title":"Breadth First Search (BFS)","description":"BFS \\"is an algorithm for traversing or searching tree data structure. It starts at the tree root and explores the neighbor nodes first, before moving to the next level neighbors.\\"","sidebar":"tutorialSidebar"},"algorithms/graphtheory/connected-components":{"id":"algorithms/graphtheory/connected-components","title":"Connected Components","description":"Connected Components","sidebar":"tutorialSidebar"},"algorithms/graphtheory/depth-first-search-dfs":{"id":"algorithms/graphtheory/depth-first-search-dfs","title":"Depth First Search (DFS)","description":"Time Complexity: O(V+E) where V is number of vertices in the graph and E is number of edges in the graph.","sidebar":"tutorialSidebar"},"algorithms/graphtheory/dijkstra-algorithm":{"id":"algorithms/graphtheory/dijkstra-algorithm","title":"Dijkstra\'s Algorithm","description":"Properties","sidebar":"tutorialSidebar"},"algorithms/graphtheory/eulerian-trail":{"id":"algorithms/graphtheory/eulerian-trail","title":"Eulerian Trail","description":"In graph theory, an **Eulerian trail** (or **Eulerian path**) is a trail) in a finite graph which visits every edge) exactly once. Similarly, an **Eulerian circuit** or **Eulerian cycle** is an Eulerian trail which starts and ends on the same vertex). They were first discussed by Leonhard Euler while solving the famous Seven Bridges of K\xf6nigsberg problem in 1736. The problem can be stated mathematically like this:","sidebar":"tutorialSidebar"},"algorithms/graphtheory/ford-fulkerson-algorithm":{"id":"algorithms/graphtheory/ford-fulkerson-algorithm","title":"Ford-Fulkerson Algorithm","description":"Maximum Flow (Max-Flow Min-Cut Theorem)","sidebar":"tutorialSidebar"},"algorithms/graphtheory/graph-search":{"id":"algorithms/graphtheory/graph-search","title":"Graph Search","description":"Graph search algorithms like A* are often used to find the shortest path from one point to another point. You can use this for each enemy to find a path to the goal. There are lots of different graph search algorithms we could use in this type of game. These are the classics:","sidebar":"tutorialSidebar"},"algorithms/graphtheory/intro":{"id":"algorithms/graphtheory/intro","title":"Intro","description":"Origins of Graph Theory","sidebar":"tutorialSidebar"},"algorithms/graphtheory/kruskal-algorithm-for-mst":{"id":"algorithms/graphtheory/kruskal-algorithm-for-mst","title":"Kruskal\'s Algorithm for MST","description":"image","sidebar":"tutorialSidebar"},"algorithms/graphtheory/longest-path-in-edge-weighted-dags":{"id":"algorithms/graphtheory/longest-path-in-edge-weighted-dags","title":"Longest Path in Edge-Weighted DAGs","description":"image","sidebar":"tutorialSidebar"},"algorithms/graphtheory/maximum-flow-and-minimum-cut":{"id":"algorithms/graphtheory/maximum-flow-and-minimum-cut","title":"Maximum Flow and Minimum Cut","description":"1. Introduction to Maxflow","sidebar":"tutorialSidebar"},"algorithms/graphtheory/minimum-spanning-tree":{"id":"algorithms/graphtheory/minimum-spanning-tree","title":"Minimum Spanning Tree","description":"Properties of MST","sidebar":"tutorialSidebar"},"algorithms/graphtheory/other-graph-algorithms":{"id":"algorithms/graphtheory/other-graph-algorithms","title":"Other Graph Algorithms","description":"Dominating Set","sidebar":"tutorialSidebar"},"algorithms/graphtheory/prim-algorithm-for-mst":{"id":"algorithms/graphtheory/prim-algorithm-for-mst","title":"Prim\'s Algorithm for MST","description":"Properties","sidebar":"tutorialSidebar"},"algorithms/graphtheory/problems":{"id":"algorithms/graphtheory/problems","title":"Problems","description":"Knight\'s Tour Problem","sidebar":"tutorialSidebar"},"algorithms/graphtheory/readme":{"id":"algorithms/graphtheory/readme","title":"Graph Theory","description":"- Intro","sidebar":"tutorialSidebar"},"algorithms/graphtheory/resources":{"id":"algorithms/graphtheory/resources","title":"Resources","description":"image","sidebar":"tutorialSidebar"},"algorithms/graphtheory/seam-carving":{"id":"algorithms/graphtheory/seam-carving","title":"Seam Carving","description":"Seam Carving for Content-Aware Image Resizing","sidebar":"tutorialSidebar"},"algorithms/graphtheory/shortest-path-algorithms":{"id":"algorithms/graphtheory/shortest-path-algorithms","title":"Shortest Path Algorithms","description":"Shortest path variants","sidebar":"tutorialSidebar"},"algorithms/graphtheory/strong-components":{"id":"algorithms/graphtheory/strong-components","title":"Strong Components","description":"image","sidebar":"tutorialSidebar"},"algorithms/graphtheory/topological-sort-algorithm":{"id":"algorithms/graphtheory/topological-sort-algorithm","title":"Topological Sort Algorithm","description":"Acyclic Edge Weighted Digraphs","sidebar":"tutorialSidebar"},"algorithms/mathematics/combinatorial-optimization":{"id":"algorithms/mathematics/combinatorial-optimization","title":"Combinatorial Optimization","description":"In Operations Research, applied mathematics and theoretical computer science, combinatorial optimizationis a topic that consists of finding an optimal object from a finite set of objects.In many such problems, exhaustive search is not tractable. It operates on the domain of those optimization problems, in which the set of feasible solutions is discrete or can be reduced to discrete, and in which the goal is to find the best solution. Some common problems involving combinatorial optimization are the travelling salesman problem(\\"TSP\\") and the minimum spanning tree problem(\\"MST\\").","sidebar":"tutorialSidebar"},"algorithms/mathematics/mo-algorithm":{"id":"algorithms/mathematics/mo-algorithm","title":"MO\'s Algorithm","description":"Query Square Root Decomposition","sidebar":"tutorialSidebar"},"algorithms/mathematics/powerset":{"id":"algorithms/mathematics/powerset","title":"Powerset","description":"Power Set","sidebar":"tutorialSidebar"},"algorithms/mathematics/readme":{"id":"algorithms/mathematics/readme","title":"Mathematics","description":"- Powerset","sidebar":"tutorialSidebar"},"algorithms/readme":{"id":"algorithms/readme","title":"Algorithms","description":"- General","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/3-way-quick-sort":{"id":"algorithms/searching-sorting/3-way-quick-sort","title":"3-Way Quick Sort","description":"Properties -","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/3-way-string-radix-quicksort":{"id":"algorithms/searching-sorting/3-way-string-radix-quicksort","title":"3-way string radix quicksort","description":"image","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/binary-search":{"id":"algorithms/searching-sorting/binary-search","title":"Binary Search","description":"Finding the index of first element in A which is not less than x is called lowerbound query in C++ STL. The answer of our first query isn-lowerbound(x)","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/convex-hull":{"id":"algorithms/searching-sorting/convex-hull","title":"Convex Hull","description":"- Smallest polygon that encloses all the points","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/external-sort":{"id":"algorithms/searching-sorting/external-sort","title":"External Sort","description":"image","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/heapsort":{"id":"algorithms/searching-sorting/heapsort","title":"Heapsort","description":"Heapsortstarts by building a max heap. A binary max heap is a nearly complete binary tree in which each parent node is larger or equal to its children. The heap is stored in the same memory in which the original array elements are. Once the heap is formed, it completely replaces the array. After that, we take and remove the first element, restore the heap property, thus reducing the heap size by 1, after which we place the max element at the end of that memory. This is repeated until we empty out the heap, resulting in the smallest element being in the first place, and the following elements being sequentially larger.","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/insertion-sort":{"id":"algorithms/searching-sorting/insertion-sort","title":"Insertion Sort","description":"Insertion sorttakes elements of the array sequentially, and maintains a sorted subarray to the left of the current point. It does this by taking an element, finding its correct position in the sorted array, and shifting all following elements by 1, leaving a space for the element to be inserted.","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/intro":{"id":"algorithms/searching-sorting/intro","title":"Intro","description":"Searching","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/key-indexed-counting":{"id":"algorithms/searching-sorting/key-indexed-counting","title":"Key-indexed Counting","description":"Proporties","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/knuth-shuffle":{"id":"algorithms/searching-sorting/knuth-shuffle","title":"Knuth Shuffle","description":"Knuth Shuffle","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/lsd-radix-sort":{"id":"algorithms/searching-sorting/lsd-radix-sort","title":"LSD Radix Sort","description":"image","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/merge-sort":{"id":"algorithms/searching-sorting/merge-sort","title":"Merge Sort","description":"Merge sort recursively halves the given array. Once the subarrays reach trivial length, merging begins. Merging takes the smallest element between two adjacent subarrays and repeats that step until all elements are taken, resulting in a sorted subarray. The process is repeated on pairs of adjacent subarrays until we arrive at the starting array, but sorted.","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/msd-radix-sort":{"id":"algorithms/searching-sorting/msd-radix-sort","title":"MSD Radix Sort","description":"image","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/others":{"id":"algorithms/searching-sorting/others","title":"Others","description":"Beating sorting lower bounds","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/quick-sort":{"id":"algorithms/searching-sorting/quick-sort","title":"Quick Sort","description":"Quicksortis performed by taking the first (leftmost) element of the array as a pivot point. We then compare it to each following element. When we find one that is smaller, we move it to the left. The moving is performed quickly by swapping that element with the first element after the pivot point, and then swapping the pivot point with the element after it. After going through the whole array, we take all points on the left of the pivot and call quicksort on that subarray, and we do the same to all points on the right of the pivot. The recursion is performed until we reach subarrays of 0-1 elements in length.","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/readme":{"id":"algorithms/searching-sorting/readme","title":"Searching Sorting","description":"- Intro","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/selection-sort":{"id":"algorithms/searching-sorting/selection-sort","title":"Selection Sort","description":"Not stable","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/shell-sort":{"id":"algorithms/searching-sorting/shell-sort","title":"Shell Sort","description":"- In-place comparison sort","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/shuffle-sort":{"id":"algorithms/searching-sorting/shuffle-sort","title":"Shuffle Sort","description":"Goal: Rearrange array so that result is a uniformly random permutation","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/system-sort":{"id":"algorithms/searching-sorting/system-sort","title":"System Sort","description":"Java System Sort - Arrays.sort()","sidebar":"tutorialSidebar"},"algorithms/searching-sorting/timsort":{"id":"algorithms/searching-sorting/timsort","title":"TimSort","description":"- Hybrid algorithm which uses binary insertion sort and improved merge sort by using galloping in a combination.","sidebar":"tutorialSidebar"},"algorithms/string-algorithms/boyer-moore":{"id":"algorithms/string-algorithms/boyer-moore","title":"Boyer-Moore","description":"image","sidebar":"tutorialSidebar"},"algorithms/string-algorithms/brute-force":{"id":"algorithms/string-algorithms/brute-force","title":"Brute Force","description":"image","sidebar":"tutorialSidebar"},"algorithms/string-algorithms/intro":{"id":"algorithms/string-algorithms/intro","title":"Intro","description":"Subarray/substring","sidebar":"tutorialSidebar"},"algorithms/string-algorithms/knuth-morris-pratt":{"id":"algorithms/string-algorithms/knuth-morris-pratt","title":"Knuth-Morris-Pratt","description":"image","sidebar":"tutorialSidebar"},"algorithms/string-algorithms/longest-common-prefix":{"id":"algorithms/string-algorithms/longest-common-prefix","title":"Longest Common Prefix","description":"image","sidebar":"tutorialSidebar"},"algorithms/string-algorithms/rabin-karp":{"id":"algorithms/string-algorithms/rabin-karp","title":"Rabin Karp","description":"image","sidebar":"tutorialSidebar"},"algorithms/string-algorithms/readme":{"id":"algorithms/string-algorithms/readme","title":"String Algorithms","description":"- Intro","sidebar":"tutorialSidebar"},"algorithms/string-algorithms/substring-search-intro":{"id":"algorithms/string-algorithms/substring-search-intro","title":"Substring Search Intro","description":"Algorithms for searching for a substring in a piece of text. We begin with a brute-force algorithm, whose running time is quadratic in the worst case. Next, we consider the ingenious Knuth--Morris--Pratt algorithm whose running time is guaranteed to be linear in the worst case. Then, we introduce the Boyer--Moore algorithm, whose running time is sublinear on typical inputs. Finally, we consider the Rabin--Karp fingerprint algorithm, which uses hashing in a clever way to solve the substring search and related problems","sidebar":"tutorialSidebar"},"book-summaries/13-things-mentally-strong-parents-dont-do":{"id":"book-summaries/13-things-mentally-strong-parents-dont-do","title":"13 Things Mentally Strong Parents Don\'t Do","description":"- Promote responsibility and perseverance over a victim mentality","sidebar":"tutorialSidebar"},"book-summaries/13-things-mentally-strong-people-dont-do":{"id":"book-summaries/13-things-mentally-strong-people-dont-do","title":"13 Things Mentally Strong People Don\'t Do","description":"By Amy Morin","sidebar":"tutorialSidebar"},"book-summaries/48-laws-of-power":{"id":"book-summaries/48-laws-of-power","title":"48 Laws of Power","description":"By Robert Greene","sidebar":"tutorialSidebar"},"book-summaries/7-powers-the-foundations-of-business-strategy":{"id":"book-summaries/7-powers-the-foundations-of-business-strategy","title":"7 Powers: The Foundations of Business Strategy","description":"By Hamilton Helmer","sidebar":"tutorialSidebar"},"book-summaries/alchemy-the-surprising-power-of-ideas-that-dont-make-sense":{"id":"book-summaries/alchemy-the-surprising-power-of-ideas-that-dont-make-sense","title":"Alchemy: The Surprising Power of Ideas That Don\'t Make Sense","description":"Book by Rory Sutherland","sidebar":"tutorialSidebar"},"book-summaries/atomic-habits":{"id":"book-summaries/atomic-habits","title":"Atomic Habits","description":"By James Clear","sidebar":"tutorialSidebar"},"book-summaries/books-blinkist-productivity":{"id":"book-summaries/books-blinkist-productivity","title":"Books / Blinkist - Productivity","description":"Blinkist - Get your shit together by Sarah Knight (2 Jan 2019)","sidebar":"tutorialSidebar"},"book-summaries/books-to-read":{"id":"book-summaries/books-to-read","title":"Books","description":"Resources","sidebar":"tutorialSidebar"},"book-summaries/chasing-excellence":{"id":"book-summaries/chasing-excellence","title":"Chasing Excellence","description":"By Ben Bergero","sidebar":"tutorialSidebar"},"book-summaries/collaborative-intelligence":{"id":"book-summaries/collaborative-intelligence","title":"Collaborative Intelligence","description":"By Dawna Markova and Angie","sidebar":"tutorialSidebar"},"book-summaries/david-and-goliath":{"id":"book-summaries/david-and-goliath","title":"David and Goliath","description":"David, a shepherd boy carrying a wooden staff and sling, volunteers to fight a seven-foot giant named Goliath. Goliath is fully armored with a sword in one hand and a spear in the other. When he sees David approach him with a wooden staff, he laughs and says, \\"Am I a dog that you should come to me with sticks?\\"","sidebar":"tutorialSidebar"},"book-summaries/deep-work":{"id":"book-summaries/deep-work","title":"Deep work","description":"By Cal Newport","sidebar":"tutorialSidebar"},"book-summaries/didnt-see-it-coming":{"id":"book-summaries/didnt-see-it-coming","title":"Didn\'t see it coming","description":"Overcoming the Seven Greatest Challenges That No One Expects and Everyone Experiences Book by Carey Nieuwhof","sidebar":"tutorialSidebar"},"book-summaries/do-hard-things":{"id":"book-summaries/do-hard-things","title":"Do Hard Things","description":"By Steve Magness","sidebar":"tutorialSidebar"},"book-summaries/doing-good-better":{"id":"book-summaries/doing-good-better","title":"Doing Good Better","description":"By William MacAskill","sidebar":"tutorialSidebar"},"book-summaries/dollars-and-sense":{"id":"book-summaries/dollars-and-sense","title":"Dollars and Sense","description":"By Dan Ariely and Jeff Kreisler","sidebar":"tutorialSidebar"},"book-summaries/doughnut-economics":{"id":"book-summaries/doughnut-economics","title":"Doughnut Economics","description":"Part 1: The Author","sidebar":"tutorialSidebar"},"book-summaries/economics-for-the-common-good":{"id":"book-summaries/economics-for-the-common-good","title":"Economics for the Common Good","description":"By Jean Tirole","sidebar":"tutorialSidebar"},"book-summaries/edge-of-chaos":{"id":"book-summaries/edge-of-chaos","title":"Edge of Chaos","description":"By Dambisa Moyo","sidebar":"tutorialSidebar"},"book-summaries/essentialism":{"id":"book-summaries/essentialism","title":"Essentialism","description":"By Greg McKeown","sidebar":"tutorialSidebar"},"book-summaries/everyday-millionaires":{"id":"book-summaries/everyday-millionaires","title":"Everyday Millionaires","description":"By Chris Hogan","sidebar":"tutorialSidebar"},"book-summaries/find-your-element":{"id":"book-summaries/find-your-element","title":"Find Your Element","description":"By Ken Robinson","sidebar":"tutorialSidebar"},"book-summaries/first-things-first":{"id":"book-summaries/first-things-first","title":"First Things First","description":"By Stephen Covey, A. Roger Merrill, and Rebecca R. Merrill","sidebar":"tutorialSidebar"},"book-summaries/from-strength-to-strength":{"id":"book-summaries/from-strength-to-strength","title":"From Strength to Strength","description":"Finding Success, Happiness and Deep Purpose in the Second Half of Life","sidebar":"tutorialSidebar"},"book-summaries/game-changers":{"id":"book-summaries/game-changers","title":"Game Changers","description":"By Dave Asprey","sidebar":"tutorialSidebar"},"book-summaries/get-it":{"id":"book-summaries/get-it","title":"Get it","description":"By Amy K Hutchens","sidebar":"tutorialSidebar"},"book-summaries/getting-things-done":{"id":"book-summaries/getting-things-done","title":"Getting Things Done","description":"CPR - Capture Process Review","sidebar":"tutorialSidebar"},"book-summaries/good-economics-for-hard-times":{"id":"book-summaries/good-economics-for-hard-times","title":"Good Economics for Hard Times","description":"\\"Good Economics for Hard Times","sidebar":"tutorialSidebar"},"book-summaries/how-should-we-live":{"id":"book-summaries/how-should-we-live","title":"How should we live?","description":"By Roman Krznaric","sidebar":"tutorialSidebar"},"book-summaries/how-to-be-a-stoic":{"id":"book-summaries/how-to-be-a-stoic","title":"How to be a Stoic","description":"By Massimo Pigliucci","sidebar":"tutorialSidebar"},"book-summaries/how-to-be-an-adult-in-relationships":{"id":"book-summaries/how-to-be-an-adult-in-relationships","title":"How to be an adult in relationships","description":"By David Richo","sidebar":"tutorialSidebar"},"book-summaries/how-to-have-impossible-conversations":{"id":"book-summaries/how-to-have-impossible-conversations","title":"How to have impossible conversations","description":"By Peter Boghossian and James A. Lindsay","sidebar":"tutorialSidebar"},"book-summaries/how-to-live-a-good-life":{"id":"book-summaries/how-to-live-a-good-life","title":"How to live a good life","description":"By Massimo pigliucci","sidebar":"tutorialSidebar"},"book-summaries/how-to-make-money-in-stocks":{"id":"book-summaries/how-to-make-money-in-stocks","title":"How to Make Money in Stocks","description":"By William J. O\'Neil","sidebar":"tutorialSidebar"},"book-summaries/how-to-take-smart-notes":{"id":"book-summaries/how-to-take-smart-notes","title":"How to Take Smart Notes","description":"By S\xf6nke Ahrens","sidebar":"tutorialSidebar"},"book-summaries/hyperfocus":{"id":"book-summaries/hyperfocus","title":"Hyperfocus","description":"By Chris Bailey","sidebar":"tutorialSidebar"},"book-summaries/leaders-eat-last":{"id":"book-summaries/leaders-eat-last","title":"Leaders Eat Last","description":"By Simon Sinek","sidebar":"tutorialSidebar"},"book-summaries/leadership-and-the-rise-of-great-powers":{"id":"book-summaries/leadership-and-the-rise-of-great-powers","title":"Leadership and the Rise of Great Powers","description":"By Yan Xuetong","sidebar":"tutorialSidebar"},"book-summaries/life-is-in-the-transitions":{"id":"book-summaries/life-is-in-the-transitions","title":"Life is in the Transitions","description":"Mastering Change at Any Age By Bruce Feiler","sidebar":"tutorialSidebar"},"book-summaries/off-the-clock":{"id":"book-summaries/off-the-clock","title":"Off the Clock","description":"By Laura Vanderkam","sidebar":"tutorialSidebar"},"book-summaries/on-writing-well":{"id":"book-summaries/on-writing-well","title":"On Writing Well","description":"By William Zinsser","sidebar":"tutorialSidebar"},"book-summaries/organize-tomorrow-today":{"id":"book-summaries/organize-tomorrow-today","title":"Organize Tomorrow Today","description":"By Jason Selk & Tom Bartow","sidebar":"tutorialSidebar"},"book-summaries/others":{"id":"book-summaries/others","title":"Others","description":"- THE LONG GAME by Dorie Clark | Core Message","sidebar":"tutorialSidebar"},"book-summaries/power-and-prediction":{"id":"book-summaries/power-and-prediction","title":"Power and Prediction","description":"The Disruptive Economics of Artificial Intelligence","sidebar":"tutorialSidebar"},"book-summaries/power-relationships":{"id":"book-summaries/power-relationships","title":"Power Relationships","description":"By Andrew Sobel and Jerold Panas","sidebar":"tutorialSidebar"},"book-summaries/power-sex-suicide":{"id":"book-summaries/power-sex-suicide","title":"Power, Sex, Suicide","description":"By Nick Lane","sidebar":"tutorialSidebar"},"book-summaries/predictably-irrational":{"id":"book-summaries/predictably-irrational","title":"Predictably Irrational","description":"By Dan Ariely","sidebar":"tutorialSidebar"},"book-summaries/primed-to-perform":{"id":"book-summaries/primed-to-perform","title":"Primed to Perform","description":"By Neel Doshi & Lindsay McGregor","sidebar":"tutorialSidebar"},"book-summaries/principles":{"id":"book-summaries/principles","title":"Principles","description":"By Ray Dalio (Amarjeet)","sidebar":"tutorialSidebar"},"book-summaries/readme":{"id":"book-summaries/readme","title":"Book Summaries","description":"- How to take smart notes","sidebar":"tutorialSidebar"},"book-summaries/secrets-of-power-negotiating":{"id":"book-summaries/secrets-of-power-negotiating","title":"Secrets of Power Negotiating","description":"By Roger Dawson","sidebar":"tutorialSidebar"},"book-summaries/sell-like-crazy":{"id":"book-summaries/sell-like-crazy","title":"Sell Like Crazy","description":"By Sabri Suby","sidebar":"tutorialSidebar"},"book-summaries/skin-in-the-game":{"id":"book-summaries/skin-in-the-game","title":"Skin in the Game","description":"By Nassim Nicholas Taleb","sidebar":"tutorialSidebar"},"book-summaries/small-is-beautiful":{"id":"book-summaries/small-is-beautiful","title":"Small Is Beautiful: Economics as if People Mattered","description":"By ERNST F. SCHUMACHER","sidebar":"tutorialSidebar"},"book-summaries/social-intelligence":{"id":"book-summaries/social-intelligence","title":"Social Intelligence","description":"By Daniel Goleman (27 Nov 2018)","sidebar":"tutorialSidebar"},"book-summaries/solve-for-happy":{"id":"book-summaries/solve-for-happy","title":"Solve for Happy","description":"Engineer your path to joy by Mo Gawdat (26 June 2018)","sidebar":"tutorialSidebar"},"book-summaries/switch-on-your-brain":{"id":"book-summaries/switch-on-your-brain","title":"Switch on your brain","description":"- Watch your thoughts - for they become your actions, which, in turn, become your character and destiny","sidebar":"tutorialSidebar"},"book-summaries/talking-across-divide":{"id":"book-summaries/talking-across-divide","title":"Talking Across the Divide","description":"By Justin Lee","sidebar":"tutorialSidebar"},"book-summaries/the-22-immutable-laws-of-branding":{"id":"book-summaries/the-22-immutable-laws-of-branding","title":"The 22 Immutable Laws of Branding","description":"By Al Ries and Laura Ries","sidebar":"tutorialSidebar"},"book-summaries/the-3-minute-rule":{"id":"book-summaries/the-3-minute-rule","title":"The 3-Minute Rule","description":"By Brant Pinvidic","sidebar":"tutorialSidebar"},"book-summaries/the-4-agreements":{"id":"book-summaries/the-4-agreements","title":"The 4 Agreements","description":"Agreement 1: Be impeccable with your Word","sidebar":"tutorialSidebar"},"book-summaries/the-4-hour-workweek":{"id":"book-summaries/the-4-hour-workweek","title":"The 4-Hour Workweek","description":"By Tim Ferriss","sidebar":"tutorialSidebar"},"book-summaries/the-5-am-club":{"id":"book-summaries/the-5-am-club","title":"The 5 AM Club","description":"By Robin Sharma","sidebar":"tutorialSidebar"},"book-summaries/the-almanack-of-naval-ravikant":{"id":"book-summaries/the-almanack-of-naval-ravikant","title":"The Almanack of Naval Ravikant","description":"A guide to wealth and happiness","sidebar":"tutorialSidebar"},"book-summaries/the-art-of-impossible":{"id":"book-summaries/the-art-of-impossible","title":"The Art of Impossible","description":"By Steven Kotler","sidebar":"tutorialSidebar"},"book-summaries/the-art-of-logic":{"id":"book-summaries/the-art-of-logic","title":"The Art of Logic","description":"By Eugenia Cheng","sidebar":"tutorialSidebar"},"book-summaries/the-book-of-joy":{"id":"book-summaries/the-book-of-joy","title":"The Book of Joy","description":"By Dalai Lama and Desmond Tutu (24 Dec 2018)","sidebar":"tutorialSidebar"},"book-summaries/the-courage-to-be-happy":{"id":"book-summaries/the-courage-to-be-happy","title":"The Courage to be Happy","description":"True Contentment Is In Your Power By Ichiro Kishimi","sidebar":"tutorialSidebar"},"book-summaries/the-dip":{"id":"book-summaries/the-dip","title":"The Dip","description":"By Seth Godin","sidebar":"tutorialSidebar"},"book-summaries/the-distraction-addiction":{"id":"book-summaries/the-distraction-addiction","title":"The Distriction Addiction","description":"By Alex Soojung-Kim Pang","sidebar":"tutorialSidebar"},"book-summaries/the-elephant-in-the-brain":{"id":"book-summaries/the-elephant-in-the-brain","title":"The Elephant in the Brain","description":"- Most of our everyday actions can be traced back to some form of signaling or status seeking","sidebar":"tutorialSidebar"},"book-summaries/the-grid":{"id":"book-summaries/the-grid","title":"The Grid","description":"By Matt Watkinson","sidebar":"tutorialSidebar"},"book-summaries/the-knowledge-illusion":{"id":"book-summaries/the-knowledge-illusion","title":"The Knowledge Illusion","description":"By Steven Sloman & Philip Fernbach","sidebar":"tutorialSidebar"},"book-summaries/the-life-you-can-save":{"id":"book-summaries/the-life-you-can-save","title":"The life you can save","description":"By Peter Singer","sidebar":"tutorialSidebar"},"book-summaries/the-organized-mind":{"id":"book-summaries/the-organized-mind","title":"The Organized Mind","description":"By Daniel Levitin","sidebar":"tutorialSidebar"},"book-summaries/the-path-between-us":{"id":"book-summaries/the-path-between-us","title":"The path between us","description":"An Enneagram Journey to Healthy Relationships","sidebar":"tutorialSidebar"},"book-summaries/the-power-of-concentration":{"id":"book-summaries/the-power-of-concentration","title":"The power of Concentration","description":"By Thereon Q Dumont","sidebar":"tutorialSidebar"},"book-summaries/the-power-of-regret":{"id":"book-summaries/the-power-of-regret","title":"The Power of Regret","description":"THE POWER OF REGRET by Daniel Pink | Core Message","sidebar":"tutorialSidebar"},"book-summaries/the-science-of-selling":{"id":"book-summaries/the-science-of-selling","title":"The Science of Selling","description":"By David Hoffeld","sidebar":"tutorialSidebar"},"book-summaries/the-seven-habits-of-highly-effective-people":{"id":"book-summaries/the-seven-habits-of-highly-effective-people","title":"The Seven Habits of Highly Effective People","description":"By Stephen Covey","sidebar":"tutorialSidebar"},"book-summaries/the-slight-edge":{"id":"book-summaries/the-slight-edge","title":"The Slight Edge","description":"Turning Simple Disciplines into Massive Success and Happiness","sidebar":"tutorialSidebar"},"book-summaries/the-squiggly-career":{"id":"book-summaries/the-squiggly-career","title":"The Squiggly Career","description":"By Helen Tupper and Sarah Ellis","sidebar":"tutorialSidebar"},"book-summaries/the-status-game":{"id":"book-summaries/the-status-game","title":"The Status Game","description":"by Will Storr","sidebar":"tutorialSidebar"},"book-summaries/the-tangled-tree":{"id":"book-summaries/the-tangled-tree","title":"The Tangled Tree","description":"By David Quammen","sidebar":"tutorialSidebar"},"book-summaries/the-uninhabitable-earth":{"id":"book-summaries/the-uninhabitable-earth","title":"The Uninhabitable Earth","description":"By David Wallace-Wells - A Story of the Future","sidebar":"tutorialSidebar"},"book-summaries/think-again":{"id":"book-summaries/think-again","title":"Think Again","description":"By Adam Grant","sidebar":"tutorialSidebar"},"book-summaries/think-and-grow-rich":{"id":"book-summaries/think-and-grow-rich","title":"Think and Grow Rich","description":"By Napolean Hill","sidebar":"tutorialSidebar"},"book-summaries/thinking-fast-and-slow":{"id":"book-summaries/thinking-fast-and-slow","title":"Thinking, Fast and Slow","description":"By Daniel Kahneman","sidebar":"tutorialSidebar"},"book-summaries/thinking-in-systems":{"id":"book-summaries/thinking-in-systems","title":"Thinking in Systems","description":"By Donella H. Meadows","sidebar":"tutorialSidebar"},"book-summaries/time-and-how-to-spend-it":{"id":"book-summaries/time-and-how-to-spend-it","title":"Time and How to Spend it","description":"By James Wallman","sidebar":"tutorialSidebar"},"book-summaries/ultralearning":{"id":"book-summaries/ultralearning","title":"UltraLearning","description":"By Scott H. Young","sidebar":"tutorialSidebar"},"book-summaries/what-philosophy-can-teach-you-about-being-a-better-leader":{"id":"book-summaries/what-philosophy-can-teach-you-about-being-a-better-leader","title":"What Philosophy Can Teach You About Being a Better Leader","description":"By Alison Reynolds, Dominic Houlder, Jules Goddard, and David Lewis","sidebar":"tutorialSidebar"},"book-summaries/who-we-are-and-how-we-got-here":{"id":"book-summaries/who-we-are-and-how-we-got-here","title":"Who we are and how we got here","description":"By David Reich","sidebar":"tutorialSidebar"},"cloud/aws/amazon-pinpoint":{"id":"cloud/aws/amazon-pinpoint","title":"Amazon Pinpoint","description":"Understand and engage your customers by sending them personalized, timely, and relevant communications through multiple channels.","sidebar":"tutorialSidebar"},"cloud/aws/analytics/amazon-athena":{"id":"cloud/aws/analytics/amazon-athena","title":"Amazon Athena","description":"Based on Presto","sidebar":"tutorialSidebar"},"cloud/aws/analytics/amazon-devops-guru":{"id":"cloud/aws/analytics/amazon-devops-guru","title":"Amazon DevOps Guru","description":"Amazon DevOps Guru - Improve application availability with ML-powered cloud operations","sidebar":"tutorialSidebar"},"cloud/aws/analytics/amazon-kinesis":{"id":"cloud/aws/analytics/amazon-kinesis","title":"Amazon Kinesis","description":"Work with Real-time Streaming Data","sidebar":"tutorialSidebar"},"cloud/aws/analytics/readme":{"id":"cloud/aws/analytics/readme","title":"Analytics","description":"- Amazon Athena - Query Data in S3 using SQL","sidebar":"tutorialSidebar"},"cloud/aws/aws-backup":{"id":"cloud/aws/aws-backup","title":"AWS Backup","description":"AWS Backup is a fully-managed service that makes it easy to centralize and automate data protection across AWS services, in the cloud, and on premises. Using this service, you can configure backup policies and monitor activity for your AWS resources in one place. It allows you to automate and consolidate backup tasks that were previously performed service-by-service, and removes the need to create custom scripts and manual processes. With a few clicks in the AWS Backup console, you can automate your data protection policies and schedules.","sidebar":"tutorialSidebar"},"cloud/aws/aws-competency-program":{"id":"cloud/aws/aws-competency-program","title":"AWS Competency Program","description":"Industry","sidebar":"tutorialSidebar"},"cloud/aws/aws-database-migration-service-dms":{"id":"cloud/aws/aws-database-migration-service-dms","title":"AWS Database Migration Service (DMS)","description":"AWS Database Migration Service (AWS DMS) is a cloud service that makes it easy to migrate relational databases, data warehouses, NoSQL databases, and other types of data stores. You can use AWS DMS to migrate your data into the AWS Cloud, between on-premises instances (through an AWS Cloud setup), or between combinations of cloud and on-premises setups.","sidebar":"tutorialSidebar"},"cloud/aws/aws-glue":{"id":"cloud/aws/aws-glue","title":"AWS Glue","description":"Simple, flexible, and cost-effective ETL","sidebar":"tutorialSidebar"},"cloud/aws/aws-rekognition":{"id":"cloud/aws/aws-rekognition","title":"AWS Rekognition","description":"Moderating Content / Content Moderation / Community Moderation","sidebar":"tutorialSidebar"},"cloud/aws/aws-services":{"id":"cloud/aws/aws-services","title":"AWS Services","description":"https://docs.aws.amazon.com/index.html","sidebar":"tutorialSidebar"},"cloud/aws/aws-services-list":{"id":"cloud/aws/aws-services-list","title":"AWS Services List","description":"Total - 322 services","sidebar":"tutorialSidebar"},"cloud/aws/aws-sns":{"id":"cloud/aws/aws-sns","title":"AWS SNS","description":"Amazon Simple Notification Service","sidebar":"tutorialSidebar"},"cloud/aws/aws-sqs":{"id":"cloud/aws/aws-sqs","title":"AWS SQS","description":"Managed Message Queues","sidebar":"tutorialSidebar"},"cloud/aws/cli-commands":{"id":"cloud/aws/cli-commands","title":"CLI Commands","description":"AWS cli (brew install awscli)","sidebar":"tutorialSidebar"},"cloud/aws/compute/amazon-ecs":{"id":"cloud/aws/compute/amazon-ecs","title":"Amazon ECS (Elastic Container Service)","description":"image","sidebar":"tutorialSidebar"},"cloud/aws/compute/amazon-eks":{"id":"cloud/aws/compute/amazon-eks","title":"Amazon EKS","description":"Amazon Elastic Kubernetes Service (Amazon EKS) is a managed service that makes it easy for you to run Kubernetes on AWS without needing to stand up or maintain your own Kubernetes control plane. Kubernetes is an open-source system for automating the deployment, scaling, and management of containerized applications.","sidebar":"tutorialSidebar"},"cloud/aws/compute/aws-lambda":{"id":"cloud/aws/compute/aws-lambda","title":"AWS Lambda","description":"https://docs.aws.amazon.com/lambda/latest/dg/lambda-edge.html","sidebar":"tutorialSidebar"},"cloud/aws/compute/burstable-instances":{"id":"cloud/aws/compute/burstable-instances","title":"Burstable Instances","description":"Traditional Amazon EC2 instance types provide fixed CPU resources, while burstable performance instances provide a baseline level of CPU utilization with the ability to burst CPU utilization above the baseline level. This ensures that you pay only for baseline CPU plus any additional burst CPU usage resulting in lower compute costs. The baseline utilization and ability to burst are governed by CPU credits. Burstable performance instances are the only instance types that use credits for CPU usage.","sidebar":"tutorialSidebar"},"cloud/aws/compute/ec2-instance-types":{"id":"cloud/aws/compute/ec2-instance-types","title":"EC2 Instance types","description":"It just got easier to discover and compare EC2 instance types | AWS Compute Blog","sidebar":"tutorialSidebar"},"cloud/aws/compute/readme":{"id":"cloud/aws/compute/readme","title":"Compute","description":"Amazon EC2","sidebar":"tutorialSidebar"},"cloud/aws/cost-optimization-explorer-billing":{"id":"cloud/aws/cost-optimization-explorer-billing","title":"Cost Optimization / Explorer / Billing","description":"Cost Optimization with AWS","sidebar":"tutorialSidebar"},"cloud/aws/course-architecting-on-aws":{"id":"cloud/aws/course-architecting-on-aws","title":"Architecting on AWS","description":"12th August to 14th August 2020","sidebar":"tutorialSidebar"},"cloud/aws/developer-tools/code-build":{"id":"cloud/aws/developer-tools/code-build","title":"Code Build","description":"AWS CodeBuild is a fully managed continuous integration service that compiles source code, runs tests, and produces software packages that are ready to deploy. With CodeBuild, you don\'t need to provision, manage, and scale your own build servers. CodeBuild scales continuously and processes multiple builds concurrently, so your builds are not left waiting in a queue.","sidebar":"tutorialSidebar"},"cloud/aws/developer-tools/intro":{"id":"cloud/aws/developer-tools/intro","title":"Developer Tools","description":"AWS CodeStar","sidebar":"tutorialSidebar"},"cloud/aws/intro":{"id":"cloud/aws/intro","title":"Intro","description":"AWS services to avoid","sidebar":"tutorialSidebar"},"cloud/aws/networking-content-delivery/amazon-cloudfront":{"id":"cloud/aws/networking-content-delivery/amazon-cloudfront","title":"amazon-cloudfront","description":"Amazon CloudFront","sidebar":"tutorialSidebar"},"cloud/aws/networking-content-delivery/amazon-vpc":{"id":"cloud/aws/networking-content-delivery/amazon-vpc","title":"Amazon VPC","description":"Amazon Virtual Private Cloud (Amazon VPC) lets you provision a logically isolated section of the AWS Cloud where you can launch AWS resources in a virtual network that you define. You have complete control over your virtual networking environment, including selection of your own IP address range, creation of subnets, and configuration of route tables and network gateways. You can use both IPv4 and IPv6 in your VPC for secure and easy access to resources and applications.","sidebar":"tutorialSidebar"},"cloud/aws/networking-content-delivery/aws-elb":{"id":"cloud/aws/networking-content-delivery/aws-elb","title":"AWS ELB","description":"Elastic Load Balancing automatically distributes incoming application traffic across multiple targets, such as Amazon EC2 instances, containers, IP addresses, and Lambda functions. It can handle the varying load of your application traffic in a single Availability Zone or across multiple Availability Zones. Elastic Load Balancing offers three types of load balancers that all feature the high availability, automatic scaling, and robust security necessary to make your applications fault tolerant.","sidebar":"tutorialSidebar"},"cloud/aws/networking-content-delivery/intro":{"id":"cloud/aws/networking-content-delivery/intro","title":"Networking and Content Delivery","description":"1. Amazon VPC - Isolated Cloud Resources","sidebar":"tutorialSidebar"},"cloud/aws/others":{"id":"cloud/aws/others","title":"Others","description":"Creating a new account","sidebar":"tutorialSidebar"},"cloud/aws/readme":{"id":"cloud/aws/readme","title":"AWS","description":"- Intro","sidebar":"tutorialSidebar"},"cloud/aws/security-identity-compliance/compliance":{"id":"cloud/aws/security-identity-compliance/compliance","title":"Compliances","description":"PCI Compliance","sidebar":"tutorialSidebar"},"cloud/aws/security-identity-compliance/compliance-mcqs":{"id":"cloud/aws/security-identity-compliance/compliance-mcqs","title":"Compliance MCQs","description":"Banking Regulation & Compliance and Legal Aspects MCQ \\\\[Free PDF\\\\] - Objective Question Answer for Banking Regulation & Compliance and Legal Aspects Quiz - Download Now!","sidebar":"tutorialSidebar"},"cloud/aws/security-identity-compliance/iam":{"id":"cloud/aws/security-identity-compliance/iam","title":"IAM","description":"- permission guardrails","sidebar":"tutorialSidebar"},"cloud/aws/security-identity-compliance/intro":{"id":"cloud/aws/security-identity-compliance/intro","title":"Security, Identity and Compliance","description":"1. AWS Identity & Access Management (IAM) - Manage User Access and Encryption Keys","sidebar":"tutorialSidebar"},"cloud/aws/security-identity-compliance/license-scanning":{"id":"cloud/aws/security-identity-compliance/license-scanning","title":"License Scanning","description":"License scanning refers to the process of automatically analyzing and identifying software licenses associated with code or components within a software project.","sidebar":"tutorialSidebar"},"cloud/aws/security-identity-compliance/security-guidelines":{"id":"cloud/aws/security-identity-compliance/security-guidelines","title":"Security Guidelines","description":"Access Management","sidebar":"tutorialSidebar"},"cloud/aws/security-identity-compliance/tools":{"id":"cloud/aws/security-identity-compliance/tools","title":"Tools","description":"AWS Audit Manager","sidebar":"tutorialSidebar"},"cloud/aws/storage/amazon-ebs":{"id":"cloud/aws/storage/amazon-ebs","title":"Amazon EBS","description":"Amazon EBS Snapshot","sidebar":"tutorialSidebar"},"cloud/aws/storage/amazon-efs":{"id":"cloud/aws/storage/amazon-efs","title":"Amazon EFS","description":"Amazon Elastic File System (EFS) is designed to provide serverless, fully elastic file storage that lets you share file data without provisioning or managing storage capacity and performance. It can be used with AWS services and on-premises resources, and it\'s built to scale to petabytes on demand without disrupting applications.","sidebar":"tutorialSidebar"},"cloud/aws/storage/amazon-s3":{"id":"cloud/aws/storage/amazon-s3","title":"Amazon S3","description":"S3: More than 235 distributed microservices","sidebar":"tutorialSidebar"},"cloud/aws/storage/amazon-s3-pricing":{"id":"cloud/aws/storage/amazon-s3-pricing","title":"Amazon S3 Pricing","description":"- S3 Standard (Frequently accessed data) - $0.023 per GB","sidebar":"tutorialSidebar"},"cloud/aws/storage/amazon-s3-storage-classes":{"id":"cloud/aws/storage/amazon-s3-storage-classes","title":"Amazon S3 Storage Classes","description":"General purpose - Amazon S3 Standard (S3 Standard)","sidebar":"tutorialSidebar"},"cloud/aws/storage/iops":{"id":"cloud/aws/storage/iops","title":"IOPS","description":"What You Need to Know About IOPS","sidebar":"tutorialSidebar"},"cloud/aws/storage/readme":{"id":"cloud/aws/storage/readme","title":"Storage","description":"1. Amazon S3 (Blob storage)","sidebar":"tutorialSidebar"},"cloud/others/azure/commands":{"id":"cloud/others/azure/commands","title":"Commands","description":"Use az --version to display the current version.","sidebar":"tutorialSidebar"},"cloud/others/azure/iam":{"id":"cloud/others/azure/iam","title":"IAM","description":"What is identity and access management (IAM)? - Microsoft Entra | Microsoft Learn","sidebar":"tutorialSidebar"},"cloud/others/azure/microsoft-biztalk":{"id":"cloud/others/azure/microsoft-biztalk","title":"Microsoft BizTalk","description":"Microsoft BizTalk","sidebar":"tutorialSidebar"},"cloud/others/azure/readme":{"id":"cloud/others/azure/readme","title":"Azure","description":"Azure Portal \\"How To\\" Series","sidebar":"tutorialSidebar"},"cloud/others/azure/services":{"id":"cloud/others/azure/services","title":"Services","description":"Total Services - 258","sidebar":"tutorialSidebar"},"cloud/others/business-rule-engine":{"id":"cloud/others/business-rule-engine","title":"Business Rules Engine (BRE) / Decision Rule Engine","description":"https://martinfowler.com/bliki/RulesEngine.html - Avoid building rule engine","sidebar":"tutorialSidebar"},"cloud/others/cdn-cache-invalidation":{"id":"cloud/others/cdn-cache-invalidation","title":"Cache Invalidation","description":"Cache Invalidation vs Object Versioning","sidebar":"tutorialSidebar"},"cloud/others/cdn-comparision":{"id":"cloud/others/cdn-comparision","title":"CDN Comparision","description":"- Cloudflare - cloudflare.com/network/","sidebar":"tutorialSidebar"},"cloud/others/cdn-content-delivery-network":{"id":"cloud/others/cdn-content-delivery-network","title":"CDN (Content Delivery Network)","description":"Why Do We Need a CDN for Your Application?","sidebar":"tutorialSidebar"},"cloud/others/cloudflare":{"id":"cloud/others/cloudflare","title":"Cloudflare","description":"A \\"Cloudflare Worker\\" is JavaScript you write that runs on Cloudflare\'s edge. A \\"Cloudflare Service Worker\\" is specifically a worker which handles HTTP traffic and is written against the Service Worker API.","sidebar":"tutorialSidebar"},"cloud/others/firebase/automatic-collected-events":{"id":"cloud/others/firebase/automatic-collected-events","title":"Automatic Collected Events","description":"Automatically collected events are triggered by basic interactions with your app. As long as you use the Firebase SDK, you don\'t need to write any additional code to collect these events.","sidebar":"tutorialSidebar"},"cloud/others/firebase/fcm-notifications":{"id":"cloud/others/firebase/fcm-notifications","title":"FCM Notifications","description":"Firebase Cloud Messaging (FCM) is a cross-platform messaging solution that lets you reliably send messages at no cost.","sidebar":"tutorialSidebar"},"cloud/others/firebase/firebase-google-analytics":{"id":"cloud/others/firebase/firebase-google-analytics","title":"Firebase / Google Analytics","description":"Google Analytics for Firebase, formerly Firebase Analytics, is now known as Google Analytics. It works great for your mobile apps! Oh, but Google Analytics for Mobile has been deprecated; they recommend you use Firebase Analytics, which, as you\'ll recall, is now Google Analytics. In recent news, you\'ll be excited to hear that Google Analytics now supports web apps, but don\'t confuse that with Google Analytics for the web!","sidebar":"tutorialSidebar"},"cloud/others/firebase/readme":{"id":"cloud/others/firebase/readme","title":"Firebase","description":"Google Signals","sidebar":"tutorialSidebar"},"cloud/others/firebase/web-push-notifications":{"id":"cloud/others/firebase/web-push-notifications","title":"Web Push Notifications","description":"As opposed to emails, push notifications require an opt-in from customers and are proven to deliver better CTRs (Click Through Rates). Therefore, engaging customers through this highly-effective, rapidly growing channel could be challenging, but equally fruitful.","sidebar":"tutorialSidebar"},"cloud/others/gcp-anthos":{"id":"cloud/others/gcp-anthos","title":"GCP Anthos","description":"Google has built Anthos (formerly known as Cloud Services Platform or CSP) to accelerate application modernization for SaaS providers, developers, IT operators and their end users. In order to balance developer agility, operational efficiency and platform governance, the Anthos framework enables decoupling across critical components:","sidebar":"tutorialSidebar"},"cloud/others/gcp-bigquery-big-query":{"id":"cloud/others/gcp-bigquery-big-query","title":"GCP BigQuery / Big Query","description":"Architecture","sidebar":"tutorialSidebar"},"cloud/others/gcp-google-cloud-platform":{"id":"cloud/others/gcp-google-cloud-platform","title":"GCP / Google Cloud Platform","description":"Google Cloud Developer Cheat Sheet","sidebar":"tutorialSidebar"},"cloud/others/gcp-ml-services":{"id":"cloud/others/gcp-ml-services","title":"GCP ML Services","description":"Gemini AI","sidebar":"tutorialSidebar"},"cloud/others/imagekit":{"id":"cloud/others/imagekit","title":"Imagekit","description":"Intro","sidebar":"tutorialSidebar"},"cloud/others/linode":{"id":"cloud/others/linode","title":"Linode","description":"Linode Kubernetes Engine (LKE)","sidebar":"tutorialSidebar"},"cloud/others/loan-management-system-lms":{"id":"cloud/others/loan-management-system-lms","title":"Loan Management System (LMS)","description":"- Disbursements","sidebar":"tutorialSidebar"},"cloud/others/low-code-no-code-lcnc":{"id":"cloud/others/low-code-no-code-lcnc","title":"Low-Code / No-Code Platforms / LCNC","description":"- Medium Code","sidebar":"tutorialSidebar"},"cloud/others/mdm-mobile-device-management":{"id":"cloud/others/mdm-mobile-device-management","title":"MDM (Mobile Device Management)","description":"Mobile device management (MDM) is a proven methodology and toolset used to provide a workforce mobile productivity tools and applications while keeping corporate data secure.","sidebar":"tutorialSidebar"},"cloud/others/openstack":{"id":"cloud/others/openstack","title":"Openstack","description":"OpenStack is a cloud operating system that controls large pools of compute, storage, and networking resources throughout a datacenter, all managed through a dashboard that gives administrators control while empowering their users to provision resources through a web interface.","sidebar":"tutorialSidebar"},"cloud/others/oracle":{"id":"cloud/others/oracle","title":"Oracle","description":"Become an Autonomous Database Specialist","sidebar":"tutorialSidebar"},"cloud/others/others-saas":{"id":"cloud/others/others-saas","title":"Others - SAAS","description":"- blogtrottr - RSS Online Feed","sidebar":"tutorialSidebar"},"cloud/others/readme":{"id":"cloud/others/readme","title":"Other Clouds","description":"- Google Cloud Platform (GCP)","sidebar":"tutorialSidebar"},"cloud/others/sap":{"id":"cloud/others/sap","title":"SAP","description":"SAP SE is a German multinational software company based in Walldorf, Baden-W\xfcrttemberg. It develops enterprise software to manage business operations and customer relations. The company is the world\'s leading enterprise resource planning (ERP) software vendor. Apart from ERP software, the company also sells database software and technology (particularly its own brands), cloud-engineered systems, and other ERP software products, such as human capital management (HCM) software, customer relationship management (CRM) software (also known as customer experience), enterprise performance management (EPM) software, product lifecycle management (PLM) software, supplier relationship management (SRM) software, supply chain management (SCM) software, business technology platform (BTP) software and programming environment SAP AppGyver for business.","sidebar":"tutorialSidebar"},"cloud/others/ticketing-tms":{"id":"cloud/others/ticketing-tms","title":"Ticketing / TMS","description":"Ticketing Management System (TMS)","sidebar":"tutorialSidebar"},"cloud/others/vmware":{"id":"cloud/others/vmware","title":"VMware","description":"VMware ESXi","sidebar":"tutorialSidebar"},"cloud/readme":{"id":"cloud/readme","title":"Cloud","description":"- AWS","sidebar":"tutorialSidebar"},"cloud/tools":{"id":"cloud/tools","title":"Tools","description":"Infrastructure Tools","sidebar":"tutorialSidebar"},"computer-science/distributed-system/byzantine-generals-problem":{"id":"computer-science/distributed-system/byzantine-generals-problem","title":"Byzantine Generals\' Problem","description":"image","sidebar":"tutorialSidebar"},"computer-science/distributed-system/cap-theorem":{"id":"computer-science/distributed-system/cap-theorem","title":"CAP Theorem","description":"Proposed by Eric Brewer (Berkeley)","sidebar":"tutorialSidebar"},"computer-science/distributed-system/clocks":{"id":"computer-science/distributed-system/clocks","title":"Clocks","description":"Atomic Broadcast","sidebar":"tutorialSidebar"},"computer-science/distributed-system/consensus-protocols":{"id":"computer-science/distributed-system/consensus-protocols","title":"Consensus Protocols","description":"There are a number of ways we can go about replicating the log data. Broadly speaking, we can group the techniques into two different categories:","sidebar":"tutorialSidebar"},"computer-science/distributed-system/consistency":{"id":"computer-science/distributed-system/consistency","title":"Consistency","description":"When we\'re talking about consistency in distributed systems, we are referring to the concept that you will have some data distributed in different nodes of your system, and each one of those might have a copy of your data. If it\'s a read-only dataset, any client connecting to any of the nodes will always receive the same data, so there is no consistency problem. When it comes to read-write datasets, some conflicts can arise. Each one of the nodes can update its own copy of the data, so if a client connects to different nodes in your system, it might receive different values for the same data.","sidebar":"tutorialSidebar"},"computer-science/distributed-system/distributed-logging":{"id":"computer-science/distributed-system/distributed-logging","title":"Distributed Logging","description":"Logs","sidebar":"tutorialSidebar"},"computer-science/distributed-system/fallacies-and-problems":{"id":"computer-science/distributed-system/fallacies-and-problems","title":"Fallacies and Problems","description":"Fallacies of distributed computing","sidebar":"tutorialSidebar"},"computer-science/distributed-system/intro":{"id":"computer-science/distributed-system/intro","title":"Intro","description":"Andrew S. Tanenbaum","sidebar":"tutorialSidebar"},"computer-science/distributed-system/others":{"id":"computer-science/distributed-system/others","title":"Others","description":"CRDTs (Conflict-free Replicated Data Types)","sidebar":"tutorialSidebar"},"computer-science/distributed-system/readme":{"id":"computer-science/distributed-system/readme","title":"Distributed System","description":"- Intro","sidebar":"tutorialSidebar"},"computer-science/distributed-system/vocabulary":{"id":"computer-science/distributed-system/vocabulary","title":"Vocabulary","description":"Harvest and Yield","sidebar":"tutorialSidebar"},"computer-science/general/common":{"id":"computer-science/general/common","title":"Common","description":"CAPTCHA - Completely Automated Public Turing test to tell Computers and Humans Apart","sidebar":"tutorialSidebar"},"computer-science/general/newsletter-learning-resources":{"id":"computer-science/general/newsletter-learning-resources","title":"Newsletter / Learning Resources","description":"https://www.freecodecamp.org/news/how-to-create-an-email-newsletter-design-layout-send","sidebar":"tutorialSidebar"},"computer-science/general/others":{"id":"computer-science/general/others","title":"Others","description":"ISO 3103 - How to brew tea?","sidebar":"tutorialSidebar"},"computer-science/general/readme":{"id":"computer-science/general/readme","title":"General","description":"- Common","sidebar":"tutorialSidebar"},"computer-science/general/research-papers":{"id":"computer-science/general/research-papers","title":"Research Papers","description":"1. Dynamo - Amazon\u2019s Highly Available Key Value Store","sidebar":"tutorialSidebar"},"computer-science/general/standards":{"id":"computer-science/general/standards","title":"Standards","description":"ASCII","sidebar":"tutorialSidebar"},"computer-science/general/uuid-guid":{"id":"computer-science/general/uuid-guid","title":"UUID / GUID","description":"A Universally Unique IDentifier (UUID) is a 128-bit number used to identify information in computer systems. The term Globally Unique IDentifier(GUID) is also used, typically in software created by Microsoft.","sidebar":"tutorialSidebar"},"computer-science/interview-question/aws-tech-other-questions":{"id":"computer-science/interview-question/aws-tech-other-questions","title":"AWS/Tech/Other Questions","description":"AWS","sidebar":"tutorialSidebar"},"computer-science/interview-question/blogs-conferences-blogging-presentation-tech-thursdays":{"id":"computer-science/interview-question/blogs-conferences-blogging-presentation-tech-thursdays","title":"Blogs / Conferences / Blogging / Presentation / Tech Thursdays","description":"Startup onboarding series","sidebar":"tutorialSidebar"},"computer-science/interview-question/coding-interview-questions":{"id":"computer-science/interview-question/coding-interview-questions","title":"Coding Interview Questions","description":"Platforms","sidebar":"tutorialSidebar"},"computer-science/interview-question/others":{"id":"computer-science/interview-question/others","title":"Others","description":"https://dev.to/fahimulhaq/top-10-system-design-interview-questions-for-software-engineers","sidebar":"tutorialSidebar"},"computer-science/interview-question/readme":{"id":"computer-science/interview-question/readme","title":"Interview Question","description":"- Coding Interview Questions","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-autocomplete-or-typeahead":{"id":"computer-science/interview-question/system-design-autocomplete-or-typeahead","title":"System Design - Autocomplete or TypeAhead","description":"System design : Design Autocomplete or Typeahead Suggestions for Google search","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-google-com-into-browser-press-enter":{"id":"computer-science/interview-question/system-design-google-com-into-browser-press-enter","title":"System Design - What happens when you type google.com into your browser\'s address box and press enter?","description":"Ever wondered what exactly happens when you type google.com into your browser\'s address box and press enter?","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-google-search":{"id":"computer-science/interview-question/system-design-google-search","title":"System Design of Google Search Engine","description":"System Design of Google Search","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-messenger-whatsapp":{"id":"computer-science/interview-question/system-design-messenger-whatsapp","title":"System Design - Messenger / WhatsApp","description":"System Design : Design messaging/chat service like Facebook Messenger or Whatsapp","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-mmog-game":{"id":"computer-science/interview-question/system-design-mmog-game","title":"System Design - MMOG - Game","description":"System design: Design Multiplayer game","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-others":{"id":"computer-science/interview-question/system-design-others","title":"System Design - Others","description":"CricInfo","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-parking-lot":{"id":"computer-science/interview-question/system-design-parking-lot","title":"System Design - Parking Lot","description":"System Design Interview Question: DESIGN A PARKING LOT - asked at Google, Facebook","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-tinyurl":{"id":"computer-science/interview-question/system-design-tinyurl","title":"System Design - TinyURL","description":"System Design : Design a service like TinyUrl","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-twitter":{"id":"computer-science/interview-question/system-design-twitter","title":"System Design - Twitter","description":"System Design: How to design Twitter? Interview question at Facebook, Google, Microsoft","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-uber-data-architecture":{"id":"computer-science/interview-question/system-design-uber-data-architecture","title":"System Design of Uber Data Architecture","description":"Uber\'s real-time data infrastructure is a cornerstone of its business operations, processing massive amounts of data every day.","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-uber-lyft-ride-sharing-services":{"id":"computer-science/interview-question/system-design-uber-lyft-ride-sharing-services","title":"System Design - Uber Lyft ride sharing services","description":"System Design: Uber Lyft ride sharing services - Interview question","sidebar":"tutorialSidebar"},"computer-science/interview-question/system-design-youtube":{"id":"computer-science/interview-question/system-design-youtube","title":"System Design of YouTube","description":"System Design of YouTube","sidebar":"tutorialSidebar"},"computer-science/interview-question/toptal":{"id":"computer-science/interview-question/toptal","title":"TopTal","description":"Algorithm and Coding Round (Online - Codility)","sidebar":"tutorialSidebar"},"computer-science/iot/device-management":{"id":"computer-science/iot/device-management","title":"Device Management","description":"image","sidebar":"tutorialSidebar"},"computer-science/iot/edge-computing":{"id":"computer-science/iot/edge-computing","title":"Edge Computing","description":"Edge computingis a method of optimizing cloud computing systems by performing data processing at the edge of the network, near the source of the data.","sidebar":"tutorialSidebar"},"computer-science/iot/edgexfoundary":{"id":"computer-science/iot/edgexfoundary","title":"EdgeXFoundary","description":"Founded in 2017, EdgeX Foundry acts as a vendor-neutral interoperabilityframework. It is hostedin a hardware and OS agnostic referenceplatform and seeks toenablean ecosystem of plug-and-playcomponents, unitingthe marketplace and acceleratingIoT deployment. The project wants to enable collaborators tofreely work onopen and interoperable IoT solutionswith existing and self-created connectivity standards.","sidebar":"tutorialSidebar"},"computer-science/iot/industrial-iot-iiot":{"id":"computer-science/iot/industrial-iot-iiot","title":"Industrial IoT (IIoT)","description":"Reference Architecure","sidebar":"tutorialSidebar"},"computer-science/iot/iot-intro":{"id":"computer-science/iot/iot-intro","title":"IoT Intro","description":"Internet of Things (IoT)","sidebar":"tutorialSidebar"},"computer-science/iot/others":{"id":"computer-science/iot/others","title":"Others","description":"CE - Accurate Indoor Location for the IoT (Jan 19)","sidebar":"tutorialSidebar"},"computer-science/iot/readme":{"id":"computer-science/iot/readme","title":"IOT","description":"- IoT Intro","sidebar":"tutorialSidebar"},"computer-science/links":{"id":"computer-science/links","title":"Links","description":"Youtube","sidebar":"tutorialSidebar"},"computer-science/operating-system/basic-computer-organization":{"id":"computer-science/operating-system/basic-computer-organization","title":"Basic Computer Organization","description":"Instruction Execution Cycle","sidebar":"tutorialSidebar"},"computer-science/operating-system/cache-access-patterns":{"id":"computer-science/operating-system/cache-access-patterns","title":"Cache Access Patterns (Writing Policies)","description":"When a system writes data to cache, it must at some point write that data to the backing store as well. The timing of this write is controlled by what is known as thewrite policy.","sidebar":"tutorialSidebar"},"computer-science/operating-system/cache-coherence-invalidation":{"id":"computer-science/operating-system/cache-coherence-invalidation","title":"Cache Coherence","description":"In computer architecture, cache coherence is the uniformity of shared resource data that ends up stored in multiple local caches). When clients in a system maintain caches of a common memory resource, problems may arise with incoherent data, which is particularly the case with CPUs in a multiprocessing system.","sidebar":"tutorialSidebar"},"computer-science/operating-system/caches-caching":{"id":"computer-science/operating-system/caches-caching","title":"Caches / Caching","description":"Points to remeber about cache","sidebar":"tutorialSidebar"},"computer-science/operating-system/caching-strategies-topologies":{"id":"computer-science/operating-system/caching-strategies-topologies","title":"Caching Strategies","description":"1. Cooperative/Distributed caching","sidebar":"tutorialSidebar"},"computer-science/operating-system/compilers":{"id":"computer-science/operating-system/compilers","title":"Compilers","description":"LLVM - The LLVM compiler infrastructure project is a \\"collection of modular and reusable compiler and toolchain technologies\\" used to develop compiler front ends and back ends.","sidebar":"tutorialSidebar"},"computer-science/operating-system/concepts":{"id":"computer-science/operating-system/concepts","title":"Concepts","description":"Processes and Process Management","sidebar":"tutorialSidebar"},"computer-science/operating-system/concurrency-models-async":{"id":"computer-science/operating-system/concurrency-models-async","title":"Concurrency Models - Async","description":"Single-threaded synchronous model","sidebar":"tutorialSidebar"},"computer-science/operating-system/concurrency-problems":{"id":"computer-science/operating-system/concurrency-problems","title":"Concurrency Problems","description":"Problems","sidebar":"tutorialSidebar"},"computer-science/operating-system/concurrency-threading":{"id":"computer-science/operating-system/concurrency-threading","title":"Concurrency / Threading","description":"Concurrency","sidebar":"tutorialSidebar"},"computer-science/operating-system/coroutines":{"id":"computer-science/operating-system/coroutines","title":"Coroutines","description":"Coroutines are general control structures where flow control is cooperatively passed between two different routines without returning.","sidebar":"tutorialSidebar"},"computer-science/operating-system/cpu-gpu-tpu":{"id":"computer-science/operating-system/cpu-gpu-tpu","title":"CPU | GPU | TPU","description":"MAC - Multiplier, Adder, Accumulator","sidebar":"tutorialSidebar"},"computer-science/operating-system/disk-io":{"id":"computer-science/operating-system/disk-io","title":"Disk IO","description":"IO","sidebar":"tutorialSidebar"},"computer-science/operating-system/dram":{"id":"computer-science/operating-system/dram","title":"DRAM","description":"Dynamic random-access memory (DRAM) is a type of random accesssemiconductor memory that stores each bit of data in a memory cell) consisting of a tiny capacitor and a transistor, both typically based on metal-oxide-semiconductor(MOS) technology. The capacitor can either be charged or discharged; these two states are taken to represent the two values of a bit, conventionally called 0 and 1. The electric charge on the capacitors slowly leaks off, so without intervention the data on the chip would soon be lost. To prevent this, DRAM requires an external memory refresh circuit which periodically rewrites the data in the capacitors, restoring them to their original charge. This refresh process is the defining characteristic of dynamic random-access memory, in contrast to static random-access memory(SRAM) which does not require data to be refreshed. Unlike flash memory, DRAM is volatile memory(vs.non-volatile memory), since it loses its data quickly when power is removed. However, DRAM does exhibit limited data remanence.","sidebar":"tutorialSidebar"},"computer-science/operating-system/intro":{"id":"computer-science/operating-system/intro","title":"Intro","description":"There are three key elements of an operating system","sidebar":"tutorialSidebar"},"computer-science/operating-system/journaling-file-system":{"id":"computer-science/operating-system/journaling-file-system","title":"Journaling File System","description":"A journaling file system is a file system that keeps track of changes not yet committed to the file system\'s main part by recording the intentions of such changes in a data structure known as a \\"journal)\\", which is usually a circular log. In the event of a system crash or power failure, such file systems can be brought back online more quickly with a lower likelihood of becoming corrupted.","sidebar":"tutorialSidebar"},"computer-science/operating-system/memory":{"id":"computer-science/operating-system/memory","title":"Memory","description":"Stack Allocation","sidebar":"tutorialSidebar"},"computer-science/operating-system/memory-allocation":{"id":"computer-science/operating-system/memory-allocation","title":"Memory Allocation","description":"Dynamic memory allocation","sidebar":"tutorialSidebar"},"computer-science/operating-system/memory-layout":{"id":"computer-science/operating-system/memory-layout","title":"Memory Layout","description":"A typical memory representation of C program consists of following sections.","sidebar":"tutorialSidebar"},"computer-science/operating-system/memory-mapping-mmap":{"id":"computer-science/operating-system/memory-mapping-mmap","title":"Memory Mapping mmap","description":"Memory Mapping (mmap)","sidebar":"tutorialSidebar"},"computer-science/operating-system/microprocessor":{"id":"computer-science/operating-system/microprocessor","title":"Microprocessor","description":"Course - NPTEL - IIT-Guwahati, by Dr. John Jose","sidebar":"tutorialSidebar"},"computer-science/operating-system/others":{"id":"computer-science/operating-system/others","title":"Others","description":"Interrupt Coelesing","sidebar":"tutorialSidebar"},"computer-science/operating-system/parallel-processing":{"id":"computer-science/operating-system/parallel-processing","title":"Parallel Processing","description":"Parallel Processing, MPP (Massive Parallel Processing)","sidebar":"tutorialSidebar"},"computer-science/operating-system/raid":{"id":"computer-science/operating-system/raid","title":"RAID","description":"RAID (Redundant Array of Inexpensive Disks or Drives, or Redundant Array of Independent Disks) is a data storage virtualization technology that combines multiple physical disk drive components into one or more logical units for the purposes of data redundancy, performance improvement, or both. This was in contrast to the previous concept of highly reliable mainframe disk drives referred to as \\"single large expensive disk\\" (SLED).","sidebar":"tutorialSidebar"},"computer-science/operating-system/readme":{"id":"computer-science/operating-system/readme","title":"Operating System","description":"- Intro","sidebar":"tutorialSidebar"},"computer-science/operating-system/scheduling":{"id":"computer-science/operating-system/scheduling","title":"Scheduling","description":"In computing, schedulingis the method by which work is assigned to resources that complete the work. The work may be virtual computation elements such as threads), processes) or data flows), which are in turn scheduled onto hardware resources such as processors, network links or expansion cards.","sidebar":"tutorialSidebar"},"computer-science/operating-system/swap-paging-caching":{"id":"computer-science/operating-system/swap-paging-caching","title":"Swap / Paging / Caching","description":"Paging","sidebar":"tutorialSidebar"},"computer-science/operating-system/unix-linux":{"id":"computer-science/operating-system/unix-linux","title":"Unix / Linux","description":"A UNIX OS is made up of three parts","sidebar":"tutorialSidebar"},"computer-science/operating-system/unix-linux-file-system":{"id":"computer-science/operating-system/unix-linux-file-system","title":"Unix / Linux File System","description":"Command - man hier (layout of filesystems)","sidebar":"tutorialSidebar"},"computer-science/operating-system/write-ahead-log-wal":{"id":"computer-science/operating-system/write-ahead-log-wal","title":"Write Ahead Log, WAL","description":"In computer science, write-ahead logging(WAL) is a family of techniques for providing atomicity) and durability)(two of the ACID properties) in database systems. The changes are first recorded in the log, which must be written to stable storage, before the changes are written to the database.","sidebar":"tutorialSidebar"},"computer-science/others/bioinformatics-biotechnology":{"id":"computer-science/others/bioinformatics-biotechnology","title":"BioInformatics/BioTechnology","description":"PDB - Protein Data Bank","sidebar":"tutorialSidebar"},"computer-science/others/computer-graphics":{"id":"computer-science/others/computer-graphics","title":"Computer Graphics","description":"1. Vertex Shading","sidebar":"tutorialSidebar"},"computer-science/others/digital-circuits":{"id":"computer-science/others/digital-circuits","title":"Digital Circuits","description":"Karnaugh Maps","sidebar":"tutorialSidebar"},"computer-science/others/game-development":{"id":"computer-science/others/game-development","title":"Game Development","description":"https://docs.microsoft.com/en-us/archive/msdn-magazine/2015/march/game-development-a-web-game-in-an-hour","sidebar":"tutorialSidebar"},"computer-science/others/gamification":{"id":"computer-science/others/gamification","title":"Gamification","description":"The use of game elements and game design techniques in non-game contexts","sidebar":"tutorialSidebar"},"computer-science/others/other":{"id":"computer-science/others/other","title":"Other","description":"Performance Modelling","sidebar":"tutorialSidebar"},"computer-science/others/readme":{"id":"computer-science/others/readme","title":"Others","description":"- Tech Books","sidebar":"tutorialSidebar"},"computer-science/others/tech-books":{"id":"computer-science/others/tech-books","title":"Tech Books","description":"Networks, Crowds, and Markets: Reasoning about a Highly Connected World","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/cohesion-and-coupling":{"id":"computer-science/programming-concepts/cohesion-and-coupling","title":"Cohesion and Coupling","description":"COUPLING - An indication of the strength of interconnections between program units","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/dependency-injection":{"id":"computer-science/programming-concepts/dependency-injection","title":"Dependency Injection","description":"In software engineering, dependency injection is a technique whereby one object (or static method) supplies the dependencies of another object. A dependency is an object that can be used (a service)). An injection is the passing of a dependency to a dependent object (a client)) that would use it. The service is made part of the client\'s state).Passing the service to the client, rather than allowing a client to build or find the service, is the fundamental requirement of the pattern.","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/inversion-of-control":{"id":"computer-science/programming-concepts/inversion-of-control","title":"Inversion of Control","description":"In software engineering, inversion of control(IoC) is a design principle in which custom-written portions of a computer program receive the flow of control from a generic framework. A software architecture with this design inverts control as compared to traditional procedural programming: in traditional programming, the custom code that expresses the purpose of the program calls into reusable libraries to take care of generic tasks, but with inversion of control, it is the framework that calls into the custom, or task-specific, code.","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/marshalling":{"id":"computer-science/programming-concepts/marshalling","title":"Marshalling","description":"Marshalling is the process of transforming the memory representation of an object) to a data format suitable for storage or transmission, and it is typically used when data must be moved between different parts of a computer program or from one program to another. Marshalling is similar to serialization and is used to communicate to remote objects with an object, in this case a serialized object. It simplifies complex communication, using composite objects in order to communicate instead of primitives. The inverse, of marshalling is called unmarshallin (or demarshalling, similar to deserialization)","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/metaprogramming":{"id":"computer-science/programming-concepts/metaprogramming","title":"Metaprogramming","description":"Metaprogramming is a programming technique in which computer programs have the ability to treat programs as data. It means a program can be designed to read, generate, analyze or transform other programs, or even itself while running. In some cases, it allows programmers to minimize the number of lines of code to express a solution, thus reducing the development time. It also allows programs greater flexibility to efficiently handle new situations without recompilation.","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/others":{"id":"computer-science/programming-concepts/others","title":"Others","description":"Relationships","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/programming-styles":{"id":"computer-science/programming-concepts/programming-styles","title":"Programming Styles","description":"duck-typing","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/readme":{"id":"computer-science/programming-concepts/readme","title":"Programming Concepts","description":"- Type Systems","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/type-introspection-and-reflection":{"id":"computer-science/programming-concepts/type-introspection-and-reflection","title":"Type Introspection and Reflection","description":"Type Introspection","sidebar":"tutorialSidebar"},"computer-science/programming-concepts/type-systems":{"id":"computer-science/programming-concepts/type-systems","title":"Type Systems","description":"In programming languages, atype systemis a set of rules that assigns a property called type) to the various constructs of a computer program, such as variables), expressions), functions) or modules.These types formalize and enforce the otherwise implicit categories the programmer uses for algebraic data types, data structures, or other components (e.g. \\"string\\", \\"array of float\\", \\"function returning boolean\\").","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/architectural-mvvm":{"id":"computer-science/programming-paradigms/architectural-mvvm","title":"Architectural - MVVM","description":"Data Flow","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/behavioral-chain-of-responsibility":{"id":"computer-science/programming-paradigms/behavioral-chain-of-responsibility","title":"Behavioral - Chain of Responsibility","description":"Chain of Responsibility is a behavioral design pattern that lets you pass requests along a chain of handlers. Upon receiving a request, each handler decides either to process the request or to pass it to the next handler in thechain","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/behavioral-iterator":{"id":"computer-science/programming-paradigms/behavioral-iterator","title":"Behavioral - Iterator","description":"image","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/behavioral-mediator":{"id":"computer-science/programming-paradigms/behavioral-mediator","title":"Behavioral - Mediator","description":"A mediator is a behavioral design pattern that allows you to reduce the connectivity of multiple classes with each other, by moving these connections to the one mediation class.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/behavioral-memento":{"id":"computer-science/programming-paradigms/behavioral-memento","title":"Behavioral - Memento","description":"Memento is a behavioral design pattern that allows you to save and restore the past states of the objects without revealing the details of their implementation","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/behavioral-observer":{"id":"computer-science/programming-paradigms/behavioral-observer","title":"Behavioral - Observer","description":"The observer pattern is a software design pattern in which an object, called the subject, maintains a list of its dependents, called observers, and notifies them automatically of any state changes, usually by calling one of their methods.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/behavioral-publisher-subscriber":{"id":"computer-science/programming-paradigms/behavioral-publisher-subscriber","title":"Behavioral - Publisher Subscriber","description":"In \'Publisher-Subscriber\' pattern, senders of messages, called publishers, do not program the messages to be sent directly to specific receivers, called subscribers.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/behavioral-state":{"id":"computer-science/programming-paradigms/behavioral-state","title":"Behavioral - State","description":"Thestate pattern is a behavioralsoftware design pattern that implements a state machine in an object-oriented way. With the state pattern, a state machine is implemented by implementing each individual state as a derived class of the state pattern interface, and implementing state transitions by invoking methods) defined by the pattern\'s superclass.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/behavioral-strategy":{"id":"computer-science/programming-paradigms/behavioral-strategy","title":"Behavioral - Strategy","description":"image","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/concurrency-reactor":{"id":"computer-science/programming-paradigms/concurrency-reactor","title":"Concurrency - Reactor","description":"The reactor design pattern) is an event handling pattern for handling service requests delivered concurrently) to a service handler by one or more inputs. The service handler then demultiplexes the incoming requests and dispatches them synchronously to the associated request handlers.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/creational-abstract-factory":{"id":"computer-science/programming-paradigms/creational-abstract-factory","title":"Creational - Abstract Factory","description":"An abstract factory is a generative design pattern that allows you to create families of related objects without getting attached to specific classes of created objects. The pattern is being implemented by creating an abstract class (for example - Factory), which is represented as an interface for creating system components. Then the classes that implement this interface are being written.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/creational-object-pool":{"id":"computer-science/programming-paradigms/creational-object-pool","title":"Creational - Object Pool","description":"Intent","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/design-patterns":{"id":"computer-science/programming-paradigms/design-patterns","title":"Design Patterns","description":"Gang of Four (GOF)","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/functional-programming":{"id":"computer-science/programming-paradigms/functional-programming","title":"Functional Programming","description":"Everything is immutable","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/oops-solid":{"id":"computer-science/programming-paradigms/oops-solid","title":"OOPS / SOLID","description":"AEIP - Abstraction, Encapsulation, Inheritance and Polymorphism","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/others":{"id":"computer-science/programming-paradigms/others","title":"Others","description":"Behavior-driven development","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/readme":{"id":"computer-science/programming-paradigms/readme","title":"Programming Paradigms","description":"- Types of Programming Paradigm","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/structural-adapter":{"id":"computer-science/programming-paradigms/structural-adapter","title":"Structural - Adapter","description":"If there are 3 languages that need to be typed and you know a 4th language than you will not write the same thing 3 times everytime you have to write something, what we do it to create an adapter for the three languages that sit infront of 3 classes that will translate from 4th language to their specific language. All the translations will be handled by the adapter.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/structural-bridge":{"id":"computer-science/programming-paradigms/structural-bridge","title":"Structural - Bridge","description":"Bridge is a structural design pattern that divides one or more classes into two separate hierarchies - abstraction and implementation, allowing them to be changed independently of each other","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/structural-decorator":{"id":"computer-science/programming-paradigms/structural-decorator","title":"Structural - Decorator","description":"In object-oriented programming, the**decorator pattern** is a design pattern) that allows behavior to be added to an individual object), either statically or dynamically, without affecting the behavior of other objects from the same class).The decorator pattern is often useful for adhering to the Single Responsibility Principle, as it allows functionality to be divided between classes with unique areas of concern.The decorator pattern is structurally nearly identical to the chain of responsibility pattern, the difference being that in a chain of responsibility, exactly one of the classes handles the request, while for the decorator, all classes handle the request.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/structural-facade":{"id":"computer-science/programming-paradigms/structural-facade","title":"Structural - Facade","description":"According to Gang of Four definition, facade provides a simplified interface for a set of interfaces of a subsystem. It defines a convenient higher-level interface to interact with.","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/structural-proxy":{"id":"computer-science/programming-paradigms/structural-proxy","title":"Structural - Proxy","description":"Example -","sidebar":"tutorialSidebar"},"computer-science/programming-paradigms/types-of-programming-paradigm":{"id":"computer-science/programming-paradigms/types-of-programming-paradigm","title":"Types of programming paradigm","description":"Imperative (allows side effect)","sidebar":"tutorialSidebar"},"computer-science/readme":{"id":"computer-science/readme","title":"Computer Science","description":"- General","sidebar":"tutorialSidebar"},"computer-science/security/attacks":{"id":"computer-science/security/attacks","title":"Attacks","description":"Types of Security Attacks","sidebar":"tutorialSidebar"},"computer-science/security/authentication/certificates":{"id":"computer-science/security/authentication/certificates","title":"Certificates","description":"Types of certificates","sidebar":"tutorialSidebar"},"computer-science/security/authentication/http-authentication":{"id":"computer-science/security/authentication/http-authentication","title":"HTTP Authentication","description":"RFC 7235 defines the HTTP authentication framework which can be used by a server to challenge a client request and by a client to provide authentication information.","sidebar":"tutorialSidebar"},"computer-science/security/authentication/intro":{"id":"computer-science/security/authentication/intro","title":"Authentication","description":"Methods of Authentication","sidebar":"tutorialSidebar"},"computer-science/security/authentication/jwt":{"id":"computer-science/security/authentication/jwt","title":"JWT","description":"JSON Web Token (JWT) is an open standard (RFC 7519) that defines a compact and self-contained way for securely transmitting information between parties as a JSON object. This information can be verified and trusted because it is digitally signed. JWTs can be signed using a secret (with theHMACalgorithm) or a public/private key pair usingRSAorECDSA","sidebar":"tutorialSidebar"},"computer-science/security/authentication/oauth":{"id":"computer-science/security/authentication/oauth","title":"OAuth","description":"- OAuth is an open standard for access delegation","sidebar":"tutorialSidebar"},"computer-science/security/authentication/openid":{"id":"computer-science/security/authentication/openid","title":"OpenID","description":"OpenIdis HTTP based protocol that uses identity provider to validate a user. The user password is secured with one identity provider, this allows other service providers a way to achieve Single SignOn(SSO) without requiring password from user. There are many OpenId enabled account on the internet and organizations such as Google, Facebook, Wordpress, Yahoo, PayPal etc., uses OpenId to authenticate users. The latest version of OpenId is OpenId Connect (OIDC), which provides OpenId(authentication) on top of OAuth 2.0 (authorization) for complete security solution.","sidebar":"tutorialSidebar"},"computer-science/security/authentication/readme":{"id":"computer-science/security/authentication/readme","title":"Authentication","description":"- Authentication","sidebar":"tutorialSidebar"},"computer-science/security/authentication/siem":{"id":"computer-science/security/authentication/siem","title":"SIEM","description":"Security information and event management, SIEM for short, is a solution that helps organizations detect, analyze, and respond to security threats before they harm business operations.","sidebar":"tutorialSidebar"},"computer-science/security/authentication/two-2fa":{"id":"computer-science/security/authentication/two-2fa","title":"2FA / 2-Factor Authentication","description":"How does Google Authenticator (or other types of 2-factor authenticators) work?","sidebar":"tutorialSidebar"},"computer-science/security/concepts":{"id":"computer-science/security/concepts","title":"Concepts","description":"Security Services","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/cryptographic-algorithms":{"id":"computer-science/security/cryptography/cryptographic-algorithms","title":"Cryptographic Algorithms","description":"Stream Ciphers (OTP)","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/cryptographic-hash-functions":{"id":"computer-science/security/cryptography/cryptographic-hash-functions","title":"Cryptographic Hash Functions","description":"A cryptographic hash function is a special class of hash function that has certain properties which make it suitable for use in cryptography. It is a mathematical algorithm that maps) data of arbitrary size to a bit string of a fixed size (a hash) and is designed to be a one-way function, that is, a function which is infeasible to invert. The only way to recreate the input data from an ideal cryptographic hash function\'s output is to attempt a brute-force search of possible inputs to see if they produce a match, or use a rainbow table of matched hashes.Bruce Schneier has called one-way hash functions \\"the workhorses of modern cryptography\\". The input data is often called the message, and the output (the hash value or hash) is often called the message digestor simply the digest.","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/cryptography-terms":{"id":"computer-science/security/cryptography/cryptography-terms","title":"Cryptography Terms","description":"Cryptographic Techniques","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/diffie-hellman-key-exchange":{"id":"computer-science/security/cryptography/diffie-hellman-key-exchange","title":"Diffie-Hellman Key Exchange","description":"Diffie-Hellman key exchange (DH)is a method of securely exchanging cryptographic keys) over a public channel and was one of the first public-key protocols as originally conceptualized by Ralph Merkle and named after Whitfield Diffie and Martin Hellman","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/hash-function-design":{"id":"computer-science/security/cryptography/hash-function-design","title":"Hash Function Design","description":"Merkle--Damg\xe5rd construction","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/intro":{"id":"computer-science/security/cryptography/intro","title":"Cryptography","description":"Dance like no one is watching; encrypt like everyone is. Encrypt everything.\\"","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/post-quantum-cryptography":{"id":"computer-science/security/cryptography/post-quantum-cryptography","title":"Post Quantum Cryptography","description":"Post-quantum cryptography (PQC) is\xa0the development of cryptographic algorithms that are resistant to attacks from quantum computers.\xa0It\'s also known as quantum-proof, quantum-safe, or quantum-resistant.","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/public-key-cryptography":{"id":"computer-science/security/cryptography/public-key-cryptography","title":"Public-key cryptography","description":"Public key cryptography, orasymmetrical cryptography, is any cryptographic system that uses pairs of keysauthentication, where the public key verifies that a holder of the paired private key sent the message, and encryption, where only the paired private key holder can decrypt the message encrypted with the public key","sidebar":"tutorialSidebar"},"computer-science/security/cryptography/readme":{"id":"computer-science/security/cryptography/readme","title":"Cryptography","description":"- Cryptography","sidebar":"tutorialSidebar"},"computer-science/security/ethical-hacking":{"id":"computer-science/security/ethical-hacking","title":"Ethical Hacking","description":"- https://www.shodan.io/host/182.71.91.174","sidebar":"tutorialSidebar"},"computer-science/security/firewall-waf":{"id":"computer-science/security/firewall-waf","title":"Firewall WAF","description":"Web Application Firewall (WAF)","sidebar":"tutorialSidebar"},"computer-science/security/improving-security-posture":{"id":"computer-science/security/improving-security-posture","title":"Improving Security Posture","description":"1. Assessment of Initial Security State","sidebar":"tutorialSidebar"},"computer-science/security/others":{"id":"computer-science/security/others","title":"Others","description":"SE Radio - 321: End to End Encryption - Kim Carter with Peter Budai","sidebar":"tutorialSidebar"},"computer-science/security/readme":{"id":"computer-science/security/readme","title":"Security","description":"- Improving Security Posture","sidebar":"tutorialSidebar"},"computer-science/security/systems-protection":{"id":"computer-science/security/systems-protection","title":"Systems Protection","description":"Protection against Buffer Overflow attacks / Stash smashing attacks","sidebar":"tutorialSidebar"},"computer-science/security/tools":{"id":"computer-science/security/tools","title":"Tools","description":"- GitHub - gchq/CyberChef: The Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis","sidebar":"tutorialSidebar"},"computer-science/security/vault":{"id":"computer-science/security/vault","title":"Vault","description":"Vault is a tool for securely accessing secrets. A secret is anything that you want to tightly control access to, such as API keys, passwords, or certificates. Vault provides a unified interface to any secret, while providing tight access control and recording a detailed audit log.","sidebar":"tutorialSidebar"},"computer-science/security/vulnerabilities":{"id":"computer-science/security/vulnerabilities","title":"Vulnerabilities","description":"1. Spectre","sidebar":"tutorialSidebar"},"computer-science/software-engineering/change-management":{"id":"computer-science/software-engineering/change-management","title":"Change Management","description":"Change Advisory Board (CAB)","sidebar":"tutorialSidebar"},"computer-science/software-engineering/code-smell":{"id":"computer-science/software-engineering/code-smell","title":"Code Smell","description":"In computer programming, acode smellis any characteristic in the source code of a program that possibly indicates a deeper problem.Determining what is and is not a code smell is subjective, and varies by language, developer, and development methodology.","sidebar":"tutorialSidebar"},"computer-science/software-engineering/coding-guidelines-code-reviews-clean-code":{"id":"computer-science/software-engineering/coding-guidelines-code-reviews-clean-code","title":"Coding Guidelines / Code Reviews / Clean Code","description":"10 Good Coding Principles","sidebar":"tutorialSidebar"},"computer-science/software-engineering/complexity":{"id":"computer-science/software-engineering/complexity","title":"Software Complexity","description":"- Learning and Discovery - Iteration, Feedback, Incrementalism, Experimentation and Empiricism","sidebar":"tutorialSidebar"},"computer-science/software-engineering/developer-roles":{"id":"computer-science/software-engineering/developer-roles","title":"Developer Roles","description":"- SDET - Software Development Engineers in Test","sidebar":"tutorialSidebar"},"computer-science/software-engineering/development-approaches":{"id":"computer-science/software-engineering/development-approaches","title":"Development Approaches","description":"Asshole Driven development (ADD) - Any team where the biggest jerk makes all the big decisions is asshole driven development. All wisdom, logic or process goes out the window when Mr. Asshole is in the room, doing whatever idiotic, selfish thing he thinks is best. There may rules and processes, but Mr. A breaks them and people follow anyway.","sidebar":"tutorialSidebar"},"computer-science/software-engineering/intro":{"id":"computer-science/software-engineering/intro","title":"Software Engineering","description":"Life Critical System","sidebar":"tutorialSidebar"},"computer-science/software-engineering/modeling-languages":{"id":"computer-science/software-engineering/modeling-languages","title":"Modeling Language","description":"UML (Unified Modeling Language)","sidebar":"tutorialSidebar"},"computer-science/software-engineering/principles":{"id":"computer-science/software-engineering/principles","title":"Principles of sofware design","description":"YAGNI - You Ain\'t Gonna Need It. (For new features)","sidebar":"tutorialSidebar"},"computer-science/software-engineering/readme":{"id":"computer-science/software-engineering/readme","title":"Software Engineering","description":"- Software Engineering","sidebar":"tutorialSidebar"},"computer-science/software-engineering/refactoring":{"id":"computer-science/software-engineering/refactoring","title":"Refactoring","description":"The 7 R\'s: Common use cases and deployment","sidebar":"tutorialSidebar"},"computer-science/software-engineering/static-code-analysis":{"id":"computer-science/software-engineering/static-code-analysis","title":"Static Code Analysis","description":"Static code analysis looks at the code without executing it. It is usually extremely fast to execute, requires little effort to add to your workflow, and can uncover common mistakes. The only downside is that it is not tailored towards your code.","sidebar":"tutorialSidebar"},"computer-science/software-engineering/technical-debt":{"id":"computer-science/software-engineering/technical-debt","title":"Technical Debt","description":"Lehman\'s Laws of Software Evolution","sidebar":"tutorialSidebar"},"computer-science/software-engineering/types-of-code":{"id":"computer-science/software-engineering/types-of-code","title":"Types of code","description":"Legacy code","sidebar":"tutorialSidebar"},"computer-science/system-design/addressing-failures":{"id":"computer-science/system-design/addressing-failures","title":"Addressing Failures","description":"Cascading Failures","sidebar":"tutorialSidebar"},"computer-science/system-design/api-gateway":{"id":"computer-science/system-design/api-gateway","title":"API Gateway","description":"API Design","sidebar":"tutorialSidebar"},"computer-science/system-design/architecture-guide":{"id":"computer-science/system-design/architecture-guide","title":"Architecture Guide","description":"Application Architecture Guide","sidebar":"tutorialSidebar"},"computer-science/system-design/cloud-native":{"id":"computer-science/system-design/cloud-native","title":"Cloud Native","description":"Cloud native is a term used to describe container-based environments. Cloud-native technologies are used to develop applications built with services packaged in containers, deployed as microservices and managed on elastic infrastructure through agile DevOps processes and continuous delivery workflows.","sidebar":"tutorialSidebar"},"computer-science/system-design/enterprise-integration-patterns":{"id":"computer-science/system-design/enterprise-integration-patterns","title":"Enterprise Integration Patterns","description":"The patterns provide technology-independent design guidance for developers and architects to describe and develop robust integration solutions.","sidebar":"tutorialSidebar"},"computer-science/system-design/event-driven-architecture":{"id":"computer-science/system-design/event-driven-architecture","title":"Event driven architecture","description":"Event Driven Architecture / Event Sourcing","sidebar":"tutorialSidebar"},"computer-science/system-design/intro":{"id":"computer-science/system-design/intro","title":"Intro","description":"Systems design is the process of defining the architecture, modules, interfaces, and data for a system to satisfy specified requirements. Systems design could be seen as the application of systems theory to product development. There is some overlap with the disciplines of systems analysis, systems architecture and systems engineering","sidebar":"tutorialSidebar"},"computer-science/system-design/message-oriented-architecture-mom":{"id":"computer-science/system-design/message-oriented-architecture-mom","title":"Message Oriented Architecture (MOM)","description":"Message oriented middleware (MOM) refers to the software infrastructure supporting sending and receiving messages between distributed systems. AMQP and MQTT are the two most relevant protocols in this context. They are extensively used for exchanging messages since they provide an abstraction of the different participating system entities, alleviating their coordination and simplifying the communication programming details.","sidebar":"tutorialSidebar"},"computer-science/system-design/message-queues":{"id":"computer-science/system-design/message-queues","title":"Message Queues","description":"IBM MQ -> RabbitMQ -> Kafka -> Pulsar, How do message queue architectures evolve?","sidebar":"tutorialSidebar"},"computer-science/system-design/microservice-architecture/design-patterns":{"id":"computer-science/system-design/microservice-architecture/design-patterns","title":"Design Patterns","description":"Design Patterns of Microservices","sidebar":"tutorialSidebar"},"computer-science/system-design/microservice-architecture/domain-driven-design":{"id":"computer-science/system-design/microservice-architecture/domain-driven-design","title":"Domain Driven Design","description":"Domain-driven design(DDD) is the concept that the structure and language of software code (class names, class methods, class variables) should match the business domain. For example, if a software processes loan applications, it might have classes such as LoanApplication and Customer, and methods such as AcceptOffer and Withdraw.","sidebar":"tutorialSidebar"},"computer-science/system-design/microservice-architecture/example":{"id":"computer-science/system-design/microservice-architecture/example","title":"Example","description":"https://thenewstack.io/how-redis-simplifies-microservices-design-patterns","sidebar":"tutorialSidebar"},"computer-science/system-design/microservice-architecture/intro":{"id":"computer-science/system-design/microservice-architecture/intro","title":"Microservice Architecture","description":"What is microservices architecture?","sidebar":"tutorialSidebar"},"computer-science/system-design/microservice-architecture/readme":{"id":"computer-science/system-design/microservice-architecture/readme","title":"Microservice Architecture","description":"- Mircroservice Architecture","sidebar":"tutorialSidebar"},"computer-science/system-design/n-tier-application-architecture":{"id":"computer-science/system-design/n-tier-application-architecture","title":"N-Tier Application Architecture","description":"An N-tier architecture divides an application into logical layers and physical tiers.","sidebar":"tutorialSidebar"},"computer-science/system-design/others":{"id":"computer-science/system-design/others","title":"Others","description":"Grid FTP","sidebar":"tutorialSidebar"},"computer-science/system-design/rate-limiting":{"id":"computer-science/system-design/rate-limiting","title":"Rate Limiting","description":"Endpoint Protection","sidebar":"tutorialSidebar"},"computer-science/system-design/reactive-microservices-manifesto":{"id":"computer-science/system-design/reactive-microservices-manifesto","title":"Reactive Microservices / Manifesto","description":"A reactive microservices architecture is an architectural style that strives to provide the highest levels of responsiveness, resiliency, and elasticity, and accomplish this by adopting strong decoupling, isolation, non-blocking, event-driven architecture, and asynchronous messaging, among other techniques.","sidebar":"tutorialSidebar"},"computer-science/system-design/readme":{"id":"computer-science/system-design/readme","title":"System Design","description":"- Intro","sidebar":"tutorialSidebar"},"computer-science/system-design/retries":{"id":"computer-science/system-design/retries","title":"Retries","description":"Linear Backoff","sidebar":"tutorialSidebar"},"computer-science/system-design/serverless-architecture":{"id":"computer-science/system-design/serverless-architecture","title":"Serverless Architecture","description":"Serverless computing simply means using existing, auto-scaling cloud services to achieve system behaviours. In other words, I don\'t manage any servers or docker containers. I don\'t set up networks or manage operation (ops). I merely provide the serverless solution my recipe and it handles creation of any needed assets and performs the required computational process.","sidebar":"tutorialSidebar"},"computer-science/system-design/trade-offs":{"id":"computer-science/system-design/trade-offs","title":"Trade offs","description":"Compute is cheap. Storage is cheap. Engineering time is expensive.","sidebar":"tutorialSidebar"},"computer-science/system-design/twelve-factor-app":{"id":"computer-science/system-design/twelve-factor-app","title":"Twelve-Factor App","description":"In the modern era, software is commonly delivered as a service","sidebar":"tutorialSidebar"},"computer-science/testing/checkov":{"id":"computer-science/testing/checkov","title":"Checkov","description":"Policy-as-code for everyone","sidebar":"tutorialSidebar"},"computer-science/testing/intro":{"id":"computer-science/testing/intro","title":"Intro","description":"Testing Vocabulary","sidebar":"tutorialSidebar"},"computer-science/testing/iperf3-testing":{"id":"computer-science/testing/iperf3-testing","title":"iperf3 Testing","description":"iperf (Network throughput)","sidebar":"tutorialSidebar"},"computer-science/testing/load-performance-testing-qa-tools":{"id":"computer-science/testing/load-performance-testing-qa-tools","title":"Load / Performance Testing/QA Tools","description":"Website Performance Testing Tools","sidebar":"tutorialSidebar"},"computer-science/testing/mocking":{"id":"computer-science/testing/mocking","title":"Mocking","description":"The Abstract Pattern of the Problem","sidebar":"tutorialSidebar"},"computer-science/testing/postman":{"id":"computer-science/testing/postman","title":"Postman","description":"Fake API REST Mocks Server Tests","sidebar":"tutorialSidebar"},"computer-science/testing/readme":{"id":"computer-science/testing/readme","title":"Testing","description":"- Intro","sidebar":"tutorialSidebar"},"computer-science/testing/selenium":{"id":"computer-science/testing/selenium","title":"Selenium","description":"Two ways to run tests -","sidebar":"tutorialSidebar"},"computer-science/testing/terms":{"id":"computer-science/testing/terms","title":"Terms","description":"A","sidebar":"tutorialSidebar"},"computer-science/testing/test-pyramid":{"id":"computer-science/testing/test-pyramid","title":"Test Pyramid","description":"Typical Test Pyramid","sidebar":"tutorialSidebar"},"computer-science/testing/tools":{"id":"computer-science/testing/tools","title":"Tools","description":"Google Test","sidebar":"tutorialSidebar"},"courses/365-data-science-program":{"id":"courses/365-data-science-program","title":"365 Data Science Program","description":"1. Intro to Data and Data Science","sidebar":"tutorialSidebar"},"courses/365-ds-advanced-stastistical-methods-in-python":{"id":"courses/365-ds-advanced-stastistical-methods-in-python","title":"365 DS - Advanced Stastistical Methods in Python","description":"Linear regression","sidebar":"tutorialSidebar"},"courses/365-ds-mathematics":{"id":"courses/365-ds-mathematics","title":"365 DS - Mathematics","description":"Introduction to Linear Algebra","sidebar":"tutorialSidebar"},"courses/aws-certified-data-engineer-associate":{"id":"courses/aws-certified-data-engineer-associate","title":"AWS Certified Data Engineer - Associate","description":"AWS Certified Data Engineer - Associate","sidebar":"tutorialSidebar"},"courses/aws-certified-data-engineer-associate-questions":{"id":"courses/aws-certified-data-engineer-associate-questions","title":"AWS Certified Data Engineer - Associate Questions","description":"AWS Certified Data Engineer - Associate DEA-C01 Exam - Free Exam Q&As, Page 1 | ExamTopics","sidebar":"tutorialSidebar"},"courses/aws-certified-developer-associate":{"id":"courses/aws-certified-developer-associate","title":"AWS Certified Developer Associate","description":"AWS Certified Developer Associate","sidebar":"tutorialSidebar"},"courses/course-art-and-science-of-ml":{"id":"courses/course-art-and-science-of-ml","title":"Course - Art and Science of ML","description":"Introduction","sidebar":"tutorialSidebar"},"courses/course-big-data-computing-nptel":{"id":"courses/course-big-data-computing-nptel","title":"Course - Big Data Computing - NPTEL","description":"- Dr. Rajiv Mishra","sidebar":"tutorialSidebar"},"courses/course-credit-risk-modeling/credit-and-debt":{"id":"courses/course-credit-risk-modeling/credit-and-debt","title":"Credit & Debt","description":"Credit Risk","sidebar":"tutorialSidebar"},"courses/course-credit-risk-modeling/decision-areas-and-credit-scorecards":{"id":"courses/course-credit-risk-modeling/decision-areas-and-credit-scorecards","title":"Decision Areas & Credit Scorecards","description":"Decision Areas","sidebar":"tutorialSidebar"},"courses/course-credit-risk-modeling/fraud-detection-and-prevention":{"id":"courses/course-credit-risk-modeling/fraud-detection-and-prevention","title":"Fraud Detection and Prevention","description":"- Anomaly Detection: Identify unusual patterns in transaction data that may indicate fraudulent activity.","sidebar":"tutorialSidebar"},"courses/course-credit-risk-modeling/fraud-features":{"id":"courses/course-credit-risk-modeling/fraud-features","title":"Fraud Features","description":"Data Features","sidebar":"tutorialSidebar"},"courses/course-credit-risk-modeling/fraud-types":{"id":"courses/course-credit-risk-modeling/fraud-types","title":"Fraud Types","description":"Financial Frauds","sidebar":"tutorialSidebar"},"courses/course-credit-risk-modeling/intro":{"id":"courses/course-credit-risk-modeling/intro","title":"Intro","description":"- Credit Risk - The likelihood that a borrower would not repay their loan to the lender (not receive owed principal and interest)","sidebar":"tutorialSidebar"},"courses/course-credit-risk-modeling/syllabus":{"id":"courses/course-credit-risk-modeling/syllabus","title":"Course - Credit Risk Modeling","description":"- Intro","sidebar":"tutorialSidebar"},"courses/course-data-mining-nptel":{"id":"courses/course-data-mining-nptel","title":"Course - Data Mining NPTEL","description":"Data mining is study of algorithms for finding patterns in large data sets. It is an integral part of modern industry, where data from its operations and customers are mined for gaining business insight. It is also important in modern scientific endeavors. Data mining is an interdisciplinary topic involving, databases, machine learning and algorithms.","sidebar":"tutorialSidebar"},"courses/course-data-storage-and-processing-edx":{"id":"courses/course-data-storage-and-processing-edx","title":"Course - Data Storage and Processing - edX","description":"Master the culture of data representation, interpretation and outcomes evaluation. Learn the fundamentals of relational and NoSQL database management systems.","sidebar":"tutorialSidebar"},"courses/course-feature-engineering":{"id":"courses/course-feature-engineering","title":"Course - Feature Engineering","description":"Introduction","sidebar":"tutorialSidebar"},"courses/course-intro-to-data-and-data-science":{"id":"courses/course-intro-to-data-and-data-science","title":"Course - Intro to Data and Data Science","description":"https://365datascience.com","sidebar":"tutorialSidebar"},"courses/course-intro-to-tensorflow":{"id":"courses/course-intro-to-tensorflow","title":"Course - Intro to TensorFlow","description":"https://www.youtube.com/watch?v=tPYj3fFJGjk","sidebar":"tutorialSidebar"},"courses/course-launching-into-ml":{"id":"courses/course-launching-into-ml","title":"Course - Launching into ML","description":"Objectives","sidebar":"tutorialSidebar"},"courses/course-time-series-analysis/exponential-smoothing":{"id":"courses/course-time-series-analysis/exponential-smoothing","title":"Exponential Smoothing","description":"Exponential smoothing is a rule of thumb technique for smoothing time series data using the exponential window function. Whereas in the simple moving average the past observations are weighted equally, exponential functions are used to assign exponentially decreasing weights over time. It is an easily learned and easily applied procedure for making some determination based on prior assumptions by the user, such as seasonality. Exponential smoothing is often used for analysis of time-series data.","sidebar":"tutorialSidebar"},"courses/course-time-series-analysis/intro-time-series":{"id":"courses/course-time-series-analysis/intro-time-series","title":"Intro - Time Series","description":"QQ-Plot (Quantile-Quantile Plot)","sidebar":"tutorialSidebar"},"courses/course-time-series-analysis/syllabus":{"id":"courses/course-time-series-analysis/syllabus","title":"Course - Time Series Analysis","description":"https://365datascience.teachable.com/p/time-series-analysis-in-python","sidebar":"tutorialSidebar"},"courses/course-time-series-analysis/time-series-modeling":{"id":"courses/course-time-series-analysis/time-series-modeling","title":"Time-Series Modeling","description":"Endogenous variable - The variable we are estimating","sidebar":"tutorialSidebar"},"courses/coursera-algorithms-part-1":{"id":"courses/coursera-algorithms-part-1","title":"Coursera - Algorithms Part - 1","description":"https://www.coursera.org/learn/algorithms-part1","sidebar":"tutorialSidebar"},"courses/coursera-algorithms-part-2":{"id":"courses/coursera-algorithms-part-2","title":"Coursera - Algorithms Part - 2","description":"https://www.coursera.org/learn/algorithms-part2","sidebar":"tutorialSidebar"},"courses/coursera-how-google-does-ml":{"id":"courses/coursera-how-google-does-ml","title":"Coursera - How Google does ML","description":"Mathematical Models used in ML","sidebar":"tutorialSidebar"},"courses/customer-analytics-in-python/intro":{"id":"courses/customer-analytics-in-python/intro","title":"Intro","description":"What is Product Analytics? Your Ultimate Guide | FullStory","sidebar":"tutorialSidebar"},"courses/customer-analytics-in-python/syllabus":{"id":"courses/customer-analytics-in-python/syllabus","title":"Customer Analytics in Python","description":"https://365datascience.teachable.com/p/customer-analytics-in-python","sidebar":"tutorialSidebar"},"courses/data-integration-specialist-aws":{"id":"courses/data-integration-specialist-aws","title":"Data Integration Specialist - AWS","description":"- Big data topics including data architecture as well as techniques and tools for analysis, streaming and visualization.","sidebar":"tutorialSidebar"},"courses/google-professional-cloud-architect-pca":{"id":"courses/google-professional-cloud-architect-pca","title":"Google Professional Cloud Architect (PCA)","description":"Professional Cloud Architect Certification | Google Cloud","sidebar":"tutorialSidebar"},"courses/google-professional-data-engineer-pde":{"id":"courses/google-professional-data-engineer-pde","title":"Google Professional Data Engineer (PDE)","description":"Format","sidebar":"tutorialSidebar"},"courses/microsoft-excel-google-sheets":{"id":"courses/microsoft-excel-google-sheets","title":"Microsoft Excel / Google Sheets","description":"Features","sidebar":"tutorialSidebar"},"courses/mordern-algorithm-design":{"id":"courses/mordern-algorithm-design","title":"Mordern Algorithm Design","description":"1. Randomization","sidebar":"tutorialSidebar"},"courses/nutanix-hybrid-cloud":{"id":"courses/nutanix-hybrid-cloud","title":"Nutanix Hybrid Cloud","description":"Udacity - Hybrid Cloud Scholarship Foundation Course Nanodegree Program (23 June 2020)","sidebar":"tutorialSidebar"},"courses/readme":{"id":"courses/readme","title":"Courses / Certifications","description":"AI / Data Courses","sidebar":"tutorialSidebar"},"courses/se-radio":{"id":"courses/se-radio","title":"SE Radio","description":"333 66 Ways Experts Think","sidebar":"tutorialSidebar"},"courses/self-driving-nanodegree":{"id":"courses/self-driving-nanodegree","title":"Self-Driving Nanodegree","description":"Part - 1","sidebar":"tutorialSidebar"},"courses/udemy-becoming-a-production-mysql-dba":{"id":"courses/udemy-becoming-a-production-mysql-dba","title":"Udemy - Becoming a Production MySQL DBA","description":"Becoming a Production MySQL DBA","sidebar":"tutorialSidebar"},"courses/udemy-python-for-data-structures-algorithms":{"id":"courses/udemy-python-for-data-structures-algorithms","title":"Udemy - Python for data structures algorithms","description":"1. Array Sequences","sidebar":"tutorialSidebar"},"data-structures/general/disjoint-set-data-structure":{"id":"data-structures/general/disjoint-set-data-structure","title":"Disjoint-Set Data Structure","description":"Also called as union-find data structure or merge-find set, is a DS that keeps track of set of elements partitioned into a number of disjoint (non-overlapping) subset. It provides near constant time operation (bounded by inverse- Ackermann function) to add new sets, to merge existing sets and to determine whether elements are in the same set.","sidebar":"tutorialSidebar"},"data-structures/general/ds-intro":{"id":"data-structures/general/ds-intro","title":"DS Intro","description":"Types","sidebar":"tutorialSidebar"},"data-structures/general/elementary-symbol-tables":{"id":"data-structures/general/elementary-symbol-tables","title":"Elementary Symbol Tables","description":"Symbol Tables (Associative Arrays, Maps and Dictionaries)","sidebar":"tutorialSidebar"},"data-structures/general/endianness":{"id":"data-structures/general/endianness","title":"Endianness","description":"adjective - denoting or relating to a system of ordering bytes in a word, or bits in a byte, in which the most significant (or least significant) item is put first.","sidebar":"tutorialSidebar"},"data-structures/general/mutable-immutable-data-structures":{"id":"data-structures/general/mutable-immutable-data-structures","title":"Mutable/Immutable Data Structures","description":"Immutable Data Structure","sidebar":"tutorialSidebar"},"data-structures/general/readme":{"id":"data-structures/general/readme","title":"General","description":"- DS Intro","sidebar":"tutorialSidebar"},"data-structures/graph/adjacency-list":{"id":"data-structures/graph/adjacency-list","title":"Adjacency List","description":"image","sidebar":"tutorialSidebar"},"data-structures/graph/adjacency-matrix":{"id":"data-structures/graph/adjacency-matrix","title":"Adjacency Matrix","description":"image","sidebar":"tutorialSidebar"},"data-structures/graph/digraphs-directed-graphs":{"id":"data-structures/graph/digraphs-directed-graphs","title":"Digraphs (Directed Graphs)","description":"image-image1.jpg)","sidebar":"tutorialSidebar"},"data-structures/graph/implementation":{"id":"data-structures/graph/implementation","title":"Implementation","description":"Python","sidebar":"tutorialSidebar"},"data-structures/graph/intro":{"id":"data-structures/graph/intro","title":"Intro","description":"Representation","sidebar":"tutorialSidebar"},"data-structures/graph/questions":{"id":"data-structures/graph/questions","title":"Questions","description":"- Implement Breadth and Depth First Search","sidebar":"tutorialSidebar"},"data-structures/graph/readme":{"id":"data-structures/graph/readme","title":"Graph","description":"- Intro","sidebar":"tutorialSidebar"},"data-structures/graph/undirected-graph":{"id":"data-structures/graph/undirected-graph","title":"Undirected Graph","description":"Undirected Graphs","sidebar":"tutorialSidebar"},"data-structures/hashtable/bloom-filters":{"id":"data-structures/hashtable/bloom-filters","title":"Bloom Filters","description":"A Bloom filter is a space-efficient probabilisticdata structure, conceived by Burton Howard Bloom in 1970, that is **used to test whether an element) is a member of a set).False positive matches are possible, but false negatives are not -- in other words, a query returns either \\"possibly in set\\" or \\"definitely not in set\\". Elements can be added to the set, but not removed (though this can be addressed with a \\"counting\\" filter); the more elements that are added to the set, the larger the probability of false positives. So if our design can tolerate false positive then we should consider using bloom filters because it\'s very space efficient.","sidebar":"tutorialSidebar"},"data-structures/hashtable/chord":{"id":"data-structures/hashtable/chord","title":"Chord","description":"In computing, Chordis a protocol and algorithm for a peer-to-peerdistributed hash table. A distributed hash table stores key-value pairs by assigning keys to different computers (known as \\"nodes\\"); a node will store the values for all the keys for which it is responsible. Chord specifies how keys are assigned to nodes, and how a node can discover the value for a given key by first locating the node responsible for that key.","sidebar":"tutorialSidebar"},"data-structures/hashtable/count-min-sketch":{"id":"data-structures/hashtable/count-min-sketch","title":"Count-min Sketch","description":"Space efficient probabilistic based data structure.","sidebar":"tutorialSidebar"},"data-structures/hashtable/dht-distributed-hash-tables":{"id":"data-structures/hashtable/dht-distributed-hash-tables","title":"DHT - Distributed Hash Tables","description":"A distributed hash table(DHT) is a class of a decentralized distributed system that provides a lookup service similar to a hash table: (key, value) pairs are stored in a DHT, and any participating node) can efficiently retrieve the value associated with a given key.Keysare unique identifiers which map to particularvalues, which in turn can be anything from addresses, to documents, to arbitrary data). Responsibility for maintaining the mapping from keys to values is distributed among the nodes, in such a way that a change in the set of participants causes a minimal amount of disruption. This allows a DHT to scale) to extremely large numbers of nodes and to handle continual node arrivals, departures, and failures.","sidebar":"tutorialSidebar"},"data-structures/hashtable/dictionaries":{"id":"data-structures/hashtable/dictionaries","title":"Dictionaries","description":"image","sidebar":"tutorialSidebar"},"data-structures/hashtable/hash-functions":{"id":"data-structures/hashtable/hash-functions","title":"Hash Functions","description":"Bad Hash Functions","sidebar":"tutorialSidebar"},"data-structures/hashtable/hash-tables":{"id":"data-structures/hashtable/hash-tables","title":"Hash Tables","description":"hash tables, a data structure that achieves constant-time performance for core symbol table operations, provided that search keys are standard data types or simply defined.","sidebar":"tutorialSidebar"},"data-structures/hashtable/hashing":{"id":"data-structures/hashtable/hashing","title":"Hashing","description":"https://www.hackerearth.com/practice/data-structures/hash-tables/basics-of-hash-tables/tutorial","sidebar":"tutorialSidebar"},"data-structures/hashtable/hashing-techniques":{"id":"data-structures/hashtable/hashing-techniques","title":"Hashing Techniques","description":"Separate chaining (open hashing)","sidebar":"tutorialSidebar"},"data-structures/hashtable/hyperloglog":{"id":"data-structures/hashtable/hyperloglog","title":"HyperLogLog","description":"HyperLogLog is a streaming algorithm used for estimating the number of distinct elements (the cardinality) of very large data sets. HyperLogLog counter can count one billion distinct items with an accuracy of 2% using only 1.5 KB of memory. It is based on the bit pattern observation that for a stream of randomly distributed numbers, if there is a number x with the maximum of leading 0 bits k, the cardinality of the stream is very likely equal to 2^k.","sidebar":"tutorialSidebar"},"data-structures/hashtable/kademlia":{"id":"data-structures/hashtable/kademlia","title":"Kademlia","description":"Kademlia is a distributed hash table for decentralized peer-to-peercomputer networks designed by Petar Maymounkov and David Mazi\xe8res in 2002. It specifies the structure of the network and the exchange of information through node) lookups. Kademlia nodes communicate among themselves using UDP. A virtual or overlay network is formed by the participant nodes. Each node is identified by a number or node ID. The node ID serves not only as identification, but the Kademlia algorithm uses the node ID to locate values (usually file hashes or keywords). In fact, the node ID provides a direct map to file hashes and that node stores information on where to obtain the file or resource.","sidebar":"tutorialSidebar"},"data-structures/hashtable/list-of-hash-functions":{"id":"data-structures/hashtable/list-of-hash-functions","title":"List of Hash Functions","description":"Cyclic redundancy checks","sidebar":"tutorialSidebar"},"data-structures/hashtable/merkle-trees":{"id":"data-structures/hashtable/merkle-trees","title":"Merkle Trees","description":"A merkle tree, also known as a binary hash tree, is a data structure used for efficiently summarizing and verifying the integrity of large sets of data.","sidebar":"tutorialSidebar"},"data-structures/hashtable/probabilistic-data-structure":{"id":"data-structures/hashtable/probabilistic-data-structure","title":"Probabilistic Data Structure","description":"Probabilistic data structures are a group of data structures that are extremely useful for big data and streaming applications. Generally speaking, these data structures use hash functions to randomize and compactly represent a set of items. Collisions are ignored but errors can be well-controlled under certain threshold. Comparing with error-free approaches, these algorithms use much less memory and have constant query time. They usually support union and intersection operations and therefore can be easily parallelized.","sidebar":"tutorialSidebar"},"data-structures/hashtable/questions":{"id":"data-structures/hashtable/questions","title":"Questions","description":"Hash Table","sidebar":"tutorialSidebar"},"data-structures/hashtable/readme":{"id":"data-structures/hashtable/readme","title":"HashTable","description":"- Hashing","sidebar":"tutorialSidebar"},"data-structures/hashtable/verkle-trees":{"id":"data-structures/hashtable/verkle-trees","title":"Verkle Trees","description":"Verkle trees (a portmanteau of \\"Vector commitment\\" and \\"Merkle Trees\\") are a data structure that can be used to upgrade Ethereum nodes so that they can stop storing large amounts of state data without losing the ability to validate blocks.","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/2-3-search-trees":{"id":"data-structures/hierarchical-data-structure/2-3-search-trees","title":"2-3 Search Trees","description":"Properties","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/avl-tree":{"id":"data-structures/hierarchical-data-structure/avl-tree","title":"AVL Tree","description":"AVL tree (named after inventors Adelson - Velsky and Landis) is a self-balancing Binary Search Tree (BST) where the difference between heights of left and right subtrees cannot be more than one for all nodes.","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/b-tree":{"id":"data-structures/hierarchical-data-structure/b-tree","title":"B-Tree","description":"Points","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/beap-bi-parental-heap":{"id":"data-structures/hierarchical-data-structure/beap-bi-parental-heap","title":"Beap (Bi-Parental Heap)","description":"Beap, short for bi-parental heap, introduced by Ian Munro and Hendra Suwanda. In this data structure a node usually has two parents (unless it is the first or last on a level) and two children (unless it is on the last level). What separates the beap from Williams\' heap is that beap allows sublinear search","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/binary-heap":{"id":"data-structures/hierarchical-data-structure/binary-heap","title":"Binary Heap","description":"Points to remember","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/binary-search-tree":{"id":"data-structures/hierarchical-data-structure/binary-search-tree","title":"Binary Search Tree","description":"Properties -","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/binary-tree":{"id":"data-structures/hierarchical-data-structure/binary-tree","title":"Binary Tree","description":"Properties","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/binomial-heap":{"id":"data-structures/hierarchical-data-structure/binomial-heap","title":"Binomial Heap","description":"Key Points","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/fibonacci-heap":{"id":"data-structures/hierarchical-data-structure/fibonacci-heap","title":"Fibonacci Heap","description":"Key Points","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/interval-search-tree":{"id":"data-structures/hierarchical-data-structure/interval-search-tree","title":"Interval Search Tree","description":"Operations","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/k-ary-heap-d-ary-heap-d-way-heap":{"id":"data-structures/hierarchical-data-structure/k-ary-heap-d-ary-heap-d-way-heap","title":"k-ary heap / d-ary heap / d-way heap","description":"K-ary heaps are a generalization of binary heap(K=2) in which each node have K children instead of 2.","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/kd-trees":{"id":"data-structures/hierarchical-data-structure/kd-trees","title":"Kd-trees","description":"In computer science, a***k*-d tree**(short for*k-dimensional tree*) is a space-partitioningdata structure for organizing points) in ak-dimensional space.*k*-d trees are a useful data structure for several applications, such as searches involving a multidimensional search key (e.g.range searches and nearest neighbor searches).k-d trees are a special case of binary space partitioning trees.","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/left-leaning-red-black-bsts-llrb-tree":{"id":"data-structures/hierarchical-data-structure/left-leaning-red-black-bsts-llrb-tree","title":"Left Leaning Red-Black BSTs (LLRB tree)","description":"Red-Black Tree","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/problems":{"id":"data-structures/hierarchical-data-structure/problems","title":"Problems","description":"Tree Traversals","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/readme":{"id":"data-structures/hierarchical-data-structure/readme","title":"Hierarchical Data Structure","description":"- Binary Heap","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/segment-tree":{"id":"data-structures/hierarchical-data-structure/segment-tree","title":"Segment Tree","description":"In computer science, asegment tree, also known as a statistic tree, is a tree)data structure used for storing information about intervals), or segments. It allows querying which of the stored segments contain a given point. It is, in principle, a static structure; that is, it\'s a structure that cannot be modified once it\'s built. A similar data structure is the interval tree.","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/space-partitioning-trees":{"id":"data-structures/hierarchical-data-structure/space-partitioning-trees","title":"Space-partitioning trees","description":"Use a tree to represent a recursive subdivision of 2d space","sidebar":"tutorialSidebar"},"data-structures/hierarchical-data-structure/tree-ds":{"id":"data-structures/hierarchical-data-structure/tree-ds","title":"Tree DS","description":"1. A Tree with N vertices has N-1 Edges","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/array":{"id":"data-structures/linear-data-structure/array","title":"Array","description":"Points to remember","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/bag-data-structure":{"id":"data-structures/linear-data-structure/bag-data-structure","title":"Bag Data Structure","description":"Application - Adding items to a collection and iterating (When order doesn\'t matter)","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/circular-buffer":{"id":"data-structures/linear-data-structure/circular-buffer","title":"Circular Buffer","description":"Acircular buffer, circular queue, cyclic bufferorring bufferis a data structure that uses a single, fixed-size buffer) as if it were connected end-to-end. This structure lends itself easily to buffering data streams.","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/dequeue":{"id":"data-structures/linear-data-structure/dequeue","title":"Dequeue","description":"Dequeue","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/indexed-priority-queue":{"id":"data-structures/linear-data-structure/indexed-priority-queue","title":"Indexed Priority Queue","description":"image","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/linked-list":{"id":"data-structures/linear-data-structure/linked-list","title":"Linked List","description":"Points to remember","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/priority-queue":{"id":"data-structures/linear-data-structure/priority-queue","title":"Priority Queue","description":"A priority queue is an abstract data type which is like a regular queue) or stack) data structure, but where additionally each element has a \\"priority\\" associated with it. In a priority queue, an element with high priority is served before an element with low priority. If two elements have the same priority, they are served according to their order in the queue.","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/problems":{"id":"data-structures/linear-data-structure/problems","title":"Problems","description":"Anagrams (ABC, CBA are anagrams of each other)","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/queue-fifo":{"id":"data-structures/linear-data-structure/queue-fifo","title":"Queue FIFO","description":"Queue is also an abstract data type or a linear data structure, in which the first element is inserted from one end called REAR(also called tail), and the deletion of existing element takes place from the other end called as FRONT(also called head). This makes queue as FIFO(First in First Out) data structure, which means that element inserted first will also be removed first.","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/randomized-queue":{"id":"data-structures/linear-data-structure/randomized-queue","title":"Randomized Queue","description":"Randomized queue","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/readme":{"id":"data-structures/linear-data-structure/readme","title":"Linear Data Structure","description":"- Array","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/sets":{"id":"data-structures/linear-data-structure/sets","title":"Sets","description":"Application of Symbol table.","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/skip-lists":{"id":"data-structures/linear-data-structure/skip-lists","title":"Skip Lists","description":"In computer science, a**skip list** is a data structure that allows fast searchwithin an ordered sequence of elements. Fast search is made possible by maintaining a linked hierarchy of subsequences, with each successive subsequence skipping over fewer elements than the previous one (see the picture below on the right). Searching starts in the sparsest subsequence until two consecutive elements have been found, one smaller and one larger than or equal to the element searched for. Via the linked hierarchy, these two elements link to elements of the next sparsest subsequence, where searching is continued until finally we are searching in the full sequence. The elements that are skipped over may be chosen probabilisticallyor deterministically, with the former being more common.","sidebar":"tutorialSidebar"},"data-structures/linear-data-structure/stack-lifo":{"id":"data-structures/linear-data-structure/stack-lifo","title":"Stack LIFO","description":"Stack is an abstract data type with a bounded (predefined) capacity. It is a simple data structure that allows adding and removing elements in a particular order. Every time an element is added, it goes on the top of the stack, the only element that can be removed is the element that was at the top of the stack, just like a pile of objects.","sidebar":"tutorialSidebar"},"data-structures/others/bitmap":{"id":"data-structures/others/bitmap","title":"Bitmap","description":"Bitmap / Bit Array / Bit Vector / Bitmap index / Bit set / Bit string","sidebar":"tutorialSidebar"},"data-structures/others/large-objects":{"id":"data-structures/others/large-objects","title":"Large Objects","description":"Types of Large Objects (LOBs)","sidebar":"tutorialSidebar"},"data-structures/others/lsm-log-structured-merge-trees":{"id":"data-structures/others/lsm-log-structured-merge-trees","title":"LSM (Log Structured Merge Trees)","description":"In computer science, the log-structured merge-tree (or LSM tree) is a data structure with performance characteristics that make it attractive for providing indexed access to files with high insert volume, such as transactional log data. LSM trees, like other search trees, maintain key-value pairs. LSM trees maintain data in two or more separate structures, each of which is optimized for its respective underlying storage medium; data is synchronized between the two structures efficiently, in batches.","sidebar":"tutorialSidebar"},"data-structures/others/readme":{"id":"data-structures/others/readme","title":"Others","description":"- SSTables, Sorted String Tables","sidebar":"tutorialSidebar"},"data-structures/others/sstables-sorted-string-tables":{"id":"data-structures/others/sstables-sorted-string-tables","title":"SSTables, Sorted String Tables","description":"The advantage of the Sorted String Tables is their simplicity: they are easy to write, search and read. SSTables are a persistent ordered immutable map from keys to values, where both keys and values are arbitrary byte strings. They have some nice properties like, for example, the random point-queries (i.e. finding a value by key) can be done quickly by looking up the primary index sequential scans (i.e. iterating over all key/value pairs in a specified key range) can be done efficiently by just reading the records one after the other.","sidebar":"tutorialSidebar"},"data-structures/readme":{"id":"data-structures/readme","title":"Data Structures","description":"- General","sidebar":"tutorialSidebar"},"data-structures/trie/compressed-trie":{"id":"data-structures/trie/compressed-trie","title":"Compressed Trie","description":"Compressed Trie is obtained from standard trie by joining chains of single nodes. The nodes of a compressed trie can be stored by storing index ranges at the nodes","sidebar":"tutorialSidebar"},"data-structures/trie/others":{"id":"data-structures/trie/others","title":"Others","description":"Hash Array Mapped Tries (HAMT)","sidebar":"tutorialSidebar"},"data-structures/trie/patricia-trie":{"id":"data-structures/trie/patricia-trie","title":"Patricia Trie","description":"image","sidebar":"tutorialSidebar"},"data-structures/trie/questions":{"id":"data-structures/trie/questions","title":"Questions","description":"- Count total number of words in Trie","sidebar":"tutorialSidebar"},"data-structures/trie/r-way-tries":{"id":"data-structures/trie/r-way-tries","title":"R-way Tries","description":"image","sidebar":"tutorialSidebar"},"data-structures/trie/readme":{"id":"data-structures/trie/readme","title":"Trie","description":"- Standard Trie","sidebar":"tutorialSidebar"},"data-structures/trie/standard-trie":{"id":"data-structures/trie/standard-trie","title":"Standard Trie","description":"Radix Tree / Prefix Tree (Because pre-order traversal would give the nodes in lexicographical order)","sidebar":"tutorialSidebar"},"data-structures/trie/suffix-array":{"id":"data-structures/trie/suffix-array","title":"Suffix Array","description":"A suffix array is a sorted array of all suffixes of a given string*. The definition is similar to Suffix Tree which is compressed trie of all suffixes of the given text. Any suffix tree based algorithm can be replaced with an algorithm that uses a suffix array enhanced with additional information and solves the same problem in the same time complexity","sidebar":"tutorialSidebar"},"data-structures/trie/suffix-tree":{"id":"data-structures/trie/suffix-tree","title":"Suffix Tree","description":"In computer science, a suffix tree (also called PAT tree or, in an earlier form, position tree) is a compressed trie containing all the suffixes) of the given text as their keys and positions in the text as their values. Suffix trees allow particularly fast implementations of many important string operations.","sidebar":"tutorialSidebar"},"data-structures/trie/ternary-search-tries-tst":{"id":"data-structures/trie/ternary-search-tries-tst","title":"Ternary Search Tries (TST)","description":"Solve the problem of using large amount of data by R-way tries.","sidebar":"tutorialSidebar"},"databases/concepts/acid-and-base":{"id":"databases/concepts/acid-and-base","title":"ACID and BASE","description":"ACID (SQL)","sidebar":"tutorialSidebar"},"databases/concepts/amazon-databases":{"id":"databases/concepts/amazon-databases","title":"amazon-databases","description":"Amazon Databases","sidebar":"tutorialSidebar"},"databases/concepts/comparisions":{"id":"databases/concepts/comparisions","title":"Comparisons","description":"image","sidebar":"tutorialSidebar"},"databases/concepts/concurrency-control":{"id":"databases/concepts/concurrency-control","title":"Concurrency Control","description":"The protocol to allow transactions to access a database in a multi-programmed fashion while preserving the illusion that each of them is executing alone on a dedicated system","sidebar":"tutorialSidebar"},"databases/concepts/core-concepts":{"id":"databases/concepts/core-concepts","title":"Core Concepts","description":"CRUD - Create, Read, Update, Delete","sidebar":"tutorialSidebar"},"databases/concepts/database-workloads":{"id":"databases/concepts/database-workloads","title":"Database Workloads","description":"OLTP (On-line Transaction Processing)","sidebar":"tutorialSidebar"},"databases/concepts/disk-oriented-vs-in-memory-dbs":{"id":"databases/concepts/disk-oriented-vs-in-memory-dbs","title":"Disk oriented vs in-memory DBs","description":"Background","sidebar":"tutorialSidebar"},"databases/concepts/history":{"id":"databases/concepts/history","title":"History","description":"image","sidebar":"tutorialSidebar"},"databases/concepts/intro":{"id":"databases/concepts/intro","title":"Intro","description":"Choosing the Database","sidebar":"tutorialSidebar"},"databases/concepts/isolation-levels":{"id":"databases/concepts/isolation-levels","title":"Isolation Levels","description":"In database systems, isolation determines how transaction integrity is visible to other users and systems. For example, when a user is creating a Purchase Order and has created the header, but not the Purchase Order lines, is the header available for other systems/users (carrying out concurrent) operations, such as a report on Purchase Orders) to see? (Refers to current, not past database systems).","sidebar":"tutorialSidebar"},"databases/concepts/mvcc-multiversion-concurrency-control":{"id":"databases/concepts/mvcc-multiversion-concurrency-control","title":"MVCC, MultiVersion Concurrency Control","description":"The DBMS maintans physical versions of a single logical object in the database:","sidebar":"tutorialSidebar"},"databases/concepts/others":{"id":"databases/concepts/others","title":"Others","description":"JDBC - Java Database Connectivity","sidebar":"tutorialSidebar"},"databases/concepts/readme":{"id":"databases/concepts/readme","title":"Databases Concepts","description":"- Intro","sidebar":"tutorialSidebar"},"databases/concepts/rum-conjecture":{"id":"databases/concepts/rum-conjecture","title":"RUM Conjecture","description":"RUM - Read Update Memory","sidebar":"tutorialSidebar"},"databases/concepts/types-of-databases":{"id":"databases/concepts/types-of-databases","title":"Types of Databases","description":"RDBMS / Relational database (ACID)","sidebar":"tutorialSidebar"},"databases/data-warehousing/01-intro":{"id":"databases/data-warehousing/01-intro","title":"Data Warehousing","description":"In computing, a data warehouse (DW or DWH), also known as an enterprise data warehouse (EDW), is a system used for reporting and data analysis, and is considered a core component of business intelligence. DWs are central repositories of integrated data from one or more disparate sources. They store current and historical data in one single place that are used for creating analytical reports for workers throughout the enterprise.","sidebar":"tutorialSidebar"},"databases/data-warehousing/02-concepts":{"id":"databases/data-warehousing/02-concepts","title":"Concepts","description":"image","sidebar":"tutorialSidebar"},"databases/data-warehousing/03-slowly-changing-dimension-scd":{"id":"databases/data-warehousing/03-slowly-changing-dimension-scd","title":"Slowly Changing Dimension (SCD)","description":"A Slowly Changing Dimension (SCD) is a dimension that stores and manages both current and historical data over time in a data warehouse. It is considered and implemented as one of the most critical ETL (Extract Transform Load) tasks in tracking the history of dimension records.","sidebar":"tutorialSidebar"},"databases/data-warehousing/04-fact-dimension-tables":{"id":"databases/data-warehousing/04-fact-dimension-tables","title":"Fact / Dimension Tables","description":"Dimensional Modeling?","sidebar":"tutorialSidebar"},"databases/data-warehousing/05-characteristics":{"id":"databases/data-warehousing/05-characteristics","title":"Characteristics","description":"Characteristics of Data warehouse","sidebar":"tutorialSidebar"},"databases/data-warehousing/06-architecture":{"id":"databases/data-warehousing/06-architecture","title":"Architecture","description":"There are mainly three types of Datawarehouse Architectures: -","sidebar":"tutorialSidebar"},"databases/data-warehousing/07-warehouse-schemas":{"id":"databases/data-warehousing/07-warehouse-schemas","title":"Warehouse Schemas","description":"Multidimensional schema is especially designed to model data warehouse systems. The schemas are designed to address the unique needs of very large databases designed for the analytical purpose (OLAP).","sidebar":"tutorialSidebar"},"databases/data-warehousing/08-data-lake":{"id":"databases/data-warehousing/08-data-lake","title":"Data Lake","description":"Also called Data Swamp","sidebar":"tutorialSidebar"},"databases/data-warehousing/09-kimball-inmon-architecture":{"id":"databases/data-warehousing/09-kimball-inmon-architecture","title":"Kimball / Inmon Architecture","description":"For designing a data warehouse, there are two most common architectures named Kimball and Inmon.","sidebar":"tutorialSidebar"},"databases/data-warehousing/10-lambda-architecture":{"id":"databases/data-warehousing/10-lambda-architecture","title":"Lambda Architecture","description":"Lambda architecture is a data-processing architecture designed to handle massive quantities of data by taking advantage of both batch and stream-processing methods. This approach to architecture xattempts to balance latency), throughput, and fault-tolerance by using batch processing to provide comprehensive and accurate views of batch data, while simultaneously using real-time stream processing to provide views of online data. The two view outputs may be joined before presentation. The rise of lambda architecture is correlated with the growth of big data, real-time analytics, and the drive to mitigate the latencies of map-reduce.","sidebar":"tutorialSidebar"},"databases/data-warehousing/11-dw-databases":{"id":"databases/data-warehousing/11-dw-databases","title":"DW - Databases","description":"1. SnowFlake","sidebar":"tutorialSidebar"},"databases/data-warehousing/change-data-capture-cdc":{"id":"databases/data-warehousing/change-data-capture-cdc","title":"Change Data Capture (CDC)","description":"In databases, change data capture(CDC) is a set of software design patterns) used to determine (and track) the data that has changed so that action can be taken using the changed data. CDC is also an approach to data integration that is based on the identification, capture and delivery of the changes made to enterprise data sources.","sidebar":"tutorialSidebar"},"databases/data-warehousing/data-engineering":{"id":"databases/data-warehousing/data-engineering","title":"Data Engineering","description":"Services","sidebar":"tutorialSidebar"},"databases/data-warehousing/debezium":{"id":"databases/data-warehousing/debezium","title":"Debezium","description":"Debezium is an open source distributed platform for change data capture. Start it up, point it at your databases, and your apps can start responding to all of the inserts, updates, and deletes that other apps commit to your databases. Debezium is durable and fast, so your apps can respond quickly and never miss an event, even when things go wrong.","sidebar":"tutorialSidebar"},"databases/data-warehousing/etl-extract-transform-load":{"id":"databases/data-warehousing/etl-extract-transform-load","title":"ETL (Extract Transform Load)","description":"In computing, extract, transform, load (ETL) refers to a process in database usage and especially in data warehousing.","sidebar":"tutorialSidebar"},"databases/data-warehousing/master-data-management-mdm":{"id":"databases/data-warehousing/master-data-management-mdm","title":"Master Data Management (MDM)","description":"Master data management (MDM) involves creating a single master record for each person, place, or thing in a business, from across internal and external data sources and applications. This information has been de-duplicated, reconciled and enriched, becoming a consistent, reliable source. Once created, this master data serves as a trusted view of business-critical data that can be managed and shared across the business to promote accurate reporting, reduce data errors, remove redundancy, and help workers make better-informed business decisions.","sidebar":"tutorialSidebar"},"databases/data-warehousing/readme":{"id":"databases/data-warehousing/readme","title":"Data Warehousing","description":"- Intro","sidebar":"tutorialSidebar"},"databases/data-warehousing/tools":{"id":"databases/data-warehousing/tools","title":"Tools","description":"Informatica PowerCenter / IICS","sidebar":"tutorialSidebar"},"databases/indexing/database-index":{"id":"databases/indexing/database-index","title":"Database Index","description":"A database index is a data structure that improves the speed of data retrieval operations on a database table) at the cost of additional writes and storage space to maintain the index data structure. Indexes are used to quickly locate data without having to search every row in a database table every time a database table is accessed. Indexes can be created using one or more columns of a database table), providing the basis for both rapid random lookups and efficient access of ordered records.","sidebar":"tutorialSidebar"},"databases/indexing/indexing-questions":{"id":"databases/indexing/indexing-questions","title":"Indexing Questions","description":"https://use-the-index-luke.com/3-minute-test/mysql","sidebar":"tutorialSidebar"},"databases/indexing/intro":{"id":"databases/indexing/intro","title":"Indexing","description":"Indexing is a data structure technique to efficiently retrieve records from the database files based on some attributes on which the indexing has been done. Indexing in database systems is similar to what we see in books i.e. Table of contents.","sidebar":"tutorialSidebar"},"databases/indexing/inverted-index":{"id":"databases/indexing/inverted-index","title":"Inverted Index","description":"In computer science, an inverted index (also referred to as postings file or inverted file) is an index data structure) storing a mapping from content, such as words or numbers, to its locations in a database file), or in a document or a set of documents (named in contrast to a forward index, which maps from documents to content). The purpose of an inverted index is to allow fast full text searches, at a cost of increased processing when a document is added to the database. The inverted file may be the database file itself, rather than its index). It is the most popular data structure used in document retrieval systems, used on a large scale for example in search engines.","sidebar":"tutorialSidebar"},"databases/indexing/mysql-indexing":{"id":"databases/indexing/mysql-indexing","title":"MySQL Indexing","description":"Important Points / Keep in mind / Gotchas","sidebar":"tutorialSidebar"},"databases/indexing/readme":{"id":"databases/indexing/readme","title":"Indexing","description":"- Indexing","sidebar":"tutorialSidebar"},"databases/modeling/data-modeling":{"id":"databases/modeling/data-modeling","title":"Data Modeling","description":"Data modeling in software engineering is the process of creating a data model for an information system by applying certain formal techniques","sidebar":"tutorialSidebar"},"databases/modeling/er-diagrams-entity-relationships":{"id":"databases/modeling/er-diagrams-entity-relationships","title":"ER Diagrams (Entity Relationships)","description":"An entity--relationship model (or ER model) describes interrelated things of interest in a specific domain of knowledge. A basic ER model is composed of entity types (which classify the things of interest) and specifies relationships that can exist between entities(instances of those entity types).","sidebar":"tutorialSidebar"},"databases/modeling/er-tools":{"id":"databases/modeling/er-tools","title":"ER - Tools","description":"https://drawsql.app (Great)","sidebar":"tutorialSidebar"},"databases/modeling/readme":{"id":"databases/modeling/readme","title":"Modeling","description":"- Data Modeling","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/capacity-modes":{"id":"databases/nosql-databases/aws-dynamodb/capacity-modes","title":"Capacity Modes","description":"DynamoDB has two capacity modes, Provisioned and On-Demand. You can switch between these modes once every 24 hours.","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/cheatsheet":{"id":"databases/nosql-databases/aws-dynamodb/cheatsheet","title":"Cheatsheet","description":"The Basics of DynamoDB","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/core-components":{"id":"databases/nosql-databases/aws-dynamodb/core-components","title":"Core components","description":"In DynamoDB, tables, items, and attributes are the core components that you work with. A table is a collection of items, and each item is a collection of attributes. DynamoDB uses primary keys to uniquely identify each item in a table and secondary indexes to provide more querying flexibility. You can use DynamoDB Streams to capture data modification events in DynamoDB tables.","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/documentation":{"id":"databases/nosql-databases/aws-dynamodb/documentation","title":"Documentation","description":"https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/intro":{"id":"databases/nosql-databases/aws-dynamodb/intro","title":"AWS DynamoDB","description":"DynamoDB is a managed NoSQL database service provided by Amazon Web Services. As it is managed by Amazon, users do not have to worry about operations such as hardware provisioning, configuration, and scaling. The offering primarily targets key-value and document storage.","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/others":{"id":"databases/nosql-databases/aws-dynamodb/others","title":"Others","description":"PartiQL","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/readme":{"id":"databases/nosql-databases/aws-dynamodb/readme","title":"DynamoDB","description":"- AWS DynamoDB","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/table-classes":{"id":"databases/nosql-databases/aws-dynamodb/table-classes","title":"Table Classes","description":"DynamoDB offers two table classes designed to help you optimize for cost. The DynamoDB Standard table class is the default, and is recommended for the vast majority of workloads. The DynamoDB Standard-Infrequent Access (DynamoDB Standard-IA) table class is optimized for tables where storage is the dominant cost. For example, tables that store infrequently accessed data, such as application logs, old social media posts, e-commerce order history, and past gaming achievements, are good candidates for the Standard-IA table class.","sidebar":"tutorialSidebar"},"databases/nosql-databases/aws-dynamodb/working":{"id":"databases/nosql-databases/aws-dynamodb/working","title":"Working","description":"DynamoDB Item Sizes","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/commands":{"id":"databases/nosql-databases/cassandra/commands","title":"Commands","description":"cqlsh - Cassandra cli tools","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/consistency":{"id":"databases/nosql-databases/cassandra/consistency","title":"Consistency","description":"ANY","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/cql-cassandra-query-language":{"id":"databases/nosql-databases/cassandra/cql-cassandra-query-language","title":"CQL (Cassandra Query Language)","description":"CQL","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/data-model":{"id":"databases/nosql-databases/cassandra/data-model","title":"Data Model","description":"- Partition Key","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/design":{"id":"databases/nosql-databases/cassandra/design","title":"Design","description":"Partitioner","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/drivers-clients":{"id":"databases/nosql-databases/cassandra/drivers-clients","title":"Drivers / Clients","description":"","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/intro":{"id":"databases/nosql-databases/cassandra/intro","title":"Cassandra","description":"Apache Cassandra is a free and open-source, distributed, wide column store, NoSQLdatabase management system designed to handle large amounts of data across many commodity servers, providing high availability with no single point of failure. Cassandra offers robust support for clusters spanning multiple datacenters, with asynchronous masterless replication allowing low latency operations for all clients.","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/questions":{"id":"databases/nosql-databases/cassandra/questions","title":"Questions","description":"https://www.edureka.co/blog/interview-questions/cassandra-interview-questions","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/readme":{"id":"databases/nosql-databases/cassandra/readme","title":"Cassandra","description":"- Cassandra","sidebar":"tutorialSidebar"},"databases/nosql-databases/cassandra/working":{"id":"databases/nosql-databases/cassandra/working","title":"Working","description":"Writes","sidebar":"tutorialSidebar"},"databases/nosql-databases/clickhouse":{"id":"databases/nosql-databases/clickhouse","title":"ClickHouse","description":"ClickHouse is an open source column-oriented database management system capable of realtime generation of analytical data reports using SQL queries.","sidebar":"tutorialSidebar"},"databases/nosql-databases/column-family":{"id":"databases/nosql-databases/column-family","title":"Column family","description":"Column-family databases, also called non-relational column stores, wide-column databases, or simply column databases, are perhaps the NoSQL type that, on the surface, looks most similar to relational databases. Like relational databases, wide-column databases store data using concepts like rows and columns. However, in wide-column databases, the association between these elements is very different from how relational databases use them.","sidebar":"tutorialSidebar"},"databases/nosql-databases/comparisions":{"id":"databases/nosql-databases/comparisions","title":"Comparisions","description":"Druid FAQs / Comparisions","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/architecture":{"id":"databases/nosql-databases/druid/architecture","title":"Architecture","description":"Druid has a multi-process, distributed architecture that is designed to be cloud-friendly and easy to operate. Each Druid process type can be configured and scaled independently, giving you maximum flexibility over your cluster. This design also provides enhanced fault tolerance: an outage of one component will not immediately affect other components.","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/cheatsheet":{"id":"databases/nosql-databases/druid/cheatsheet","title":"Cheatsheet","description":"| Common | |","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/commands":{"id":"databases/nosql-databases/druid/commands","title":"Commands","description":"| Service | Port |","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/documentation":{"id":"databases/nosql-databases/druid/documentation","title":"Documentation","description":"Getting Started","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/faqs":{"id":"databases/nosql-databases/druid/faqs","title":"FAQs","description":"Frequently Asked Questions | Apache Druid","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/intro":{"id":"databases/nosql-databases/druid/intro","title":"Druid","description":"Apache Druid (incubating) is a real-time analytics database designed for fast slice-and-dice analytics (\\"OLAP\\" queries) on large data sets. Druid is most often used as a database for powering use cases where real-time ingest, fast query performance, and high uptime are important. As such, Druid is commonly used for powering GUIs of analytical applications, or as a backend for highly-concurrent APIs that need fast aggregations. Druid works best with event-oriented data.","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/others":{"id":"databases/nosql-databases/druid/others","title":"Others","description":"Plywood","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/paper":{"id":"databases/nosql-databases/druid/paper","title":"Paper","description":"1. Realtime Node","sidebar":"tutorialSidebar"},"databases/nosql-databases/druid/readme":{"id":"databases/nosql-databases/druid/readme","title":"Druid","description":"- Druid Intro","sidebar":"tutorialSidebar"},"databases/nosql-databases/etcd":{"id":"databases/nosql-databases/etcd","title":"etcd","description":"etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. It\'s open-source and available on GitHub. etcd gracefully handles leader elections during network partitions and will tolerate machine failure, including the leader.","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/commands":{"id":"databases/nosql-databases/mongodb/commands","title":"Commands","description":"Mongo DB Queries","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/data-types":{"id":"databases/nosql-databases/mongodb/data-types","title":"Data Types","description":"- String\u2212 This is the most commonly used datatype to store the data. String in MongoDB must be UTF-8 valid.","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/indexes":{"id":"databases/nosql-databases/mongodb/indexes","title":"Indexes","description":"Indexes support the efficient execution of queries in MongoDB. Without indexes, MongoDB must perform a collection scan, i.e. scan every document in a collection, to select those documents that match the query statement. If an appropriate index exists for a query, MongoDB can use the index to limit the number of documents it must inspect.","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/intro":{"id":"databases/nosql-databases/mongodb/intro","title":"MongoDB","description":"MongoDB / CouchBase","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/others":{"id":"databases/nosql-databases/mongodb/others","title":"Others","description":"Mongodb Oplog","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/overview":{"id":"databases/nosql-databases/mongodb/overview","title":"Overview","description":"Database","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/pymongo":{"id":"databases/nosql-databases/mongodb/pymongo","title":"pymongo","description":"https://github.com/mongodb/mongo-python-driver","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/questions":{"id":"databases/nosql-databases/mongodb/questions","title":"Questions","description":"- what is opslog in mongodb, location of opslog in mongodb","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/read-write-concern":{"id":"databases/nosql-databases/mongodb/read-write-concern","title":"Read / Write Concern","description":"Read Concern","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/readme":{"id":"databases/nosql-databases/mongodb/readme","title":"MongoDB","description":"- MongoDB Intro","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/sharding-replication":{"id":"databases/nosql-databases/mongodb/sharding-replication","title":"Sharding / Replication","description":"Sharding","sidebar":"tutorialSidebar"},"databases/nosql-databases/mongodb/vector-search":{"id":"databases/nosql-databases/mongodb/vector-search","title":"Vector Search","description":"Build intelligent applications powered by semantic search and generative AI over any type of data.","sidebar":"tutorialSidebar"},"databases/nosql-databases/others":{"id":"databases/nosql-databases/others","title":"Other NoSQL Databases","description":"Aerospike","sidebar":"tutorialSidebar"},"databases/nosql-databases/readme":{"id":"databases/nosql-databases/readme","title":"NoSQL Databases","description":"- Column Family","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/best-practices":{"id":"databases/nosql-databases/redis/best-practices","title":"Best Practices","description":"- Introduction","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/commands":{"id":"databases/nosql-databases/redis/commands","title":"Commands","description":"Installation","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/documentation":{"id":"databases/nosql-databases/redis/documentation","title":"Documentation","description":"Programming with Redis","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/intro":{"id":"databases/nosql-databases/redis/intro","title":"Redis","description":"Redis (Remote Dictionary Service)","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/others":{"id":"databases/nosql-databases/redis/others","title":"Others","description":"Redis Time Series","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/readme":{"id":"databases/nosql-databases/redis/readme","title":"Redis","description":"- Redis","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/redis-concepts":{"id":"databases/nosql-databases/redis/redis-concepts","title":"Redis Concepts","description":"Redis keys","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/redis-data-types":{"id":"databases/nosql-databases/redis/redis-data-types","title":"Redis Data Types","description":"Redis is not aplainkey-value store, it is actually adata structures server, supporting different kinds of values. What this means is that, while in traditional key-value stores you associate string keys to string values, in Redis the value is not limited to a simple string, but can also hold more complex data structures. The following is the list of all the data structures supported by Redis","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/redis-eviction-policies":{"id":"databases/nosql-databases/redis/redis-eviction-policies","title":"Redis Eviction Policies","description":"Cache Eviction Policies","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/redis-py":{"id":"databases/nosql-databases/redis/redis-py","title":"redis-py","description":"check pending list in redis","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/redis-queues":{"id":"databases/nosql-databases/redis/redis-queues","title":"Redis Queues","description":"Conceptually, a Stream in Redis is a list where you can append entries. Each entry has a unique ID and a value. The ID is auto-generated by default, and it includes a timestamp. The value is a hash. You can query ranges or use blocking commands to read entries as they come. Typical of Redis, you can combine different ingredients to get the result you need. As Niklaus Wirth once said, programs are algorithms plus data structures, and Redis already gives you a bit of both.","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/redis-streams-pubsub":{"id":"databases/nosql-databases/redis/redis-streams-pubsub","title":"Redis Streams / PUBSUB","description":"Messaging","sidebar":"tutorialSidebar"},"databases/nosql-databases/redis/scaling":{"id":"databases/nosql-databases/redis/scaling","title":"Scaling","description":"Replication/Clustering","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/architecture":{"id":"databases/nosql-databases/snowflake/architecture","title":"Architecture","description":"Data Platform as a Self-managed Service","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/commands":{"id":"databases/nosql-databases/snowflake/commands","title":"Commands","description":"SnowSQL (CLI Client)","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/compute":{"id":"databases/nosql-databases/snowflake/compute","title":"Compute","description":"Virtual Warehouse","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/documentation":{"id":"databases/nosql-databases/snowflake/documentation","title":"Documentation","description":"Overview","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/governance":{"id":"databases/nosql-databases/snowflake/governance","title":"Governance","description":"Data Security / governance","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/ingestion":{"id":"databases/nosql-databases/snowflake/ingestion","title":"Data Ingestion / Loading","description":"Snowflake Data Loading","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/intro":{"id":"databases/nosql-databases/snowflake/intro","title":"Intro","description":"Multi-cluster, shared storage architecture","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/optimizations":{"id":"databases/nosql-databases/snowflake/optimizations","title":"Optimizations","description":"Micro-partitions","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/readme":{"id":"databases/nosql-databases/snowflake/readme","title":"Snowflake","description":"- Intro","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/recovery":{"id":"databases/nosql-databases/snowflake/recovery","title":"Recovery","description":"Time Travel","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/stages":{"id":"databases/nosql-databases/snowflake/stages","title":"Stages","description":"A Snowflake stage is a location in cloud storage that you use to load and unload data from a table.","sidebar":"tutorialSidebar"},"databases/nosql-databases/snowflake/terms":{"id":"databases/nosql-databases/snowflake/terms","title":"Terms","description":"clone","sidebar":"tutorialSidebar"},"databases/nosql-databases/tidb":{"id":"databases/nosql-databases/tidb","title":"tidb","description":"TiDB (\\"Ti\\" stands for Titanium) is an open-source NewSQL database that supports Hybrid Transactional and Analytical Processing (HTAP) workloads. It is MySQL compatible and features horizontal scalability, strong consistency, and high availability.","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/administration":{"id":"databases/nosql-databases/time-series-db/influxdb/administration","title":"Administration","description":"1. Configuring InfluxDB","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/commands-influx-query-language-influxql":{"id":"databases/nosql-databases/time-series-db/influxdb/commands-influx-query-language-influxql","title":"Commands / Influx Query Language (InfluxQL)","description":"1. Sample data","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/concepts":{"id":"databases/nosql-databases/time-series-db/influxdb/concepts","title":"Concepts","description":"In-memory indexing and the Time-Structured Merge Tree (TSM)","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/influx":{"id":"databases/nosql-databases/time-series-db/influxdb/influx","title":"Influx","description":"The complete time series platform.","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/kapacitor":{"id":"databases/nosql-databases/time-series-db/influxdb/kapacitor","title":"Kapacitor","description":"Kapacitor is an open source data processing framework that makes it easy to create alerts, run ETL jobs and detect anomalies. Kapacitor is the final piece of the TICK stack","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/others":{"id":"databases/nosql-databases/time-series-db/influxdb/others","title":"Others","description":"Supported Protocols","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/readme":{"id":"databases/nosql-databases/time-series-db/influxdb/readme","title":"InfluxDB","description":"Tag sets are indexed, field sets are not. InfluxDB\'s speed is based on the fact that tag sets are stored in-memory, whereas the field sets are stored on-disk.","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/tools":{"id":"databases/nosql-databases/time-series-db/influxdb/tools","title":"Tools","description":"1. InfluxDB command line interface (CLI/shell)","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/upgrades":{"id":"databases/nosql-databases/time-series-db/influxdb/upgrades","title":"Upgrades","description":"InfluxDB 3.0 keeps raising the bar","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/influxdb/write-protocols":{"id":"databases/nosql-databases/time-series-db/influxdb/write-protocols","title":"Write Protocols","description":"1. Line Protocol reference","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/readme":{"id":"databases/nosql-databases/time-series-db/readme","title":"Time Series","description":"- Time Series Databases","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/time-series-databases":{"id":"databases/nosql-databases/time-series-db/time-series-databases","title":"Time Series Databases","description":"- Optimized for time-stamped or time series data","sidebar":"tutorialSidebar"},"databases/nosql-databases/time-series-db/timescaledb":{"id":"databases/nosql-databases/time-series-db/timescaledb","title":"TimeScaleDB","description":"TimescaleDB is an open-source database designed to make SQL scalable for time-series data. It is engineered up from PostgreSQL, providing automatic partitioning across time and space (partitioning key), as well as full SQL support.","sidebar":"tutorialSidebar"},"databases/nosql-databases/yugabytedb":{"id":"databases/nosql-databases/yugabytedb","title":"YugabyteDB","description":"YugabyteDB is a high-performance, cloud-native distributed SQL database that aims to support all PostgreSQL features. It is best fit for cloud-native OLTP (i.e. real-time, business critical) applications that need absolute data correctness and require at least one of the following: scalability, high tolerance to failures, globally-distributed deployments.","sidebar":"tutorialSidebar"},"databases/others/course-advanced-database-systems":{"id":"databases/others/course-advanced-database-systems","title":"Course - Advanced Database Systems","description":"1. Course Introduction and History of Databases","sidebar":"tutorialSidebar"},"databases/others/course-aws-certified-database-specialty":{"id":"databases/others/course-aws-certified-database-specialty","title":"Course - AWS Certified Database - Specialty","description":"PTO - Performance Tuning and Optimization","sidebar":"tutorialSidebar"},"databases/others/database-activity-monitoring-dam":{"id":"databases/others/database-activity-monitoring-dam","title":"Database Activity/Active Monitoring (DAM)","description":"Database activity monitoring (DAM)\xa0refers to a suite of tools that can be used to support the ability to identify and report on fraudulent, illegal or other undesirable behavior, with minimal impact on user operations and productivity. The tools, which have evolved from basic analysis of user activity in and around relational database management systems (RDBMSs) to encompass a more comprehensive set of capabilities, such as discovery and classification, vulnerability management, application-level analysis, intrusion prevention, support for unstructured data security, identity and access management integration, and risk management support.","sidebar":"tutorialSidebar"},"databases/others/database-migration-tools":{"id":"databases/others/database-migration-tools","title":"Database Migration Tools","description":"Liquibase","sidebar":"tutorialSidebar"},"databases/others/databases-others":{"id":"databases/others/databases-others","title":"Databases - Others","description":"Flat file database","sidebar":"tutorialSidebar"},"databases/others/readme":{"id":"databases/others/readme","title":"Others","description":"- Database Activity Monitoring (DAM)","sidebar":"tutorialSidebar"},"databases/others/technologies-tools":{"id":"databases/others/technologies-tools","title":"Technologies / Tools","description":"MySQL Workbench / MySQLWorkbench","sidebar":"tutorialSidebar"},"databases/readme":{"id":"databases/readme","title":"Databases","description":"- Concepts","sidebar":"tutorialSidebar"},"databases/sql-databases/amazon-aurora-vs-rds":{"id":"databases/sql-databases/amazon-aurora-vs-rds","title":"Amazon Aurora vs RDS","description":"Aurora vs RDS: How to Choose the Right AWS Database Solution","sidebar":"tutorialSidebar"},"databases/sql-databases/amazon-rds":{"id":"databases/sql-databases/amazon-rds","title":"Amazon RDS","description":"Managed Relational Database Service for MySQL, PostgreSQL, Oracle, SQL Server, and MariaDB","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/aurora-documentation":{"id":"databases/sql-databases/aws-aurora/aurora-documentation","title":"Aurora Documentation","description":"https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/aurora-global-databases":{"id":"databases/sql-databases/aws-aurora/aurora-global-databases","title":"Aurora Global Databases","description":"Amazon Aurora global databases span multiple AWS Regions, enabling low latency global reads and providing fast recovery from the rare outage that might affect an entire AWS Region. An Aurora global database has a primary DB cluster in one Region, and up to five secondary DB clusters in different Regions.","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/aurora-serverless":{"id":"databases/sql-databases/aws-aurora/aurora-serverless","title":"Amazon Aurora Serverless","description":"Amazon Aurora Serverless is an on-demand, autoscaling configuration for Amazon Aurora. AnAurora Serverless DB cluster is a DB cluster that automatically starts up, shuts down, and scales up or down its compute capacity based on your application\'s needs. Aurora Serverless provides a relatively simple, cost-effective option for infrequent, intermittent, or unpredictable workloads. It can provide this because it automatically starts up, scales compute capacity to match your application\'s usage, and shuts down when it\'s not in use.","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/backup":{"id":"databases/sql-databases/aws-aurora/backup","title":"Backup","description":"Understanding Amazon Aurora backup storage usage - Amazon Aurora","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/configurations-optimizations-best-practices":{"id":"databases/sql-databases/aws-aurora/configurations-optimizations-best-practices","title":"Configurations / Optimizations / Best Practices","description":"RDS - Best practices for configuring parameters for Amazon RDS for MySQL, part 1: Parameters related to performance | AWS Database Blog","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/costs":{"id":"databases/sql-databases/aws-aurora/costs","title":"Costs","description":"1. \u2060\u2060Aurora Serverless V1","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/high-availability-ha":{"id":"databases/sql-databases/aws-aurora/high-availability-ha","title":"High Availability (HA)","description":"RDS HA","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/high-availability-ha-others":{"id":"databases/sql-databases/aws-aurora/high-availability-ha-others","title":"High Availability (HA) Others","description":"MySQL Enterprise High Availability","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/intro":{"id":"databases/sql-databases/aws-aurora/intro","title":"AWS Aurora","description":"For OLTP","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/monitoring":{"id":"databases/sql-databases/aws-aurora/monitoring","title":"Monitoring","description":"Monitoring and Event Notifications","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/others":{"id":"databases/sql-databases/aws-aurora/others","title":"Others","description":"Connecting","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/readme":{"id":"databases/sql-databases/aws-aurora/readme","title":"AWS Aurora","description":"- AWS Aurora","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-aurora/storage":{"id":"databases/sql-databases/aws-aurora/storage","title":"Storage","description":"AWS re [REPEAT 1] Amazon Aurora storage demystified: How it all works (DAT309-R1)","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/architecture":{"id":"databases/sql-databases/aws-redshift/architecture","title":"Architecture","description":"image","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/deep-dive-best-practices":{"id":"databases/sql-databases/aws-redshift/deep-dive-best-practices","title":"Deep dive / Best practices","description":"Insert performance","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/documentation":{"id":"databases/sql-databases/aws-redshift/documentation","title":"Documentation","description":"Designing Tables > Choosing a column compression type > Compression Encoding","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/etl-redshift":{"id":"databases/sql-databases/aws-redshift/etl-redshift","title":"ETL in Redshift","description":"AWS Data pipeline","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/intro":{"id":"databases/sql-databases/aws-redshift/intro","title":"AWS Redshift","description":"- OLAP","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/others":{"id":"databases/sql-databases/aws-redshift/others","title":"Others","description":"Column level access controls","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/pricing-sizing":{"id":"databases/sql-databases/aws-redshift/pricing-sizing","title":"Pricing / Sizing","description":"Node Types","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/readme":{"id":"databases/sql-databases/aws-redshift/readme","title":"Redshift","description":"- Amazon Redshift","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/redshift-sql-queries-commands":{"id":"databases/sql-databases/aws-redshift/redshift-sql-queries-commands","title":"Redshift SQL Queries / Commands","description":"Simplify Online Analytical Processing (OLAP) queries in Amazon Redshift using new SQL constructs such as ROLLUP, CUBE, and GROUPING SETS | AWS Big Data Blog","sidebar":"tutorialSidebar"},"databases/sql-databases/aws-redshift/wlm-qmr":{"id":"databases/sql-databases/aws-redshift/wlm-qmr","title":"Workload management (WLM) and query monitoring rules (QMR)","description":"Workload management (WLM)","sidebar":"tutorialSidebar"},"databases/sql-databases/memsql/intro":{"id":"databases/sql-databases/memsql/intro","title":"Intro","description":"MemSQL is a distributed in-memory relational database designed for both transactional and analytical workloads.","sidebar":"tutorialSidebar"},"databases/sql-databases/memsql/readme":{"id":"databases/sql-databases/memsql/readme","title":"MemSQL","description":"MemSQLis a distributed, in-memory, SQLdatabase management system.","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/administration-configuration":{"id":"databases/sql-databases/mysql/administration-configuration","title":"Administration / Configuration","description":"Commands","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/backup-comparisons":{"id":"databases/sql-databases/mysql/backup-comparisons","title":"Backup Comparisons","description":"Percona XtraBackup","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/backup-policy":{"id":"databases/sql-databases/mysql/backup-policy","title":"Backup Policy","description":"Full Backups","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/backup-types":{"id":"databases/sql-databases/mysql/backup-types","title":"Backup Types","description":"Physical (Raw) Versus Logical Backups","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/connection-handling":{"id":"databases/sql-databases/mysql/connection-handling","title":"Connection Handling","description":"The MySQL Server (mysqld) executes as a single OS process, with multiple threads executing concurrent activities. MySQL does not have its own thread implementation, but relies on the thread implementation of the underlying OS. When a user connects to the database a user thread is created inside mysqld and this user thread executes user queries, sending results back to the user, until the user disconnects.","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/documentation":{"id":"databases/sql-databases/mysql/documentation","title":"Documentation","description":"1.3 Overview of the MySQL Database Management System","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/gtid-replication":{"id":"databases/sql-databases/mysql/gtid-replication","title":"GTID Replication","description":"When using GTIDs, each transaction can be identified and tracked as it is committed on the originating server and applied by any replicas; this means that it is not necessary when using GTIDs to refer to log files or positions within those files when starting a new replica or failing over to a new source, which greatly simplifies these tasks. Because GTID-based replication is completely transaction-based, it is simple to determine whether sources and replicas are consistent; as long as all transactions committed on a source are also committed on a replica, consistency between the two is guaranteed. You can use either statement-based or row-based replication with GTIDs (see\xa0Section\xa016.2.1, \u201cReplication Formats\u201d); however, for best results, we recommend that you use the row-based format.","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/intro":{"id":"databases/sql-databases/mysql/intro","title":"MySQL","description":"Many tables and relationship between tables","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/mydumper":{"id":"databases/sql-databases/mysql/mydumper","title":"MyDumper","description":"MyDumper is a MySQL Logical Backup Tool. It has 2 tools:","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/mysql-data-types":{"id":"databases/sql-databases/mysql/mysql-data-types","title":"MySQL Data Types","description":"11.1 Numeric Data Types","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/mysql-heatwave":{"id":"databases/sql-databases/mysql/mysql-heatwave","title":"MySQL Heatwave","description":"One Database for OLTP, OLAP, ML & Lakehouse","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/mysql-triggers":{"id":"databases/sql-databases/mysql/mysql-triggers","title":"MySQL Triggers","description":"- 23.3 Using Triggers","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/mysqlbinlog":{"id":"databases/sql-databases/mysql/mysqlbinlog","title":"mysqlbinlog","description":"The server\'s binary log consists of files containing\xa0\u201cevents\u201d\xa0that describe modifications to database contents. The server writes these files in binary format. To display their contents in text format, use the\xa0mysqlbinlog\xa0utility. You can also use\xa0mysqlbinlog\xa0to display the contents of relay log files written by a replica server in a replication setup because relay logs have the same format as binary logs.","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/mysqldump":{"id":"databases/sql-databases/mysql/mysqldump","title":"MySQLDump","description":"Commands","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/optimizing-locking-operations":{"id":"databases/sql-databases/mysql/optimizing-locking-operations","title":"Optimizing Locking Operations","description":"- 8.11 Optimizing Locking Operations","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/others":{"id":"databases/sql-databases/mysql/others","title":"Others","description":"Facts","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/partitioning":{"id":"databases/sql-databases/mysql/partitioning","title":"Partitioning","description":"- 26 Partitioning","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/percona-toolkit":{"id":"databases/sql-databases/mysql/percona-toolkit","title":"Percona Toolkit","description":"- Verify MySQL replication integrity by checking source and replica data consistency","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/percona-xtrabackup":{"id":"databases/sql-databases/mysql/percona-xtrabackup","title":"Percona XtraBackup","description":"Features","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/readme":{"id":"databases/sql-databases/mysql/readme","title":"MySQL","description":"- MySQL","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/replication":{"id":"databases/sql-databases/mysql/replication","title":"Replication","description":"MySQL Replication Tutorial - YouTube","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/scaling-optimizations":{"id":"databases/sql-databases/mysql/scaling-optimizations","title":"Scaling / Optimizations","description":"What exactly needs to Scale?","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/server-sql-modes":{"id":"databases/sql-databases/mysql/server-sql-modes","title":"Server SQL Modes","description":"The MySQL server can operate in different SQL modes, and can apply these modes differently for different clients, depending on the value of the\xa0sqlmode\xa0system variable. DBAs can set the global SQL mode to match site server operating requirements, and each application can set its session SQL mode to its own requirements.","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/sql-mysql-tools":{"id":"databases/sql-databases/mysql/sql-mysql-tools","title":"SQL / MySQL Tools","description":"Monitoring","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/thread-states":{"id":"databases/sql-databases/mysql/thread-states","title":"Thread States","description":"The following list describes thread\xa0State\xa0values that are associated with general query processing and not more specialized activities such as replication. Many of these are useful only for finding bugs in the server.","sidebar":"tutorialSidebar"},"databases/sql-databases/mysql/transaction-commit-rollback":{"id":"databases/sql-databases/mysql/transaction-commit-rollback","title":"Trasaction / Commit / Rollback","description":"- 13.3 Transactional and Locking Statements","sidebar":"tutorialSidebar"},"databases/sql-databases/normalization":{"id":"databases/sql-databases/normalization","title":"Normalization","description":"- Normalization is the process of organizing the data in the database.","sidebar":"tutorialSidebar"},"databases/sql-databases/partitioning-sharding":{"id":"databases/sql-databases/partitioning-sharding","title":"Partitioning / Sharding","description":"Partitioning / Sharding Data","sidebar":"tutorialSidebar"},"databases/sql-databases/postgres/architecture":{"id":"databases/sql-databases/postgres/architecture","title":"Architecture","description":"PostgreSQL uses processes in their internal architecture. It has been a topic of debate whether going to threads are better or not, but meanwhile I think it is a good idea to understand all these processes and what they do. Let us go through them","sidebar":"tutorialSidebar"},"databases/sql-databases/postgres/documentation":{"id":"databases/sql-databases/postgres/documentation","title":"Documentation","description":"Preface","sidebar":"tutorialSidebar"},"databases/sql-databases/postgres/indexes":{"id":"databases/sql-databases/postgres/indexes","title":"Indexes in Postgres","description":"PostgreSQL 16: Chapter\xa011.\xa0Indexes","sidebar":"tutorialSidebar"},"databases/sql-databases/postgres/others":{"id":"databases/sql-databases/postgres/others","title":"Others","description":"Postgres Extensions","sidebar":"tutorialSidebar"},"databases/sql-databases/postgres/parameters-configuration-optimization":{"id":"databases/sql-databases/postgres/parameters-configuration-optimization","title":"Parameters / Configurations / Optimizations","description":"Variables","sidebar":"tutorialSidebar"},"databases/sql-databases/postgres/readme":{"id":"databases/sql-databases/postgres/readme","title":"Postgres","description":"- Postgres Documentation","sidebar":"tutorialSidebar"},"databases/sql-databases/postgres/replication":{"id":"databases/sql-databases/postgres/replication","title":"Replication","description":"Types","sidebar":"tutorialSidebar"},"databases/sql-databases/postgres/table-partitioning":{"id":"databases/sql-databases/postgres/table-partitioning","title":"Table Partitioning","description":"PostgreSQL 15: 5.11. Table Partitioning","sidebar":"tutorialSidebar"},"databases/sql-databases/rdbms":{"id":"databases/sql-databases/rdbms","title":"RDBMS","description":"A relational databaseis a database that organizes information into one or more tables. Here, the relational database contains one table.","sidebar":"tutorialSidebar"},"databases/sql-databases/readme":{"id":"databases/sql-databases/readme","title":"SQL Databases","description":"- RDBMS","sidebar":"tutorialSidebar"},"decentralized-applications/blockchain":{"id":"decentralized-applications/blockchain","title":"Blockchain","description":"Inventor - Satoshi Nakamoto","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/bip39":{"id":"decentralized-applications/coins-tokens-chains/bip39","title":"BIP39","description":"BIP39 Wallet","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/bitcoin":{"id":"decentralized-applications/coins-tokens-chains/bitcoin","title":"Bitcoin","description":"- Bitcoin (2008): first combination of proof-of-work / distributed ledger / hashchain","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/bnb":{"id":"decentralized-applications/coins-tokens-chains/bnb","title":"BNB","description":"Launched in July 2017, Binance is the biggest cryptocurrency exchange globally based on daily trading volume. Binance aims to bring cryptocurrency exchanges to the forefront of financial activity globally. The idea behind Binance\u2019s name is to show this new paradigm in global finance - Binary Finance, or Binance.","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/cardano":{"id":"decentralized-applications/coins-tokens-chains/cardano","title":"Cardano","description":"Cardano is a proof-of-stake blockchain platform: the first to be founded on peer-reviewed research and developed through evidence-based methods. It combines pioneering technologies to provide unparalleled security and sustainability to decentralized applications, systems, and societies.","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/celestia":{"id":"decentralized-applications/coins-tokens-chains/celestia","title":"Celestia","description":"A scalable modular blockchain network built for data availability and consensus","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/coin-token-intro":{"id":"decentralized-applications/coins-tokens-chains/coin-token-intro","title":"Tokens","description":"Tokens\u2019 key benefits","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/dai":{"id":"decentralized-applications/coins-tokens-chains/dai","title":"DAI","description":"Governed by the MakerDAO and Maker Protocol","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/dtokens":{"id":"decentralized-applications/coins-tokens-chains/dtokens","title":"dtokens","description":"What Are Decentralized Assets And How do They Work?","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/dual-token-economy":{"id":"decentralized-applications/coins-tokens-chains/dual-token-economy","title":"Dual-Token Economy/Model","description":"Two-Token Economy","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/litecoin":{"id":"decentralized-applications/coins-tokens-chains/litecoin","title":"Litecoin","description":"Litecoin is one of the first cryptocurrencies created after Bitcoin and still strives to be the silver to Bitcoin\'s gold.","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/near-protocol":{"id":"decentralized-applications/coins-tokens-chains/near-protocol","title":"Near Protocol","description":"What Is NEAR Protocol (NEAR)?","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/nft-non-fungible-tokens":{"id":"decentralized-applications/coins-tokens-chains/nft-non-fungible-tokens","title":"NFT (Non Fungible Tokens)","description":"Fungible","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/ordinals":{"id":"decentralized-applications/coins-tokens-chains/ordinals","title":"Ordinals","description":"Ordinals are NFTs that you can mint on the Bitcoin blockchain.","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/readme":{"id":"decentralized-applications/coins-tokens-chains/readme","title":"Coins / Tokens / Chains","description":"- Coin Token Intro","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/stable-coins":{"id":"decentralized-applications/coins-tokens-chains/stable-coins","title":"Stable Coins","description":"USDT vs. USDC vs. BUSD: What are the similarities and differences?","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/thorchain":{"id":"decentralized-applications/coins-tokens-chains/thorchain","title":"ThorChain","description":"THORChain is a settlement layer that facilitates swaps between Bitcoin, Ethereum, BNB Chain, Avalanche, Cosmos Hub, Dogecoin, Bitcoin Cash, Litecoin","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/uniswap":{"id":"decentralized-applications/coins-tokens-chains/uniswap","title":"Uniswap","description":"A Short Story of UNISWAP and UNI Token. DEFI Explained - YouTube","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/usdc":{"id":"decentralized-applications/coins-tokens-chains/usdc","title":"USDC","description":"What is USDC?","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/usdt":{"id":"decentralized-applications/coins-tokens-chains/usdt","title":"USDT","description":"What is USDT?","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/vechain":{"id":"decentralized-applications/coins-tokens-chains/vechain","title":"Vechain","description":"VECHAINTHOR","sidebar":"tutorialSidebar"},"decentralized-applications/coins-tokens-chains/wallets":{"id":"decentralized-applications/coins-tokens-chains/wallets","title":"Wallets","description":"not your keys, not your crypto","sidebar":"tutorialSidebar"},"decentralized-applications/consensus-protocols":{"id":"decentralized-applications/consensus-protocols","title":"Consensus Protocols","description":"Proof of Work (PoW)","sidebar":"tutorialSidebar"},"decentralized-applications/crypto-exchanges":{"id":"decentralized-applications/crypto-exchanges","title":"Crypto Exchanges","description":"Decentralized Exchange (DEX)","sidebar":"tutorialSidebar"},"decentralized-applications/crypto-future":{"id":"decentralized-applications/crypto-future","title":"Crypto Future","description":"Pros","sidebar":"tutorialSidebar"},"decentralized-applications/crypto-investing":{"id":"decentralized-applications/crypto-investing","title":"Crypto Investing","description":"- Don\'t buy it, mine it","sidebar":"tutorialSidebar"},"decentralized-applications/crypto-news":{"id":"decentralized-applications/crypto-news","title":"Crypto News","description":"- crypto winter","sidebar":"tutorialSidebar"},"decentralized-applications/defi":{"id":"decentralized-applications/defi","title":"DeFi","description":"You can hide and cross borders with, that gives you access to your own private offworld bank account","sidebar":"tutorialSidebar"},"decentralized-applications/defi-apps":{"id":"decentralized-applications/defi-apps","title":"DeFi Apps","description":"Liquidity Mining","sidebar":"tutorialSidebar"},"decentralized-applications/development/infura":{"id":"decentralized-applications/development/infura","title":"Infura","description":"Get the current block number","sidebar":"tutorialSidebar"},"decentralized-applications/development/readme":{"id":"decentralized-applications/development/readme","title":"Development Tools","description":"- Infura","sidebar":"tutorialSidebar"},"decentralized-applications/development/sample-code":{"id":"decentralized-applications/development/sample-code","title":"Sample Code","description":"Use Python | INFURA","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/01-intro-to-ethereum":{"id":"decentralized-applications/ethereum/01-intro-to-ethereum","title":"Intro to Ethereum","description":"What is a Blockchain?","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/02-intro-to-ether":{"id":"decentralized-applications/ethereum/02-intro-to-ether","title":"Intro to Ether","description":"What is a cryptocurrency?","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/03-intro-to-dapps":{"id":"decentralized-applications/ethereum/03-intro-to-dapps","title":"Intro to Dapps","description":"A decentralized application (dapp) is an application built on a decentralized network that combines a smart contract and a frontend user interface. On Ethereum, smart contracts are accessible and transparent - like open APIs - so your dapp can even include a smart contract that someone else has written.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/05-accounts":{"id":"decentralized-applications/ethereum/05-accounts","title":"Ethereum Accounts","description":"Where ETH is stored. Users can initialize accounts, deposit ETH into the accounts, and transfer ETH from their accounts to other users. Accounts and account balances are stored in a big table in the EVM; they are a part of the overall EVM state.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/06-transactions":{"id":"decentralized-applications/ethereum/06-transactions","title":"Transactions","description":"Transactions are cryptographically signed instructions from accounts. An account will initiate a transaction to update the state of the Ethereum network. The simplest transaction is transferring ETH from one account to another.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/07-blocks":{"id":"decentralized-applications/ethereum/07-blocks","title":"Blocks","description":"Blocks are batches of transactions with a hash of the previous block in the chain. This links blocks together (in a chain) because hashes are cryptographically derived from the block data. This prevents fraud, because one change in any block in history would invalidate all the following blocks as all subsequent hashes would change and everyone running the blockchain would notice.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/08-evm":{"id":"decentralized-applications/ethereum/08-evm","title":"EVM - Ethereum Virtual Machine","description":"The EVM\u2019s physical instantiation can\u2019t be described in the same way that one might point to a cloud or an ocean wave, but it does exist as one single entity maintained by thousands of connected computers running an Ethereum client.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/09-gas":{"id":"decentralized-applications/ethereum/09-gas","title":"Gas","description":"Gas is essential to the Ethereum network. It is the fuel that allows it to operate, in the same way that a car needs gasoline to run.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/10-nodes-and-clients":{"id":"decentralized-applications/ethereum/10-nodes-and-clients","title":"Nodes and Clients","description":"A \\"node\\" is any instance of Ethereum client software that is connected to other computers also running Ethereum software, forming a network. A client is an implementation of Ethereum that verifies data against the protocol rules and keeps the network secure.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/30-bridges":{"id":"decentralized-applications/ethereum/30-bridges","title":"Bridges","description":"With the proliferation of L1 blockchains and L2 scaling solutions, alongside an ever-growing number of decentralized applications going cross-chain, the need for communication and asset movement across chains has become an essential part of network infrastructure. Different types of bridges exist to help make this possible.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/40-proof-of-stake":{"id":"decentralized-applications/ethereum/40-proof-of-stake","title":"Proof of Stake","description":"Proof-of-stake (PoS) | ethereum.org","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/41-rewards-and-penalties":{"id":"decentralized-applications/ethereum/41-rewards-and-penalties","title":"Rewards and Penalties","description":"There are two primary roles for a validator: 1) checking new blocks and \u201cattesting\u201d to them if they are valid, 2) proposing new blocks when selected at random from the total validator pool. If the validator fails to do either of these tasks when asked they miss out on an ether payout. Validators are also sometimes tasked with signature aggregation and participating in sync committees.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/42-block-proposals":{"id":"decentralized-applications/ethereum/42-block-proposals","title":"Block Proposals","description":"WHO PRODUCES BLOCKS?","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/arbitrum":{"id":"decentralized-applications/ethereum/arbitrum","title":"Arbitrum","description":"Arbitrum is currently the fourth-largest blockchain in terms of the total value locked (TVL) into its decentralized finance (DeFi) ecosystem","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/dao":{"id":"decentralized-applications/ethereum/dao","title":"DAO","description":"- DAO - Decentralized Autonomous Organization","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/erc-4337":{"id":"decentralized-applications/ethereum/erc-4337","title":"ERC-4337","description":"It\u2019s a new Ethereum upgrade that went live Feb-March 2023.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/ethereum-intro":{"id":"decentralized-applications/ethereum/ethereum-intro","title":"Ethereum","description":"Ethereum is a decentralized platform that runs smart contracts: applications that run exactly as programmed without any possibility of downtime, censorship, fraud or third-party interference.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/ethereum-staking":{"id":"decentralized-applications/ethereum/ethereum-staking","title":"Ethereum Staking","description":"Why did Ethereum switch to PoS?","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/etherjs":{"id":"decentralized-applications/ethereum/etherjs","title":"Etherjs","description":"etherjs-cheatsheet","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/layer-2-protocols":{"id":"decentralized-applications/ethereum/layer-2-protocols","title":"Layer 2 Protocols","description":"In the context of blockchain, a \\"layer 2\\" refers to a secondary protocol or technology built on top of a primary blockchain, which provides additional functionality or scalability solutions while relying on the security of the underlying blockchain.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/others":{"id":"decentralized-applications/ethereum/others","title":"Others","description":"The Hitchhiker\'s Guide to Ethereum - Delphi Digital","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/polygon":{"id":"decentralized-applications/ethereum/polygon","title":"Polygon","description":"Polygon, previously known as Matic Network, is a layer-2 scaling solution for the Ethereum blockchain. It aims to improve the scalability and performance of the Ethereum network by providing faster and cheaper transactions through its own infrastructure.","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/readme":{"id":"decentralized-applications/ethereum/readme","title":"Ethereum","description":"- Ethereum Intro","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/solidity":{"id":"decentralized-applications/ethereum/solidity","title":"Solidity","description":"image","sidebar":"tutorialSidebar"},"decentralized-applications/ethereum/upgrades":{"id":"decentralized-applications/ethereum/upgrades","title":"Upgrades","description":"Ethereum vision | ethereum.org","sidebar":"tutorialSidebar"},"decentralized-applications/intro":{"id":"decentralized-applications/intro","title":"Intro","description":"1. Centralized","sidebar":"tutorialSidebar"},"decentralized-applications/key-concepts":{"id":"decentralized-applications/key-concepts","title":"Key Concepts","description":"Web3 Architecture","sidebar":"tutorialSidebar"},"decentralized-applications/liquidity-mining":{"id":"decentralized-applications/liquidity-mining","title":"Liquidity Mining","description":"Liquidity mining is a process in decentralized finance (DeFi) that incentivizes users to provide liquidity to a liquidity pool by rewarding them with cryptocurrency tokens. Liquidity pools are used to facilitate decentralized trading and allow users to trade cryptocurrencies without relying on centralized exchanges.","sidebar":"tutorialSidebar"},"decentralized-applications/on-chain-analytics":{"id":"decentralized-applications/on-chain-analytics","title":"On-Chain Analytics","description":"On-chain metrics turn blockchain-based transaction data into actionable crypto market insights.","sidebar":"tutorialSidebar"},"decentralized-applications/others":{"id":"decentralized-applications/others","title":"Others","description":"IPFS (InterPlanatery File System)","sidebar":"tutorialSidebar"},"decentralized-applications/readme":{"id":"decentralized-applications/readme","title":"Decentralized Applications","description":"- Intro","sidebar":"tutorialSidebar"},"decentralized-applications/references-learning":{"id":"decentralized-applications/references-learning","title":"References / Learning","description":"Courses / Learning","sidebar":"tutorialSidebar"},"decentralized-applications/tokenomics":{"id":"decentralized-applications/tokenomics","title":"Tokenomics","description":"The thing that I think is more interesting, personally, is that there are different fundamentals in crypto. The underlying elements that make a cryptocurrency valuable, from a token\u2019s supply to how it\u2019s issued to if it is designed to be inflationary or deflationary to its utility all come together to create what\u2019s known as its tokenomics, a portmanteau of token + economics.","sidebar":"tutorialSidebar"},"decentralized-applications/tools":{"id":"decentralized-applications/tools","title":"Tools","description":"The future of decentralized finance lies in the hands of those who dare to challenge the status quo.","sidebar":"tutorialSidebar"},"decentralized-applications/trilemmas":{"id":"decentralized-applications/trilemmas","title":"Trilemma","description":"The Scalability Trilemma / Blockchain Trilemma","sidebar":"tutorialSidebar"},"devops/ansible/commands":{"id":"devops/ansible/commands","title":"Commands","description":"Final Commands","sidebar":"tutorialSidebar"},"devops/ansible/readme":{"id":"devops/ansible/readme","title":"Ansible","description":"Features","sidebar":"tutorialSidebar"},"devops/devops-intro/application-management":{"id":"devops/devops-intro/application-management","title":"Application Management","description":"Application management\xa0provides a wide variety of application services, processes and methodologies for maintaining, enhancing and managing custom applications, packaged software applications or network-delivered applications.","sidebar":"tutorialSidebar"},"devops/devops-intro/chaos-engineering":{"id":"devops/devops-intro/chaos-engineering","title":"Chaos Engineering","description":"Chaos Engineering is the discipline of experimenting on a system in order to build confidence in the system\'s capability to withstand turbulent conditions in production.","sidebar":"tutorialSidebar"},"devops/devops-intro/concepts":{"id":"devops/devops-intro/concepts","title":"Concepts","description":"Container Orchestration Systems - to provide a higher level of deployment infrastructure abstraction, and evolution of continuous delivery systems such as GoCD to build, test and deploy microservices as containers","sidebar":"tutorialSidebar"},"devops/devops-intro/deployment-strategies":{"id":"devops/devops-intro/deployment-strategies","title":"Deployment Strategies","description":"image","sidebar":"tutorialSidebar"},"devops/devops-intro/design":{"id":"devops/devops-intro/design","title":"Design","description":"How do you design a self-healing distributed service?","sidebar":"tutorialSidebar"},"devops/devops-intro/disaster-recovery":{"id":"devops/devops-intro/disaster-recovery","title":"Disaster Recovery","description":"RTO - Recovery Time Objective","sidebar":"tutorialSidebar"},"devops/devops-intro/distributed-tracing":{"id":"devops/devops-intro/distributed-tracing","title":"Distributed Tracing","description":"Distributed tracing, also called distributed request tracing, is a method used to profile and monitor applications, especially those built using a microservices architecture. Distributed tracing helps pinpoint where failures occur and what causes poor performance.","sidebar":"tutorialSidebar"},"devops/devops-intro/dora-metrics":{"id":"devops/devops-intro/dora-metrics","title":"DORA Metrics","description":"The\xa0DevOps Research and Assessment (DORA)\xa0team has identified four key metrics that indicate the performance of a software development team:","sidebar":"tutorialSidebar"},"devops/devops-intro/feature-toggles-flags":{"id":"devops/devops-intro/feature-toggles-flags","title":"Feature Toggles / Flags","description":"A feature toggle (also feature switch, feature flag, feature flipper, conditional feature, etc.) is a technique in software development that attempts to provide an alternative to maintaining multiple source-code branches (known as feature branches), such that a feature can be tested even before it is completed and ready for release. Feature toggle is used to hide, enable or disable the feature during run time. For example, during the development process, a developer can enable the feature for testing and disable it for other users.","sidebar":"tutorialSidebar"},"devops/devops-intro/finops":{"id":"devops/devops-intro/finops","title":"FinOps","description":"FinOps (or cloud FinOps) is an evolving cloud financial management discipline and cultural practice that aims to maximize business value in hybrid and multicloud environments.","sidebar":"tutorialSidebar"},"devops/devops-intro/gitops":{"id":"devops/devops-intro/gitops","title":"GitOps","description":"GitOps is a way of implementing Continuous Deployment for cloud native applications. It focuses on a developer-centric experience when operating infrastructure, by using tools developers are already familiar with, including Git and Continuous Deployment tools.","sidebar":"tutorialSidebar"},"devops/devops-intro/high-availability":{"id":"devops/devops-intro/high-availability","title":"High Availability","description":"The concept of high availability originated in the 1960s and 1970s with early military and financial computing systems that needed to be reliable and fault tolerant.","sidebar":"tutorialSidebar"},"devops/devops-intro/infra-as-code-iac":{"id":"devops/devops-intro/infra-as-code-iac","title":"Infra as Code IaC","description":"Infrastructure as Code (IaC) is a paradigm that manages and tracks infrastructure configuration in files rather than manually or graphical user interfaces. This allows for more scalable infrastructure configuration and more importantly allows for transparent tracking of changes through usually versioning system","sidebar":"tutorialSidebar"},"devops/devops-intro/intro":{"id":"devops/devops-intro/intro","title":"Intro","description":"DRI - Designated Response Individuals","sidebar":"tutorialSidebar"},"devops/devops-intro/load-balancer":{"id":"devops/devops-intro/load-balancer","title":"Load Balancer","description":"In computing, load balancing improves the distribution of workloads across multiple computing resources, such as computers, a computer cluster, network links, central processing units, or disk drives. Load balancing aims to optimize resource use, maximize throughput, minimize response time, and avoid overload of any single resource. Using multiple components with load balancing instead of a single component may increase reliability and availability through redundancy. Load balancing usually involves dedicated software or hardware, such as a multilayer switch or a Domain Name System server process.","sidebar":"tutorialSidebar"},"devops/devops-intro/load-balancer-features":{"id":"devops/devops-intro/load-balancer-features","title":"Load Balancer Features","description":"Service discovery","sidebar":"tutorialSidebar"},"devops/devops-intro/load-balancer-tools":{"id":"devops/devops-intro/load-balancer-tools","title":"Tools","description":"Cheatsheet","sidebar":"tutorialSidebar"},"devops/devops-intro/load-balancing-algorithms":{"id":"devops/devops-intro/load-balancing-algorithms","title":"Load Balancing Algorithms","description":"Round Robin","sidebar":"tutorialSidebar"},"devops/devops-intro/others":{"id":"devops/devops-intro/others","title":"Others","description":"Resource Estimation/Capacity Planning","sidebar":"tutorialSidebar"},"devops/devops-intro/platform-engineering":{"id":"devops/devops-intro/platform-engineering","title":"Platform Engineering","description":"Platform engineering is the discipline of designing and building toolchains and workflows that enable self-service capabilities for software engineering organizations in the cloud-native era. Platform engineers provide an integrated product most often referred to as an \u201cInternal Developer Platform\u201d covering the operational necessities of the entire lifecycle of an application. An\xa0Internal Developer Platform (IDP)\xa0encompasses a variety of technologies and tools, integrated in a manner that reduces cognitive load on developers while retaining essential context and underlying technologies. It helps operations structure their setup and enable developer self-service. Platform engineering done right means providing golden paths and paved roads that match the preferred abstraction level of the individual developer, who interacts with the IDP.","sidebar":"tutorialSidebar"},"devops/devops-intro/proxy":{"id":"devops/devops-intro/proxy","title":"Proxy","description":"The initial use case for the proxy is just load balancing: spread the incoming requests across the active set of pods. In addition to making the service IP highly available, this also enables splitting traffic across versions for canary testing and more generally for A/B testing. It is also the mechanism used for a progressive rollout of a new version.","sidebar":"tutorialSidebar"},"devops/devops-intro/readme":{"id":"devops/devops-intro/readme","title":"DevOps","description":"- Intro","sidebar":"tutorialSidebar"},"devops/devops-intro/sre-site-reliability-engineering":{"id":"devops/devops-intro/sre-site-reliability-engineering","title":"SRE (Site Reliability Engineering)","description":"SRE is a method that operates through principles. Instead of prescribing specific solutions, it guides you with best practices. These SRE principles help organizations decide what\'s best for them. Once you understand the principles, you can apply them in many areas. When considering a new policy or procedure, you can judge it in the context of these principles.","sidebar":"tutorialSidebar"},"devops/docker/concepts":{"id":"devops/docker/concepts","title":"Concepts","description":"Namespaces","sidebar":"tutorialSidebar"},"devops/docker/containers":{"id":"devops/docker/containers","title":"Containers","description":"A container runtime is the component which runs the containerized application upon request. Docker Engine remains the default for Kubernetes, though CRI-O and others are gaining community support.","sidebar":"tutorialSidebar"},"devops/docker/docker-commands":{"id":"devops/docker/docker-commands","title":"Docker Commands","description":"Installation","sidebar":"tutorialSidebar"},"devops/docker/docker-compose":{"id":"devops/docker/docker-compose","title":"docker-compose","description":"Commands","sidebar":"tutorialSidebar"},"devops/docker/docker-compose-example":{"id":"devops/docker/docker-compose-example","title":"docker-compose example","description":"","sidebar":"tutorialSidebar"},"devops/docker/dockerfile-example":{"id":"devops/docker/dockerfile-example","title":"Dockerfile example","description":"GitHub - irbigdata/data-dockerfiles: a curated list of docker-compose files prepared for testing data engineering tools, databases and open source libraries.","sidebar":"tutorialSidebar"},"devops/docker/dockerfiles":{"id":"devops/docker/dockerfiles","title":"Dockerfiles","description":"Creating portable images","sidebar":"tutorialSidebar"},"devops/docker/intro":{"id":"devops/docker/intro","title":"Intro","description":"Docker is a tool for deploying isolated, or containerized, applications. Docker containers are similar to virtual machines in a sense, but much more lightweight both in size and resource consumption.","sidebar":"tutorialSidebar"},"devops/docker/networking":{"id":"devops/docker/networking","title":"Networking","description":"Container Networking Model CNM","sidebar":"tutorialSidebar"},"devops/docker/others":{"id":"devops/docker/others","title":"Others","description":"Dive","sidebar":"tutorialSidebar"},"devops/docker/readme":{"id":"devops/docker/readme","title":"Docker","description":"- Intro","sidebar":"tutorialSidebar"},"devops/docker/service-configuration-reference":{"id":"devops/docker/service-configuration-reference","title":"Service Configuration Reference","description":"build - Configuration options that are applied at build time","sidebar":"tutorialSidebar"},"devops/docker/stack-swarm":{"id":"devops/docker/stack-swarm","title":"Stack / Swarm","description":"Defines the interactions of all the services.","sidebar":"tutorialSidebar"},"devops/ides/jupyter-jupyterlab-notebook/readme":{"id":"devops/ides/jupyter-jupyterlab-notebook/readme","title":"Jupyter / Jupyterlab / notebook","description":"Overview","sidebar":"tutorialSidebar"},"devops/ides/jupyter-jupyterlab-notebook/template":{"id":"devops/ides/jupyter-jupyterlab-notebook/template","title":"Template","description":"","sidebar":"tutorialSidebar"},"devops/ides/jupyter-jupyterlab-notebook/tools":{"id":"devops/ides/jupyter-jupyterlab-notebook/tools","title":"Tools","description":"https://sqlnotebook.com","sidebar":"tutorialSidebar"},"devops/ides/mac":{"id":"devops/ides/mac","title":"Mac","description":"Shortcuts","sidebar":"tutorialSidebar"},"devops/ides/medium-blogging":{"id":"devops/ides/medium-blogging","title":"Medium Blogging","description":"You have reached the pay-walled version of this article. You can read it absolutely for free on my blog, however.","sidebar":"tutorialSidebar"},"devops/ides/obsidian":{"id":"devops/ides/obsidian","title":"Obsidian","description":"Obsidian is a powerful and extensible knowledge base that works on top of your local folder of plain text files.","sidebar":"tutorialSidebar"},"devops/ides/obsidian-in-vscode":{"id":"devops/ides/obsidian-in-vscode","title":"Obsidian + VS Code","description":"Extension - Foam","sidebar":"tutorialSidebar"},"devops/ides/onenote":{"id":"devops/ides/onenote","title":"OneNote","description":"Shortcut Mac","sidebar":"tutorialSidebar"},"devops/ides/others":{"id":"devops/ides/others","title":"Others","description":"Google Meet","sidebar":"tutorialSidebar"},"devops/ides/pycharm":{"id":"devops/ides/pycharm","title":"PyCharm","description":"Shortcuts Mac","sidebar":"tutorialSidebar"},"devops/ides/readme":{"id":"devops/ides/readme","title":"IDEs","description":"- VSCode / VS Code","sidebar":"tutorialSidebar"},"devops/ides/spyder":{"id":"devops/ides/spyder","title":"Spyder","description":"Here you can get help of any object by pressingCmd+Iin front of it, either on the Editor or the Console.","sidebar":"tutorialSidebar"},"devops/ides/vscode-vs-code":{"id":"devops/ides/vscode-vs-code","title":"VSCode / VS Code","description":"Remove empty lines - Regex - ^(s)*$","sidebar":"tutorialSidebar"},"devops/kubernetes/api-resources":{"id":"devops/kubernetes/api-resources","title":"api-resources","description":"Namespaces","sidebar":"tutorialSidebar"},"devops/kubernetes/architecture":{"id":"devops/kubernetes/architecture","title":"Architecture","description":"Kubernetes Architecture","sidebar":"tutorialSidebar"},"devops/kubernetes/cluster-administration/logging-architecture":{"id":"devops/kubernetes/cluster-administration/logging-architecture","title":"Logging Architecture","description":"The easiest and most embraced logging method for containerized applications is to write to the standard output and standard error streams.","sidebar":"tutorialSidebar"},"devops/kubernetes/cluster-administration/others":{"id":"devops/kubernetes/cluster-administration/others","title":"Others","description":"Kubernetes Network Model","sidebar":"tutorialSidebar"},"devops/kubernetes/cluster-administration/readme":{"id":"devops/kubernetes/cluster-administration/readme","title":"Cluster Administration","description":"1. Cluster Administration Overview","sidebar":"tutorialSidebar"},"devops/kubernetes/concepts-and-overview/configuration/readme":{"id":"devops/kubernetes/concepts-and-overview/configuration/readme","title":"Configuration","description":"- Configuration Best Practices","sidebar":"tutorialSidebar"},"devops/kubernetes/concepts-and-overview/configuration/secrets":{"id":"devops/kubernetes/concepts-and-overview/configuration/secrets","title":"Secrets","description":"Kubernetes Secrets let you store and manage sensitive information, such as passwords, OAuth tokens, and ssh keys. Storing confidential information in a Secret is safer and more flexible than putting it verbatim in a Pod definition or in a container image.","sidebar":"tutorialSidebar"},"devops/kubernetes/concepts-and-overview/policies":{"id":"devops/kubernetes/concepts-and-overview/policies","title":"Policies","description":"Limit Ranges","sidebar":"tutorialSidebar"},"devops/kubernetes/concepts-and-overview/readme":{"id":"devops/kubernetes/concepts-and-overview/readme","title":"Concepts & Overview","description":"Kubernetes Objects","sidebar":"tutorialSidebar"},"devops/kubernetes/configuration":{"id":"devops/kubernetes/configuration","title":"Configuration","description":"Pod Priority and Preemtion","sidebar":"tutorialSidebar"},"devops/kubernetes/design-patterns":{"id":"devops/kubernetes/design-patterns","title":"Design Patterns","description":"Foundational Patterns","sidebar":"tutorialSidebar"},"devops/kubernetes/helm":{"id":"devops/kubernetes/helm","title":"Helm","description":"The package manager for Kubernetes","sidebar":"tutorialSidebar"},"devops/kubernetes/intro":{"id":"devops/kubernetes/intro","title":"Intro","description":"One liner - Kubernetes/Mesos - software tools to manage and coordinate containers","sidebar":"tutorialSidebar"},"devops/kubernetes/keda":{"id":"devops/kubernetes/keda","title":"KEDA","description":"Kubernetes Event-driven Autoscaling","sidebar":"tutorialSidebar"},"devops/kubernetes/kubectl-commands":{"id":"devops/kubernetes/kubectl-commands","title":"kubectl Commands","description":"Debugging","sidebar":"tutorialSidebar"},"devops/kubernetes/kubeedge":{"id":"devops/kubernetes/kubeedge","title":"KubeEdge","description":"KubeEdge is an open source system for extending native containerized application orchestration capabilities to hosts at Edge.It is built upon kubernetes and provides fundamental infrastructure support for network, app. deployment and metadata synchronization between cloud and edge. It also supportsMQTTand allows developers to author custom logic and enable resource constrained device communication at the Edge. KubeEdge consists of a cloud part and an edge part.","sidebar":"tutorialSidebar"},"devops/kubernetes/kubernetes-manifests-examples":{"id":"devops/kubernetes/kubernetes-manifests-examples","title":"Kubernetes Manifests Examples","description":"Resource Schema Components (Manifests)","sidebar":"tutorialSidebar"},"devops/kubernetes/operators":{"id":"devops/kubernetes/operators","title":"Operators","description":"https://operatorhub.io","sidebar":"tutorialSidebar"},"devops/kubernetes/optimizations":{"id":"devops/kubernetes/optimizations","title":"Optimizations","description":"Reserving Resources For The System and Kubelet","sidebar":"tutorialSidebar"},"devops/kubernetes/others":{"id":"devops/kubernetes/others","title":"Others","description":"Pricing","sidebar":"tutorialSidebar"},"devops/kubernetes/outline-documentation":{"id":"devops/kubernetes/outline-documentation","title":"Outline Documentation","description":"1. Overview","sidebar":"tutorialSidebar"},"devops/kubernetes/readme":{"id":"devops/kubernetes/readme","title":"Kubernetes","description":"- Intro","sidebar":"tutorialSidebar"},"devops/kubernetes/reference/quality-of-service-qos":{"id":"devops/kubernetes/reference/quality-of-service-qos","title":"Quality of Service (QoS)","description":"CPU requests are made in CPU units, each unit being a millicore / millicpu, using mille - the Latin word for thousand. Thus a request for .7 of a CPU would be 700 millicore.","sidebar":"tutorialSidebar"},"devops/kubernetes/reference/rbac":{"id":"devops/kubernetes/reference/rbac","title":"RBAC","description":"image","sidebar":"tutorialSidebar"},"devops/kubernetes/reference/readme":{"id":"devops/kubernetes/reference/readme","title":"Reference","description":"Admission Controllers","sidebar":"tutorialSidebar"},"devops/kubernetes/services-loadbalancing-and-networking/ingress":{"id":"devops/kubernetes/services-loadbalancing-and-networking/ingress","title":"Ingress","description":"An API object that manages external access to the services in a cluster, typically HTTP.","sidebar":"tutorialSidebar"},"devops/kubernetes/services-loadbalancing-and-networking/others":{"id":"devops/kubernetes/services-loadbalancing-and-networking/others","title":"Others","description":"DNS for services and pods","sidebar":"tutorialSidebar"},"devops/kubernetes/services-loadbalancing-and-networking/readme":{"id":"devops/kubernetes/services-loadbalancing-and-networking/readme","title":"Services, LoadBalancing and Networking","description":"1. Services","sidebar":"tutorialSidebar"},"devops/kubernetes/services-loadbalancing-and-networking/services":{"id":"devops/kubernetes/services-loadbalancing-and-networking/services","title":"Services","description":"A Kubernetes Service is an abstraction which defines a logical set of Pods and a policy by which to access them - sometimes called a microservice.","sidebar":"tutorialSidebar"},"devops/kubernetes/storage":{"id":"devops/kubernetes/storage","title":"Storage","description":"1. Volumes","sidebar":"tutorialSidebar"},"devops/kubernetes/tasks":{"id":"devops/kubernetes/tasks","title":"Tasks","description":"Monitoring, Logging and Debugging","sidebar":"tutorialSidebar"},"devops/kubernetes/tools":{"id":"devops/kubernetes/tools","title":"Tools","description":"https://devops-stack.io","sidebar":"tutorialSidebar"},"devops/kubernetes/tools-scaling":{"id":"devops/kubernetes/tools-scaling","title":"Kubernetes Scaling Tools","description":"Kubernetes Autoscaler","sidebar":"tutorialSidebar"},"devops/kubernetes/tools-serverless":{"id":"devops/kubernetes/tools-serverless","title":"Serverless Tools","description":"- OpenFaas: Offers Docker and Kubernetes support with an active community. Managed with faas-cli, it uses Prometheus for metrics and offers prebuilt triggers and runtimes. Installation via Brew and deployment to Kubernetes using Helm or raw YAML.","sidebar":"tutorialSidebar"},"devops/kubernetes/troubleshooting":{"id":"devops/kubernetes/troubleshooting","title":"Troubleshooting","description":"Linux BPF CPU Profiling with kubectl on Microsoft Azure Kubernetes (AKS)","sidebar":"tutorialSidebar"},"devops/kubernetes/workloads/controllers":{"id":"devops/kubernetes/workloads/controllers","title":"Controllers","description":"Controllers / Operators","sidebar":"tutorialSidebar"},"devops/kubernetes/workloads/others":{"id":"devops/kubernetes/workloads/others","title":"Others","description":"Disruptions","sidebar":"tutorialSidebar"},"devops/kubernetes/workloads/pod-lifecycle":{"id":"devops/kubernetes/workloads/pod-lifecycle","title":"Pod Lifecycle","description":"- Pod phase","sidebar":"tutorialSidebar"},"devops/kubernetes/workloads/pods":{"id":"devops/kubernetes/workloads/pods","title":"Pods","description":"A Pod is the basic building block of Kubernetes -- the smallest and simplest unit in the Kubernetes object model that you create or deploy. A Pod represents a running process on your cluster.","sidebar":"tutorialSidebar"},"devops/kubernetes/workloads/readme":{"id":"devops/kubernetes/workloads/readme","title":"Workloads","description":"1. Pods","sidebar":"tutorialSidebar"},"devops/monitoring/grafana":{"id":"devops/monitoring/grafana","title":"Grafana","description":"The open platform for beautiful analytics and monitoring (open source software for time series analytics) (Expression browser)","sidebar":"tutorialSidebar"},"devops/monitoring/grafana-loki":{"id":"devops/monitoring/grafana-loki","title":"Grafana Loki","description":"Loki is a horizontally-scalable, highly-available, multi-tenant log aggregation system inspired by Prometheus. It is designed to be very cost effective and easy to operate. It does not index the contents of the logs, but rather a set of labels for each log stream.","sidebar":"tutorialSidebar"},"devops/monitoring/graphite":{"id":"devops/monitoring/graphite","title":"Graphite","description":"Graphite does two things","sidebar":"tutorialSidebar"},"devops/monitoring/istio/architecture":{"id":"devops/monitoring/istio/architecture","title":"Architecture","description":"Istio works by having a small network proxy sit alongside each microservice. This so-called \\"sidecar\\" intercepts all of the service\'s traffic, and handles it more intelligently than a simple layer 3 network can. Istio uses the Envoy proxy as its sidecar. Envoy was originally written at Lyft and is now a CNCF project. The whole set of sidecars, one per microservice, is called thedata plane. The work of the sidecars is coordinated by a small number of central components called thecontrol plane. Control and data plane architectures are very common in distributed systems, from network switches to compute farms.","sidebar":"tutorialSidebar"},"devops/monitoring/istio/commands":{"id":"devops/monitoring/istio/commands","title":"Commands","description":"image","sidebar":"tutorialSidebar"},"devops/monitoring/istio/examples":{"id":"devops/monitoring/istio/examples","title":"Examples","description":"apiVersion: networking.istio.io/v1alpha3","sidebar":"tutorialSidebar"},"devops/monitoring/istio/intro":{"id":"devops/monitoring/istio/intro","title":"Istio","description":"Circuit Breaker","sidebar":"tutorialSidebar"},"devops/monitoring/istio/observability":{"id":"devops/monitoring/istio/observability","title":"Observability","description":"O11Y - Observability","sidebar":"tutorialSidebar"},"devops/monitoring/istio/operations":{"id":"devops/monitoring/istio/operations","title":"Operations","description":"Load Balancer","sidebar":"tutorialSidebar"},"devops/monitoring/istio/others":{"id":"devops/monitoring/istio/others","title":"Others","description":"Istio Ingress vs Kubernetes Ingress","sidebar":"tutorialSidebar"},"devops/monitoring/istio/readme":{"id":"devops/monitoring/istio/readme","title":"Istio","description":"- Istio","sidebar":"tutorialSidebar"},"devops/monitoring/istio/security":{"id":"devops/monitoring/istio/security","title":"Security","description":"Istio\'s security capabilities free developers to focus on security at the application level. Istio provides the underlying secure communication channel, and manages authentication, authorization, and encryption of service communication at scale. With Istio, service communications are secured by default, letting you enforce policies consistently across diverse protocols and runtimes -- all with little or no application changes.","sidebar":"tutorialSidebar"},"devops/monitoring/istio/tasks":{"id":"devops/monitoring/istio/tasks","title":"Tasks","description":"Traffic Management","sidebar":"tutorialSidebar"},"devops/monitoring/istio/traffic-management":{"id":"devops/monitoring/istio/traffic-management","title":"Traffic Management","description":"Istio\'s easy rules configuration and traffic routing lets you control the flow of traffic and API calls between services. Istio simplifies configuration of service-level properties like circuit breakers, timeouts, and retries, and makes it a breeze to set up important tasks like A/B testing, canary rollouts, and staged rollouts with percentage-based traffic splits.","sidebar":"tutorialSidebar"},"devops/monitoring/linkerd":{"id":"devops/monitoring/linkerd","title":"Linkerd","description":"Ultralight service mesh for Kubernetes","sidebar":"tutorialSidebar"},"devops/monitoring/metrics":{"id":"devops/monitoring/metrics","title":"Metrics","description":"Monitoring Introduction","sidebar":"tutorialSidebar"},"devops/monitoring/open-tracing":{"id":"devops/monitoring/open-tracing","title":"Open Tracing","description":"What is OpenTracing?","sidebar":"tutorialSidebar"},"devops/monitoring/others":{"id":"devops/monitoring/others","title":"Others","description":"Status pages","sidebar":"tutorialSidebar"},"devops/monitoring/prometheus/alert-manager":{"id":"devops/monitoring/prometheus/alert-manager","title":"Alert Manager","description":"The Alertmanager handles alerts sent by client applications such as the Prometheus server. It takes care of deduplicating, grouping, and routing them to the correct receiver integration such as email, PagerDuty, or OpsGenie. It also takes care of silencing and inhibition of alerts.","sidebar":"tutorialSidebar"},"devops/monitoring/prometheus/intro":{"id":"devops/monitoring/prometheus/intro","title":"Prometheus","description":"A CNCF (Cloud Native Computing Foundation) project, is a systems and service monitoring system. It collects metrics from configured targets at given intervals, evaluates rule expressions, displays the results, and can trigger alerts if some condition is observed to be true.","sidebar":"tutorialSidebar"},"devops/monitoring/prometheus/prometheus-architecture":{"id":"devops/monitoring/prometheus/prometheus-architecture","title":"Prometheus Architecture","description":"Components","sidebar":"tutorialSidebar"},"devops/monitoring/prometheus/querying":{"id":"devops/monitoring/prometheus/querying","title":"Querying","description":"Functions","sidebar":"tutorialSidebar"},"devops/monitoring/prometheus/readme":{"id":"devops/monitoring/prometheus/readme","title":"Prometheus","description":"- Prometheus","sidebar":"tutorialSidebar"},"devops/monitoring/prometheus/rules":{"id":"devops/monitoring/prometheus/rules","title":"Rules","description":"Prometheus supports two types of rules which may be configured and then evaluated at regular intervals: recording rules and alerting rules.","sidebar":"tutorialSidebar"},"devops/monitoring/readme":{"id":"devops/monitoring/readme","title":"Monitoring","description":"- Metrics","sidebar":"tutorialSidebar"},"devops/monitoring/service-mesh":{"id":"devops/monitoring/service-mesh","title":"Service Mesh","description":"A service mesh is a dedicated infrastructure layer for handling service-to-service communication. It\'s responsible for the reliable delivery of requests through the complex topology of services that comprise a modern, cloud native application. In practice, the service mesh is typically implemented as an array of lightweight network proxies that are deployed alongside application code, without the application needing to be aware.","sidebar":"tutorialSidebar"},"devops/monitoring/telegraf/commands-and-configs":{"id":"devops/monitoring/telegraf/commands-and-configs","title":"Commands & Configs","description":"Telegraf","sidebar":"tutorialSidebar"},"devops/monitoring/telegraf/readme":{"id":"devops/monitoring/telegraf/readme","title":"Telegraf","description":"Telegraf is an agent written in Go for collecting, processing, aggregating, and writing metrics.","sidebar":"tutorialSidebar"},"devops/others/backstage":{"id":"devops/others/backstage","title":"Backstage","description":"Internal Developer Portal (IDP)","sidebar":"tutorialSidebar"},"devops/others/coresync-pacemaker":{"id":"devops/others/coresync-pacemaker","title":"CoreSync, Pacemaker","description":"Corosync is an open source program that provides cluster membership and messaging capabilities, often referred to as themessaginglayer, to client servers. Pacemaker is an open source cluster resource manager (CRM), a system that coordinates resources and services that are managed and made highly available by a cluster. In essence, Corosync enables servers to communicate as a cluster, while Pacemaker provides the ability to control how the cluster behaves.","sidebar":"tutorialSidebar"},"devops/others/devtron":{"id":"devops/others/devtron","title":"DevTron","description":"Devtron deeply integrates with products across the lifecycle of microservices, i.e., CI, CD, security, cost, debugging, and observability via an intuitive web interface.","sidebar":"tutorialSidebar"},"devops/others/jenkins":{"id":"devops/others/jenkins","title":"Jenkins","description":"What can you do with Jenkins?","sidebar":"tutorialSidebar"},"devops/others/keycloak":{"id":"devops/others/keycloak","title":"KeyCloak","description":"Add authentication to applications and secure services with minimum fuss.","sidebar":"tutorialSidebar"},"devops/others/kong":{"id":"devops/others/kong","title":"Kong","description":"Kong is a cloud-native, fast, scalable, and distributed Microservice Abstraction Layer (also known as an API Gateway, API Middleware or in some cases Service Mesh). Made available as an open-source project in 2015, its core values are high performance and extensibility.","sidebar":"tutorialSidebar"},"devops/others/other-cicd":{"id":"devops/others/other-cicd","title":"Other - CICD","description":"- CI - Continuous Integration","sidebar":"tutorialSidebar"},"devops/others/other-tools":{"id":"devops/others/other-tools","title":"Other Tools","description":"Resources","sidebar":"tutorialSidebar"},"devops/others/readme":{"id":"devops/others/readme","title":"Other DevOps","description":"- Jenkins","sidebar":"tutorialSidebar"},"devops/readme":{"id":"devops/readme","title":"DevOps","description":"- DevOps","sidebar":"tutorialSidebar"},"devops/servers/apache-server":{"id":"devops/servers/apache-server","title":"Apache Server","description":"Apache HTTP Server","sidebar":"tutorialSidebar"},"devops/servers/gunicorn":{"id":"devops/servers/gunicorn","title":"Gunicorn","description":"Gunicorn was inspired by Ruby\'s Unicorn server (hence the name). It modestly claims that it is \\"simply implemented, light on server resources, and fairly speedy.\\" Unlike Bjoern and CerryPy, Gunicorn is a standalone server. \\"WORKER_COUNT\\" was set to be twice the number of available of processors, plus one. This was based on a recommendation from Gunicorn\'s documentation.","sidebar":"tutorialSidebar"},"devops/servers/nginx/configs":{"id":"devops/servers/nginx/configs","title":"Configs","description":"","sidebar":"tutorialSidebar"},"devops/servers/nginx/readme":{"id":"devops/servers/nginx/readme","title":"NGINX","description":"Designed to address the C10K problem: How can web servers handle 10,000 clients at the same time. With each new incoming connection, NGINX creates a file descriptor, which consumes less memory than an entire thread or process. Because its architecture is event-driven rather than process-based, NGINX also reduces the need for context switching that occurs in process-per-connection web servers.","sidebar":"tutorialSidebar"},"devops/servers/readme":{"id":"devops/servers/readme","title":"Servers","description":"- Apache Server","sidebar":"tutorialSidebar"},"devops/terminal-bash/1-linux-general-unix-linux-commands":{"id":"devops/terminal-bash/1-linux-general-unix-linux-commands","title":"(1) Linux General / Unix / Linux Commands","description":"Display","sidebar":"tutorialSidebar"},"devops/terminal-bash/2-system-calls":{"id":"devops/terminal-bash/2-system-calls","title":"(2) System Calls","description":"man syscalls","sidebar":"tutorialSidebar"},"devops/terminal-bash/3-library-functions":{"id":"devops/terminal-bash/3-library-functions","title":"(3) Library Functions","description":"setvbuf","sidebar":"tutorialSidebar"},"devops/terminal-bash/8-linux-system-administration":{"id":"devops/terminal-bash/8-linux-system-administration","title":"(8) Linux System Administration","description":"sudo","sidebar":"tutorialSidebar"},"devops/terminal-bash/bash-metacharacters":{"id":"devops/terminal-bash/bash-metacharacters","title":"Bash Metacharacters","description":"| Symbol |","sidebar":"tutorialSidebar"},"devops/terminal-bash/bash-shortcuts":{"id":"devops/terminal-bash/bash-shortcuts","title":"Bash Shortcuts","description":"Controlling the Screen","sidebar":"tutorialSidebar"},"devops/terminal-bash/manual-pages":{"id":"devops/terminal-bash/manual-pages","title":"Manual Pages","description":"A man page(short formanual page) is a form of software documentation usually found on a Unix or Unix-likeoperating system. Topics covered include computer programs(including library) and system calls), formal standards and conventions, and even abstract concepts. A user) may invoke a man page by issuing theman command).","sidebar":"tutorialSidebar"},"devops/terminal-bash/networking-tools":{"id":"devops/terminal-bash/networking-tools","title":"Networking tools","description":"image","sidebar":"tutorialSidebar"},"devops/terminal-bash/others":{"id":"devops/terminal-bash/others","title":"Others","description":"Boot","sidebar":"tutorialSidebar"},"devops/terminal-bash/readme":{"id":"devops/terminal-bash/readme","title":"Terminal Bash","description":"- Shell - Intro","sidebar":"tutorialSidebar"},"devops/terminal-bash/shell-bash-script":{"id":"devops/terminal-bash/shell-bash-script","title":"Shell/bash Script","description":"A shell script is a computer program designed to be run by the Unix shell, a command-line interpreter. The various dialects of shell scripts are considered to be scripting languages. Typical operations performed by shell scripts include file manipulation, program execution, and printing text. A script which sets up the environment, runs the program, and does any necessary cleanup, logging, etc. is called a wrapper.","sidebar":"tutorialSidebar"},"devops/terminal-bash/shell-intro":{"id":"devops/terminal-bash/shell-intro","title":"Shell - Intro","description":"Shell","sidebar":"tutorialSidebar"},"devops/terminal-bash/sysctl":{"id":"devops/terminal-bash/sysctl","title":"sysctl","description":"sysctl -- get or set kernel state","sidebar":"tutorialSidebar"},"devops/terminal-bash/tmux-iterm":{"id":"devops/terminal-bash/tmux-iterm","title":"Tmux Iterm","description":"Tmux is a terminal multiplexer.","sidebar":"tutorialSidebar"},"devops/terminal-bash/tools/awk":{"id":"devops/terminal-bash/tools/awk","title":"AWK","description":"man awk - pattern-directed scanning and processing language","sidebar":"tutorialSidebar"},"devops/terminal-bash/tools/crontab":{"id":"devops/terminal-bash/tools/crontab","title":"Crontab","description":"The software utility cron is a time-based job scheduler in Unix-like computer operating systems. People who set up and maintain software environments use cron to schedule jobs (commands or shell scripts) to run periodically at fixed times, dates, or intervals. It typically automates system maintenance or administration - though its general-purpose nature makes it useful for things like downloading files from the Internet and downloading email at regular intervals. The origin of the name cron is from the Greek word for time, \u03c7\u03c1\u03cc\u03bd\u03bf\u03c2 (chronos).","sidebar":"tutorialSidebar"},"devops/terminal-bash/tools/curl":{"id":"devops/terminal-bash/tools/curl","title":"Curl","description":"curl is a tool to transfer data from or to a server, using one of the supported protocols (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET and TFTP). The command is designed to work without user interaction.","sidebar":"tutorialSidebar"},"devops/terminal-bash/tools/editors":{"id":"devops/terminal-bash/tools/editors","title":"Editors","description":"Commenting multiple using the terminal","sidebar":"tutorialSidebar"},"devops/terminal-bash/tools/mosh":{"id":"devops/terminal-bash/tools/mosh","title":"Mosh","description":"Remote terminal application that allowsroaming, supportsintermittent connectivity, and provides intelligentlocal echoand line editing of user keystrokes.","sidebar":"tutorialSidebar"},"devops/terminal-bash/tools/rsync-rclone":{"id":"devops/terminal-bash/tools/rsync-rclone","title":"rsync / rclone","description":"Rsync Algorithm","sidebar":"tutorialSidebar"},"devops/terraform/commands":{"id":"devops/terraform/commands","title":"Commands","description":"Usage: terraform [-version] [-help] [args]","sidebar":"tutorialSidebar"},"devops/terraform/documentation":{"id":"devops/terraform/documentation","title":"Documentation","description":"Providers","sidebar":"tutorialSidebar"},"devops/terraform/examples":{"id":"devops/terraform/examples","title":"Examples","description":"","sidebar":"tutorialSidebar"},"devops/terraform/readme":{"id":"devops/terraform/readme","title":"Terraform","description":"- Documentation","sidebar":"tutorialSidebar"},"devops/terraform/variables":{"id":"devops/terraform/variables","title":"Variables","description":"Defining Variables","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/0-accounting-for-finance":{"id":"economics/accounting-for-finance/0-accounting-for-finance","title":"0 Accounting for Finance","description":"Accounting 101 (taught by a non-accountant)","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/1-accounting-first-steps":{"id":"economics/accounting-for-finance/1-accounting-first-steps","title":"1 Accounting First Steps","description":"The Accountant\'s Role","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/2-income-statements-and-profitability-measures":{"id":"economics/accounting-for-finance/2-income-statements-and-profitability-measures","title":"2 Income Statements & Profitability Measures","description":"Measuring Income: Accrual versus Cash Accounting","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/2a-income-statement-comparisons":{"id":"economics/accounting-for-finance/2a-income-statement-comparisons","title":"2A Income Statement Comparisons","description":"Income Statement: A Life Cycle Perspective","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/3-balance-sheets":{"id":"economics/accounting-for-finance/3-balance-sheets","title":"3 Balance Sheets","description":"Balance Sheets - Assets Owned & Money Owed","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/3a-balance-sheet-comparisons":{"id":"economics/accounting-for-finance/3a-balance-sheet-comparisons","title":"3A: Balance Sheet Comparisons","description":"Balance Sheet: A Life Cycle Perspective","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/4-cash-flow-statements-cash-in-and-cash-out":{"id":"economics/accounting-for-finance/4-cash-flow-statements-cash-in-and-cash-out","title":"4: Cash Flow Statements - Cash In and Cash Out","description":"The End Game with Cash Flows","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/4a-cash-flow-statement-comparisons":{"id":"economics/accounting-for-finance/4a-cash-flow-statement-comparisons","title":"4A: Cash Flow Statement Comparisons","description":"Cash Flows: A Life Cycle Perspective","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/5-cleaning-up-accounting":{"id":"economics/accounting-for-finance/5-cleaning-up-accounting","title":"5: Cleaning Up Accounting","description":"The Accountant\'s Role","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/5a-accounting-inconsistency-examples":{"id":"economics/accounting-for-finance/5a-accounting-inconsistency-examples","title":"5A: Accounting Inconsistency Examples","description":"Tax Rates","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/6-accouting-financial-ratios-profitability-measures":{"id":"economics/accounting-for-finance/6-accouting-financial-ratios-profitability-measures","title":"6: Accouting Financial Ratios - Profitability Measures","description":"From Absolutes to Ratios","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/6a-ratio-analysis":{"id":"economics/accounting-for-finance/6a-ratio-analysis","title":"6A: Ratio Analysis","description":"Financial Ratios: A Life Cycle Perspective","sidebar":"tutorialSidebar"},"economics/accounting-for-finance/readme":{"id":"economics/accounting-for-finance/readme","title":"Accounting for Finance","description":"- Accounting for Finance","sidebar":"tutorialSidebar"},"economics/buy-now-pay-later-bnpl":{"id":"economics/buy-now-pay-later-bnpl","title":"Buy Now Pay Later (BNPL)","description":"Facts","sidebar":"tutorialSidebar"},"economics/corporate-finance/capital-budgeting":{"id":"economics/corporate-finance/capital-budgeting","title":"Capital budgeting","description":"Definition of Capital Budgeting","sidebar":"tutorialSidebar"},"economics/corporate-finance/corporate-actions":{"id":"economics/corporate-finance/corporate-actions","title":"Corporate Actions","description":"A corporate action is initiated by the board of directors and approved by the company\'s shareholders.","sidebar":"tutorialSidebar"},"economics/corporate-finance/readme":{"id":"economics/corporate-finance/readme","title":"Corporate Finance","description":"Corporate finance is an area of finance that deals with sources of funding, the capital structure of corporations, the actions that managers take to increase the value of the firm to the shareholders, and the tools and analysis used to allocate financial resources. The primary goal of corporate finance is to maximize or increase shareholder value).Although it is in principle different from managerial finance which studies the financial management of all firms, rather than corporations alone, the main concepts in the study of corporate finance are applicable to the financial problems of all kinds of firms.","sidebar":"tutorialSidebar"},"economics/course-investing-zerodha-varsity":{"id":"economics/course-investing-zerodha-varsity","title":"Course - Investing Zerodha Varsity","description":"1 - Introduction to Stock Markets","sidebar":"tutorialSidebar"},"economics/finance-investing/asset-classes":{"id":"economics/finance-investing/asset-classes","title":"Asset Classes","description":"https://freefincal.com/hdfc-corporate-bond-fund","sidebar":"tutorialSidebar"},"economics/finance-investing/checklist-tips":{"id":"economics/finance-investing/checklist-tips","title":"Checklist / Tips","description":"Choosing companies","sidebar":"tutorialSidebar"},"economics/finance-investing/company-analysis":{"id":"economics/finance-investing/company-analysis","title":"Company Analysis","description":"Atlas SOIC Market Temp check","sidebar":"tutorialSidebar"},"economics/finance-investing/company-management":{"id":"economics/finance-investing/company-management","title":"Company\'s Management","description":"Evaluating Company\'s Management For Stock Buying | ET Money","sidebar":"tutorialSidebar"},"economics/finance-investing/financial-independence-fire":{"id":"economics/finance-investing/financial-independence-fire","title":"Financial Independence, Retire Early (FIRE)","description":"FIRE means to save and invest aggressively in your 20s and 30s so that you can live the latter years of your life freely","sidebar":"tutorialSidebar"},"economics/finance-investing/huf-private-trust":{"id":"economics/finance-investing/huf-private-trust","title":"HUF / Private Trust","description":"HUF","sidebar":"tutorialSidebar"},"economics/finance-investing/indian-company-types":{"id":"economics/finance-investing/indian-company-types","title":"Indian Company Types","description":"Types of companies in India","sidebar":"tutorialSidebar"},"economics/finance-investing/industry-sectors":{"id":"economics/finance-investing/industry-sectors","title":"Industry Sectors","description":"- Communication Services","sidebar":"tutorialSidebar"},"economics/finance-investing/personal-finance":{"id":"economics/finance-investing/personal-finance","title":"Personal Finance","description":"4 pillars","sidebar":"tutorialSidebar"},"economics/finance-investing/portfolio-management-services-pms":{"id":"economics/finance-investing/portfolio-management-services-pms","title":"Portfolio Management Services (PMS)","description":"- Marcellus - 10L-50L","sidebar":"tutorialSidebar"},"economics/finance-investing/portfolios":{"id":"economics/finance-investing/portfolios","title":"Portfolios","description":"Portfolio","sidebar":"tutorialSidebar"},"economics/finance-investing/quotes":{"id":"economics/finance-investing/quotes","title":"Quotes","description":"Diversification using portfolio allocation and goal based investing are the only things that works in personal finance investing","sidebar":"tutorialSidebar"},"economics/finance-investing/readme":{"id":"economics/finance-investing/readme","title":"Finance / Investing","description":"- Financial Independence (FIRE)","sidebar":"tutorialSidebar"},"economics/finance-investing/returns-tax-taxes-itr":{"id":"economics/finance-investing/returns-tax-taxes-itr","title":"Returns / Tax / Taxes / ITR","description":"https://taxbuddy.com","sidebar":"tutorialSidebar"},"economics/finance-investing/stocks-equity":{"id":"economics/finance-investing/stocks-equity","title":"Stocks / Equity","description":"The stock market is a device for transferring money from the impatient to the patient - Warren Buffet","sidebar":"tutorialSidebar"},"economics/finance-terms":{"id":"economics/finance-terms","title":"Finance Terms","description":"Asset Classes","sidebar":"tutorialSidebar"},"economics/financial-facts":{"id":"economics/financial-facts","title":"Facts","description":"- Real state capitalization, economy - 340 trillion dollar","sidebar":"tutorialSidebar"},"economics/fintech-nbfc-banking-terms":{"id":"economics/fintech-nbfc-banking-terms","title":"Fintech / NBFC / Banking Terms","description":"Banking Parameters","sidebar":"tutorialSidebar"},"economics/government-terms":{"id":"economics/government-terms","title":"Government Terms","description":"Equitable Distribution","sidebar":"tutorialSidebar"},"economics/gross-domestic-product-gdp":{"id":"economics/gross-domestic-product-gdp","title":"Gross Domestic Product (GDP)","description":"A monetary measure of the market value of all final goods and services produced in a period (quarterly or yearly).","sidebar":"tutorialSidebar"},"economics/inflation-indexes":{"id":"economics/inflation-indexes","title":"Inflation Indexes","description":"Inflation is a sustained increase in the general prices of goods and services. Increasing inflation erodes the purchasing power of money.","sidebar":"tutorialSidebar"},"economics/insurance":{"id":"economics/insurance","title":"Insurance","description":"Term Insurance","sidebar":"tutorialSidebar"},"economics/intro":{"id":"economics/intro","title":"Intro","description":"https://en.wikipedia.org/wiki/Outline_of_economics","sidebar":"tutorialSidebar"},"economics/investment-banking":{"id":"economics/investment-banking","title":"Investment Banking","description":"Careers in finance - Investment Banking (Part 2) - YouTube","sidebar":"tutorialSidebar"},"economics/investment-terms":{"id":"economics/investment-terms","title":"Investment Terms","description":"Annual vs Trailing vs Rolling Returns Explained | ET Money","sidebar":"tutorialSidebar"},"economics/learning":{"id":"economics/learning","title":"Learning","description":"Course - Corporate Governance","sidebar":"tutorialSidebar"},"economics/market-terms/fundamental-analysis":{"id":"economics/market-terms/fundamental-analysis","title":"Fundamental Analysis","description":"Links","sidebar":"tutorialSidebar"},"economics/market-terms/futures-options-trading":{"id":"economics/market-terms/futures-options-trading","title":"Futures / Options / Trading","description":"Buy the rumor, sell the news","sidebar":"tutorialSidebar"},"economics/market-terms/ipo":{"id":"economics/market-terms/ipo","title":"IPO","description":"https://zerodha.com/varsity/chapter/the-ipo-markets-part-1/","sidebar":"tutorialSidebar"},"economics/market-terms/others":{"id":"economics/market-terms/others","title":"Others","description":"Nifty VIX (India Volatility Index)","sidebar":"tutorialSidebar"},"economics/market-terms/readme":{"id":"economics/market-terms/readme","title":"Market Terms","description":"- IPO","sidebar":"tutorialSidebar"},"economics/market-terms/swing-trading":{"id":"economics/market-terms/swing-trading","title":"Swing Trading","description":"- Technical swing","sidebar":"tutorialSidebar"},"economics/market-terms/technical-analysis":{"id":"economics/market-terms/technical-analysis","title":"Technical Analysis","description":"Technical Analysis helps identify trading opportunities using actions of Market Participants through charts, patterns, and indicators.","sidebar":"tutorialSidebar"},"economics/market-terms/technical-indicators":{"id":"economics/market-terms/technical-indicators","title":"Technical Indicators","description":"Relative strength index (RSI) (14)","sidebar":"tutorialSidebar"},"economics/market-terms/valuation-metrics":{"id":"economics/market-terms/valuation-metrics","title":"Valuation Metrics","description":"4 Most Popular Valuation Metrics That Every Investor Must Know | ET Money","sidebar":"tutorialSidebar"},"economics/market-terms/wyckoff-method":{"id":"economics/market-terms/wyckoff-method","title":"Wyckoff Method","description":"- The Wyckoff Method is a technical analysis approach that can help investors decide what stocks to buy and when to buy them.","sidebar":"tutorialSidebar"},"economics/mental-models/economics-mental-models":{"id":"economics/mental-models/economics-mental-models","title":"Economics Mental Models","description":"To read","sidebar":"tutorialSidebar"},"economics/mental-models/inequality":{"id":"economics/mental-models/inequality","title":"Inequality","description":"Gini Coefficient","sidebar":"tutorialSidebar"},"economics/mental-models/macroeconomics":{"id":"economics/mental-models/macroeconomics","title":"Macroeconomics","description":"Macroeconomics (from the Greek prefix makro-meaning \\"large\\" +economics) is a branch of economics dealing with the performance, structure, behavior, and decision-making of an economy as a whole. This includes regional, national, and global economies. Macroeconomists study aggregated indicators such as GDP, unemployment rates, national income, price indices, and the interrelations among the different sectors of the economy to better understand how the whole economy functions. They also develop models that explain the relationship between such factors as national income, output), consumption), unemployment, inflation, saving, investment), international trade, and international finance.","sidebar":"tutorialSidebar"},"economics/mental-models/marginal-utility-analysis":{"id":"economics/mental-models/marginal-utility-analysis","title":"Marginal Utility / Analysis","description":"Marginal Analysis","sidebar":"tutorialSidebar"},"economics/mental-models/microeconomics":{"id":"economics/mental-models/microeconomics","title":"Microeconomics","description":"Microeconomics (from Greek prefixmikro-meaning \\"small\\" +economics) is a branch of economics that studies the behaviour of individuals and firms in making decisions regarding the allocation of scarce resources and the interactions among these individuals and firms.","sidebar":"tutorialSidebar"},"economics/mental-models/rankings":{"id":"economics/mental-models/rankings","title":"Rankings","description":"List of international rankings - Wikipedia","sidebar":"tutorialSidebar"},"economics/mental-models/recession-shapes-recovery":{"id":"economics/mental-models/recession-shapes-recovery","title":"Recession shapes (Recovery types)","description":"image","sidebar":"tutorialSidebar"},"economics/monetary-policies":{"id":"economics/monetary-policies","title":"Monetary Policy","description":"Monetary policy is the process by which the monetary authority of a country, typically the central bank or currency board, controls either the cost of very short-term borrowing or the money supply, often targeting an inflation rate or interest rate to ensure price stability and general trust in the currency.","sidebar":"tutorialSidebar"},"economics/mutual-funds/debentures-bonds":{"id":"economics/mutual-funds/debentures-bonds","title":"Debentures / Bonds","description":"A long-term security yielding a fixed rate of interest, issued by a company and secured against assets.","sidebar":"tutorialSidebar"},"economics/mutual-funds/debt-mutual-funds":{"id":"economics/mutual-funds/debt-mutual-funds","title":"Debt Mutual Funds","description":"- The debt part of the portfolio is to provide stability to the portfolio, not to generate a higher return. If investors want a higher return from their portfolio, they should ideally increase equity allocation in the portfolio.","sidebar":"tutorialSidebar"},"economics/mutual-funds/debt-mutual-funds-analysis":{"id":"economics/mutual-funds/debt-mutual-funds-analysis","title":"Debt Mutual Funds Analysis","description":"How to select a debt mutual fund?","sidebar":"tutorialSidebar"},"economics/mutual-funds/debt-mutual-funds-risks":{"id":"economics/mutual-funds/debt-mutual-funds-risks","title":"Debt Mutual Funds Risks","description":"Cashflow risk","sidebar":"tutorialSidebar"},"economics/mutual-funds/equity-mutual-funds":{"id":"economics/mutual-funds/equity-mutual-funds","title":"Equity Mutual Funds","description":"Equity funds or growth funds","sidebar":"tutorialSidebar"},"economics/mutual-funds/fixed-income":{"id":"economics/mutual-funds/fixed-income","title":"Fixed income","description":"Fixed income refers to any type of investment under which the borrower or issuer is obliged to make payments of a fixed amount on a fixed schedule. For example, the borrower may have to pay interest at a fixed rate once a year, and to repay the principal amount on maturity. Fixed-income securities) can be contrasted with equity securities -- often referred to as stocks and shares -- that create no obligation to pay dividends or any other form of income.","sidebar":"tutorialSidebar"},"economics/mutual-funds/index-investing-etf":{"id":"economics/mutual-funds/index-investing-etf","title":"Index Investing / ETF","description":"What is a factor-based index?","sidebar":"tutorialSidebar"},"economics/mutual-funds/mutual-funds-indicators":{"id":"economics/mutual-funds/mutual-funds-indicators","title":"Mutual Funds Indicators","description":"How to Measure Mutual Fund Risk | Alpha, Beta, SD, Sharpe, R-squared, Sortino | Learn with ETMONEY","sidebar":"tutorialSidebar"},"economics/mutual-funds/nifty-indexes-indices":{"id":"economics/mutual-funds/nifty-indexes-indices","title":"Nifty Indexes / Indices","description":"Sensex then versus now","sidebar":"tutorialSidebar"},"economics/mutual-funds/others":{"id":"economics/mutual-funds/others","title":"Others","description":"ESG - Environmental, social and corporate governance","sidebar":"tutorialSidebar"},"economics/mutual-funds/readme":{"id":"economics/mutual-funds/readme","title":"Mutual Funds","description":"- Fixed Income","sidebar":"tutorialSidebar"},"economics/readme":{"id":"economics/readme","title":"Economics","description":"- Intro","sidebar":"tutorialSidebar"},"economics/schools-of-economic-thought":{"id":"economics/schools-of-economic-thought","title":"Schools of Economic Thought","description":"Schools of economic thought - Wikipedia","sidebar":"tutorialSidebar"},"frontend/frontend-intro/design-system":{"id":"frontend/frontend-intro/design-system","title":"Design System","description":"The complete set of design standards, documentation, UI patterns, and components. Design systems allow you to manage design at scale","sidebar":"tutorialSidebar"},"frontend/frontend-intro/frontend-architecture":{"id":"frontend/frontend-intro/frontend-architecture","title":"Frontend Architecture","description":"PRPL pattern","sidebar":"tutorialSidebar"},"frontend/frontend-intro/gestalt-principles":{"id":"frontend/frontend-intro/gestalt-principles","title":"Gestalt Principles","description":"- Human visual system is optimized to see structure and relationships","sidebar":"tutorialSidebar"},"frontend/frontend-intro/google-crawlers-crawling":{"id":"frontend/frontend-intro/google-crawlers-crawling","title":"Google Crawlers / Crawling","description":"How Google Search crawls pages - YouTube","sidebar":"tutorialSidebar"},"frontend/frontend-intro/intro":{"id":"frontend/frontend-intro/intro","title":"Intro","description":"The HTTP protocol is one of the most important protocols for smooth communication between the server and the client. The main disadvantage of the HTTP protocol it is a stateless protocol that means it does not track any kind of information of response and request by the server and the client, So in order to resolve this problem, there are three ways to track useful information.","sidebar":"tutorialSidebar"},"frontend/frontend-intro/jamstack-cms":{"id":"frontend/frontend-intro/jamstack-cms","title":"JAMstack / CMS","description":"Modern Web-development architecture based on Client-side JavaScript, resuable APIs and prebuild Markup","sidebar":"tutorialSidebar"},"frontend/frontend-intro/microfrontend-architecture":{"id":"frontend/frontend-intro/microfrontend-architecture","title":"Microfrontend Architecture","description":"Micro-frontend architecture is a design approach in which a front-end app is decomposed into individual, semi-independent \\"microapps\\" working loosely together.","sidebar":"tutorialSidebar"},"frontend/frontend-intro/others":{"id":"frontend/frontend-intro/others","title":"Others","description":"BFCache","sidebar":"tutorialSidebar"},"frontend/frontend-intro/performance":{"id":"frontend/frontend-intro/performance","title":"Performance","description":"Steps to build a hyper-light website","sidebar":"tutorialSidebar"},"frontend/frontend-intro/pwa":{"id":"frontend/frontend-intro/pwa","title":"PWA: Progressive Web Apps","description":"- Look great on all screen sizes","sidebar":"tutorialSidebar"},"frontend/frontend-intro/readme":{"id":"frontend/frontend-intro/readme","title":"Frontend","description":"- Intro","sidebar":"tutorialSidebar"},"frontend/frontend-intro/seo-aso":{"id":"frontend/frontend-intro/seo-aso","title":"SEO / ASO","description":"SEO - Search Engine Optimization","sidebar":"tutorialSidebar"},"frontend/frontend-intro/ui-ux-ixd-design-frontend":{"id":"frontend/frontend-intro/ui-ux-ixd-design-frontend","title":"UI / UX / IxD / Design / Frontend","description":"\\"Design is not just what it looks like and feels like. Design is how it works.\\"---Steve Jobs, 2003","sidebar":"tutorialSidebar"},"frontend/frontend-intro/web-vitals":{"id":"frontend/frontend-intro/web-vitals","title":"Web Vitals","description":"https://web.dev/vitals","sidebar":"tutorialSidebar"},"frontend/frontend-intro/wordpress":{"id":"frontend/frontend-intro/wordpress","title":"Wordpress","description":"https://wordpress.com/home/deepaksood619.wordpress.com","sidebar":"tutorialSidebar"},"frontend/html-css/component-libraries/components":{"id":"frontend/html-css/component-libraries/components","title":"Components","description":"https://material.io/components","sidebar":"tutorialSidebar"},"frontend/html-css/component-libraries/others":{"id":"frontend/html-css/component-libraries/others","title":"Others","description":"Bootstrap","sidebar":"tutorialSidebar"},"frontend/html-css/component-libraries/readme":{"id":"frontend/html-css/component-libraries/readme","title":"Component Libraries","description":"https://lwc.dev","sidebar":"tutorialSidebar"},"frontend/html-css/css-intro/centering":{"id":"frontend/html-css/css-intro/centering","title":"Centering","description":"http://www.tipue.com/blog/center-a-div","sidebar":"tutorialSidebar"},"frontend/html-css/css-intro/css-positions":{"id":"frontend/html-css/css-intro/css-positions","title":"CSS Positions","description":"CSS Positions allow you to manipulate how elements are positioned to achieve many different visual effects.","sidebar":"tutorialSidebar"},"frontend/html-css/css-intro/css-transitions":{"id":"frontend/html-css/css-intro/css-transitions","title":"CSS Transitions","description":"The simplest (and most straightforward) way to animate your components is through CSS Transitions. In this article, you\'ll learn how CSS Transitions work, and how to make animations with it.","sidebar":"tutorialSidebar"},"frontend/html-css/css-intro/mastering-css":{"id":"frontend/html-css/css-intro/mastering-css","title":"Mastering CSS","description":"The Anatomy of a Rule Set and three types of Style Sheets","sidebar":"tutorialSidebar"},"frontend/html-css/css-intro/others":{"id":"frontend/html-css/css-intro/others","title":"Others","description":"CSS Keyframe Animation","sidebar":"tutorialSidebar"},"frontend/html-css/css-intro/readme":{"id":"frontend/html-css/css-intro/readme","title":"CSS Intro","description":"Cascading Style Sheets, fondly referred to as CSS, is a simple design language intended to simplify the process of making web pages presentable.","sidebar":"tutorialSidebar"},"frontend/html-css/html-intro/html-entities-attributes":{"id":"frontend/html-css/html-intro/html-entities-attributes","title":"HTML Entities / Attributes","description":"Reserved characters in HTML must be replaced with character entities.","sidebar":"tutorialSidebar"},"frontend/html-css/html-intro/readme":{"id":"frontend/html-css/html-intro/readme","title":"HTML Intro","description":"DOM (Document Object Model) [parent, child, siblings] (description of the relationship that all of the HTML elements have with each other ) (It takes html tags as input and browser converts it to DOM that is rendered in the webpage)","sidebar":"tutorialSidebar"},"frontend/html-css/html-intro/tags":{"id":"frontend/html-css/html-intro/tags","title":"Tags","description":"Semantic Elements in HTML5","sidebar":"tutorialSidebar"},"frontend/html-css/readme":{"id":"frontend/html-css/readme","title":"HTML-CSS","description":"- Component Libraries","sidebar":"tutorialSidebar"},"frontend/js-javascript/basic":{"id":"frontend/js-javascript/basic","title":"Basic","description":"https://medium.freecodecamp.org/the-definitive-javascript-handbook-for-a-developer-interview-44ffc6aeb54e","sidebar":"tutorialSidebar"},"frontend/js-javascript/intro":{"id":"frontend/js-javascript/intro","title":"Intro","description":"Javascript","sidebar":"tutorialSidebar"},"frontend/js-javascript/libraries":{"id":"frontend/js-javascript/libraries","title":"Libraries","description":"Axios","sidebar":"tutorialSidebar"},"frontend/js-javascript/others":{"id":"frontend/js-javascript/others","title":"Others","description":"Debouncing in JavaScript","sidebar":"tutorialSidebar"},"frontend/js-javascript/promises":{"id":"frontend/js-javascript/promises","title":"Promises","description":"1. Is single threaded","sidebar":"tutorialSidebar"},"frontend/js-javascript/questions":{"id":"frontend/js-javascript/questions","title":"Questions","description":"Event Delegation","sidebar":"tutorialSidebar"},"frontend/js-javascript/readme":{"id":"frontend/js-javascript/readme","title":"Javascript","description":"- Intro","sidebar":"tutorialSidebar"},"frontend/js-javascript/typescript":{"id":"frontend/js-javascript/typescript","title":"TypeScript","description":"TypeScript is an open source syntactic superset of javascript that compiles to JS. Allows to use optional static typing as well as support for the latest evolving features of ES2015.","sidebar":"tutorialSidebar"},"frontend/js-javascript/web-api":{"id":"frontend/js-javascript/web-api","title":"Web API","description":"Application Programming Interfaces (APIs) are constructs made available in programming languages to allow developers to create complex functionality more easily. They abstract more complex code away from you, providing some easier syntax to use in its place.","sidebar":"tutorialSidebar"},"frontend/others/angularjs/01-intro":{"id":"frontend/others/angularjs/01-intro","title":"1. Intro","description":"It is used in Single Page Applications Project.","sidebar":"tutorialSidebar"},"frontend/others/angularjs/03-modules":{"id":"frontend/others/angularjs/03-modules","title":"3. Modules","description":"Modules","sidebar":"tutorialSidebar"},"frontend/others/angularjs/06-components":{"id":"frontend/others/angularjs/06-components","title":"6. Components","description":"Angular Components","sidebar":"tutorialSidebar"},"frontend/others/angularjs/08-metadata":{"id":"frontend/others/angularjs/08-metadata","title":"8. Metadata","description":"Decorators are functions that modify JavaScript classes. Angular has many decorators that attach metadata to classes so that it knows what those classes mean and how they should work.","sidebar":"tutorialSidebar"},"frontend/others/angularjs/09-data-binding":{"id":"frontend/others/angularjs/09-data-binding","title":"9. Data Binding","description":"Without a framework, you would be responsible for pushing data values into the HTML controls and turning user responses into actions and value updates. Writing such push/pull logic by hand is tedious, error-prone, and a nightmare to read as any experienced jQuery programmer can attest.","sidebar":"tutorialSidebar"},"frontend/others/angularjs/10-directives":{"id":"frontend/others/angularjs/10-directives","title":"10. Directives","description":"image","sidebar":"tutorialSidebar"},"frontend/others/angularjs/11-services":{"id":"frontend/others/angularjs/11-services","title":"11. Services","description":"Service is a broad category encompassing any value, function, or feature that your application needs.","sidebar":"tutorialSidebar"},"frontend/others/angularjs/12-dependency-injection":{"id":"frontend/others/angularjs/12-dependency-injection","title":"12. Dependency Injection","description":"Dependency injection is a way to supply a new instance of a class with the fully-formed dependencies it requires. Most dependencies are services. Angular uses dependency injection to provide new components with the services they need.","sidebar":"tutorialSidebar"},"frontend/others/angularjs/intro":{"id":"frontend/others/angularjs/intro","title":"AngularJS","description":"https://www.toptal.com/angular/angular-9-tutorial-angular-ivy","sidebar":"tutorialSidebar"},"frontend/others/angularjs/readme":{"id":"frontend/others/angularjs/readme","title":"AngularJS","description":"- AngularJS","sidebar":"tutorialSidebar"},"frontend/others/angularjs/tour-of-heroes":{"id":"frontend/others/angularjs/tour-of-heroes","title":"Tour of Heroes","description":"Directives","sidebar":"tutorialSidebar"},"frontend/others/docusaurus":{"id":"frontend/others/docusaurus","title":"Docusaurus","description":"https://docusaurus.io/docs","sidebar":"tutorialSidebar"},"frontend/others/frontend-frameworks":{"id":"frontend/others/frontend-frameworks","title":"Frontend Frameworks","description":"Frontend Frameworks","sidebar":"tutorialSidebar"},"frontend/others/gatsby":{"id":"frontend/others/gatsby","title":"Gatsby","description":"Gatsby is a free and open source framework based on React that helps developers build blazing fast websites and apps","sidebar":"tutorialSidebar"},"frontend/others/jquery":{"id":"frontend/others/jquery","title":"JQuery","description":"Introduction","sidebar":"tutorialSidebar"},"frontend/others/nestjs/documentation":{"id":"frontend/others/nestjs/documentation","title":"Documentation","description":"INTRODUCTION","sidebar":"tutorialSidebar"},"frontend/others/nestjs/readme":{"id":"frontend/others/nestjs/readme","title":"NestJs","description":"A progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications on top of TypeScript & JavaScript (ES6, ES7, ES8)","sidebar":"tutorialSidebar"},"frontend/others/nextjs/data-fetching":{"id":"frontend/others/nextjs/data-fetching","title":"Data Fetching","description":"Note: Next.js 13 introduces the app/ directory (beta). This new directory has support for colocated data fetching at the component level, using the new React use hook and an extended fetch Web API.","sidebar":"tutorialSidebar"},"frontend/others/nextjs/others":{"id":"frontend/others/nextjs/others","title":"Others","description":"Libraries","sidebar":"tutorialSidebar"},"frontend/others/nextjs/readme":{"id":"frontend/others/nextjs/readme","title":"NextJS","description":"Why NextJS","sidebar":"tutorialSidebar"},"frontend/others/nodejs/libraries":{"id":"frontend/others/nodejs/libraries","title":"Libraries","description":"Frontends","sidebar":"tutorialSidebar"},"frontend/others/nodejs/nodejs-frameworks":{"id":"frontend/others/nodejs/nodejs-frameworks","title":"Nodejs Frameworks","description":"Things to consider while selecting a node framework","sidebar":"tutorialSidebar"},"frontend/others/nodejs/npm-commands":{"id":"frontend/others/nodejs/npm-commands","title":"npm commands","description":"npx - npm package runner","sidebar":"tutorialSidebar"},"frontend/others/nodejs/readme":{"id":"frontend/others/nodejs/readme","title":"Nodejs","description":"Node.js is an open-source, cross-platformJavaScriptrun-time environment that executes JavaScript code outside of a browser. JavaScript is used primarily for client-side scripting, in which scripts written in JavaScript are embedded in a webpage\'s HTML and run client-side by a JavaScript engine in the user\'s web browser. Node.js lets developers use JavaScript to write command line tools and for server-side scripting-running scripts server-side to produce dynamic web page contentbeforethe page is sent to the user\'s web browser. Consequently, Node.js represents a \\"JavaScript everywhere\\" paradigm, unifying web application development around a single programming language, rather than different languages for server side and client side scripts.","sidebar":"tutorialSidebar"},"frontend/others/readme":{"id":"frontend/others/readme","title":"Others","description":"- JQuery","sidebar":"tutorialSidebar"},"frontend/others/static-site-generators":{"id":"frontend/others/static-site-generators","title":"Static Site Generators","description":"GitHub - myles/awesome-static-generators: A curated list of static web site generators.","sidebar":"tutorialSidebar"},"frontend/react/code-commands-snippets":{"id":"frontend/react/code-commands-snippets","title":"Code / Commands / Snippets","description":"dependencies are the packages your project depends on","sidebar":"tutorialSidebar"},"frontend/react/components":{"id":"frontend/react/components","title":"Components","description":"- Always component name should start with Capital letter","sidebar":"tutorialSidebar"},"frontend/react/course":{"id":"frontend/react/course","title":"Course","description":"Roadmap - https://www.youtube.com/watch?v=Ip_jOSpThSg","sidebar":"tutorialSidebar"},"frontend/react/docs":{"id":"frontend/react/docs","title":"Docs","description":"MAIN CONCEPTS","sidebar":"tutorialSidebar"},"frontend/react/events":{"id":"frontend/react/events","title":"Events","description":"Your event handlers will be passed instances ofSyntheticEvent, a cross-browser wrapper around the browser\'s native event. It has the same interface as the browser\'s native event, includingstopPropagation()andpreventDefault(), except the events work identically across all browsers.","sidebar":"tutorialSidebar"},"frontend/react/hooks":{"id":"frontend/react/hooks","title":"Hooks","description":"- 1. Introducing Hooks","sidebar":"tutorialSidebar"},"frontend/react/intro":{"id":"frontend/react/intro","title":"Intro","description":"image","sidebar":"tutorialSidebar"},"frontend/react/jsx":{"id":"frontend/react/jsx","title":"JSX","description":"JSX Rules","sidebar":"tutorialSidebar"},"frontend/react/libraries":{"id":"frontend/react/libraries","title":"Libraries","description":"TODO","sidebar":"tutorialSidebar"},"frontend/react/mordern-react-with-redux":{"id":"frontend/react/mordern-react-with-redux","title":"Mordern React with Redux","description":"An Intro to React","sidebar":"tutorialSidebar"},"frontend/react/react-admin-templates":{"id":"frontend/react/react-admin-templates","title":"React admin / Templates","description":"- https://marmelab.com/react-admin/doc/2.8/Authentication.html","sidebar":"tutorialSidebar"},"frontend/react/react-dom":{"id":"frontend/react/react-dom","title":"React DOM","description":"What is DOM?","sidebar":"tutorialSidebar"},"frontend/react/react-native":{"id":"frontend/react/react-native","title":"React Native","description":"Expo","sidebar":"tutorialSidebar"},"frontend/react/react-router":{"id":"frontend/react/react-router","title":"React Router","description":"This is of high significance as it\'s anentry point of your application. There can be several routes in your application and you would need functionalities like validation, authentication, redirection, etc. depending upon the requirement.","sidebar":"tutorialSidebar"},"frontend/react/readme":{"id":"frontend/react/readme","title":"React","description":"- Intro","sidebar":"tutorialSidebar"},"frontend/react/redux":{"id":"frontend/react/redux","title":"Redux","description":"Redux is a library which controls the state of your JavaScript application. It provides a \\"unidirectional data flow\\" that helps to manage and organise data better and makes debugging a lot easier.","sidebar":"tutorialSidebar"},"frontend/react/state":{"id":"frontend/react/state","title":"State","description":"Props vs State","sidebar":"tutorialSidebar"},"frontend/react/tools":{"id":"frontend/react/tools","title":"Tools","description":"https://medium.com/dubizzletechblog/setting-up-prettier-and-eslint-for-js-and-react-apps-bbc779d29062","sidebar":"tutorialSidebar"},"frontend/readme":{"id":"frontend/readme","title":"Frontend","description":"- Frontend","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/chemical-engineering":{"id":"knowledge/applied-sciences/chemical-engineering","title":"Chemical Engineering","description":"Chemical Engineering","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/civil-engineering":{"id":"knowledge/applied-sciences/civil-engineering","title":"Civil Engineering","description":"Civil Engineering","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/control-engineering":{"id":"knowledge/applied-sciences/control-engineering","title":"Control Engineering","description":"Control engineeringorcontrol systems engineeringis an engineering discipline that applies automatic control theory to design systems with desired behaviors in control environments.The discipline of controls overlaps and is usually taught along with electrical engineering at many institutions around the world","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/crash-course-engineering":{"id":"knowledge/applied-sciences/crash-course-engineering","title":"Crash Course Engineering","description":"1. What is engineering","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/electrical-engineering":{"id":"knowledge/applied-sciences/electrical-engineering","title":"Electrical Engineering","description":"- William Gilbert: De Magnete (On a Magnet) - He was the first to describe the phenomena we now associate with electrical attraction and magnetic poles, which is why many view him as the father of electrical studies","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/embedded-systems-electronics":{"id":"knowledge/applied-sciences/embedded-systems-electronics","title":"Embedded Systems / Electronics","description":"Linear-feedback shift register (LSFR)","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/hvac-systems":{"id":"knowledge/applied-sciences/hvac-systems","title":"HVAC Systems","description":"- H - Heating","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/mechanical-engineering":{"id":"knowledge/applied-sciences/mechanical-engineering","title":"Mechanical Engineering","description":"Outline","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/others-power-energy":{"id":"knowledge/applied-sciences/others-power-energy","title":"Others / Power / Energy","description":"Usage","sidebar":"tutorialSidebar"},"knowledge/applied-sciences/readme":{"id":"knowledge/applied-sciences/readme","title":"Applied Sciences","description":"- Crash Course Engineering","sidebar":"tutorialSidebar"},"knowledge/biology/alternative-medicine":{"id":"knowledge/biology/alternative-medicine","title":"Alternative Medicine","description":"Alternative medicine\xa0is any practice that aims to achieve the healing effects of\xa0medicine\xa0despite lacking\xa0biological plausibility,\xa0testability,\xa0repeatability\xa0or evidence of effectiveness.","sidebar":"tutorialSidebar"},"knowledge/biology/digestive-system":{"id":"knowledge/biology/digestive-system","title":"Digestive System","description":"Metabolic chart of the Human Body","sidebar":"tutorialSidebar"},"knowledge/biology/diseases-tests":{"id":"knowledge/biology/diseases-tests","title":"Diseases / Tests","description":"Listening to your own body over a lifetime can tell you far more than any doctor in a small room for a rushed 10 minutes appointment.","sidebar":"tutorialSidebar"},"knowledge/biology/exercise-stretching/gym":{"id":"knowledge/biology/exercise-stretching/gym","title":"Gym","description":"- The best exercise for gaining strength is not missing workouts","sidebar":"tutorialSidebar"},"knowledge/biology/exercise-stretching/gym-nutrition":{"id":"knowledge/biology/exercise-stretching/gym-nutrition","title":"GYM Nutrition","description":"Proteins","sidebar":"tutorialSidebar"},"knowledge/biology/exercise-stretching/gym-routine":{"id":"knowledge/biology/exercise-stretching/gym-routine","title":"Gym Routine","description":"Tips","sidebar":"tutorialSidebar"},"knowledge/biology/exercise-stretching/home-exercise-routine":{"id":"knowledge/biology/exercise-stretching/home-exercise-routine","title":"Home Exercise Routine","description":"Youtube - Athlean X","sidebar":"tutorialSidebar"},"knowledge/biology/exercise-stretching/home-gym":{"id":"knowledge/biology/exercise-stretching/home-gym","title":"Home + Gym","description":"Gym","sidebar":"tutorialSidebar"},"knowledge/biology/exercise-stretching/intro":{"id":"knowledge/biology/exercise-stretching/intro","title":"Exercise / Stretching","description":"Your entire life happens inside your body. It\'s the one home you will always occupy and can never sell.","sidebar":"tutorialSidebar"},"knowledge/biology/exercise-stretching/readme":{"id":"knowledge/biology/exercise-stretching/readme","title":"Exercise / Stretching","description":"- Exercise / Stretching","sidebar":"tutorialSidebar"},"knowledge/biology/genetics":{"id":"knowledge/biology/genetics","title":"Genetics","description":"Phenotype","sidebar":"tutorialSidebar"},"knowledge/biology/human-skeleton":{"id":"knowledge/biology/human-skeleton","title":"Human Skeleton","description":"Thehuman skeletonis the internal framework of the body. It is composed of around 270 bones at birth -- this total decreases to around 206 bones by adulthood after some bones get fused together.The bone mass in the skeleton reaches maximum density around age 21. The human skeleton can be divided into the axial skeleton and the appendicular skeleton. The axial skeleton is formed by the vertebral column, the rib cage, the skull and other associated bones. The appendicular skeleton, which is attached to the axial skeleton, is formed by the shoulder girdle, the pelvic girdle and the bones of the upper and lower limbs.","sidebar":"tutorialSidebar"},"knowledge/biology/intro":{"id":"knowledge/biology/intro","title":"Biology","description":"Live longer","sidebar":"tutorialSidebar"},"knowledge/biology/mbbs-medicine-medical-health":{"id":"knowledge/biology/mbbs-medicine-medical-health","title":"MBBS / Medicine / Medical / Health","description":"The Map of Medicine - YouTube","sidebar":"tutorialSidebar"},"knowledge/biology/muscles":{"id":"knowledge/biology/muscles","title":"Muscles","description":"Muscles","sidebar":"tutorialSidebar"},"knowledge/biology/nerves-system":{"id":"knowledge/biology/nerves-system","title":"Nerves System","description":"Your cranial nerves are pairs of nerves that connect your brain to different parts of your head, neck, and trunk. There are 12 of them, each named for their function or structure.","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/chart":{"id":"knowledge/biology/nutrition/chart","title":"Chart","description":"Sodium is a necessary mineral. But health organizations typically recommend that healthy adults limit sodium intake to less than 2,300 mg (about one teaspoon of salt) per day to prevent conditions like high blood pressure.","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/daily-requirements":{"id":"knowledge/biology/nutrition/daily-requirements","title":"Daily Requirements","description":"Macronutrients","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/diet":{"id":"knowledge/biology/nutrition/diet","title":"Diet","description":"Humans evolved for Feast - famine","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/ecology":{"id":"knowledge/biology/nutrition/ecology","title":"Ecology","description":"Troglobites - animals that live in cave","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/essentiality":{"id":"knowledge/biology/nutrition/essentiality","title":"Essentiality","description":"Essential nutrients","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/fatigue":{"id":"knowledge/biology/nutrition/fatigue","title":"Fatigue","description":"1. Stress","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/food":{"id":"knowledge/biology/nutrition/food","title":"Food","description":"The way you eat not only decides your physical health, but the very way you think, feel, and experience life. -- Sadhguru","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/honey":{"id":"knowledge/biology/nutrition/honey","title":"Honey","description":"1. Honey is the only food that has every single substance to sustain life.","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/intro":{"id":"knowledge/biology/nutrition/intro","title":"Nutrition","description":"Biohacking","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/plants-gardening":{"id":"knowledge/biology/nutrition/plants-gardening","title":"Plants / Gardening","description":"Aloe vera, English ivy air purifying plants","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/pulses-daal-lentils":{"id":"knowledge/biology/nutrition/pulses-daal-lentils","title":"Pulses / Daal / Lentils","description":"How To identify Indian Dals | Basic Cooking Skills For Beginners | Easy Guide To Lentils & Pulses - YouTube","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/readme":{"id":"knowledge/biology/nutrition/readme","title":"Nutrition","description":"- Nutrition","sidebar":"tutorialSidebar"},"knowledge/biology/nutrition/recipe":{"id":"knowledge/biology/nutrition/recipe","title":"Recipe","description":"Tips","sidebar":"tutorialSidebar"},"knowledge/biology/omics":{"id":"knowledge/biology/omics","title":"Omics","description":"The branches of\xa0science\xa0known informally as\xa0omics\xa0are various disciplines in\xa0biology\xa0whose names end in the suffix\xa0-omics, such as\xa0genomics,\xa0proteomics,\xa0metabolomics,\xa0metagenomics,\xa0phenomics\xa0and\xa0transcriptomics. Omics aims at the collective characterization and quantification of pools of biological molecules that translate into the structure, function, and dynamics of an organism or organisms.","sidebar":"tutorialSidebar"},"knowledge/biology/organ-systems":{"id":"knowledge/biology/organ-systems","title":"Organ Systems","description":"1. Circulatory system:","sidebar":"tutorialSidebar"},"knowledge/biology/others":{"id":"knowledge/biology/others","title":"Others","description":"Blinkists","sidebar":"tutorialSidebar"},"knowledge/biology/pregnancy-baby":{"id":"knowledge/biology/pregnancy-baby","title":"Pregnancy / Baby","description":"Pregnancy","sidebar":"tutorialSidebar"},"knowledge/biology/readme":{"id":"knowledge/biology/readme","title":"Biology","description":"- Exercise / Stretching","sidebar":"tutorialSidebar"},"knowledge/games/chess":{"id":"knowledge/games/chess","title":"Chess","description":"King - Priceless, Queen - 9, Rook - 5, Bishop (better than knight) - 3, Knight - 3, Pawn - 1","sidebar":"tutorialSidebar"},"knowledge/games/couple-activities":{"id":"knowledge/games/couple-activities","title":"Couple Activities","description":"Activities","sidebar":"tutorialSidebar"},"knowledge/games/family-games-gifts":{"id":"knowledge/games/family-games-gifts","title":"Family Games / Gifts","description":"- Family Weekly game night","sidebar":"tutorialSidebar"},"knowledge/games/marathon-running":{"id":"knowledge/games/marathon-running","title":"Marathon / Running","description":"https://www.youtube.com/watch?v=b-iGZPtWXzE","sidebar":"tutorialSidebar"},"knowledge/games/others":{"id":"knowledge/games/others","title":"Others","description":"PC Games","sidebar":"tutorialSidebar"},"knowledge/games/readme":{"id":"knowledge/games/readme","title":"Games","description":"- Sudoku Techniques","sidebar":"tutorialSidebar"},"knowledge/games/rubix-rubics-cube":{"id":"knowledge/games/rubix-rubics-cube","title":"Rubix Rubics Cube","description":"Formulas","sidebar":"tutorialSidebar"},"knowledge/games/skiing-sking":{"id":"knowledge/games/skiing-sking","title":"Skiing / Sking","description":"- Stance","sidebar":"tutorialSidebar"},"knowledge/games/sudoku-techniques":{"id":"knowledge/games/sudoku-techniques","title":"Sudoku Techniques","description":"https://www.learn-sudoku.com/basic-techniques.html","sidebar":"tutorialSidebar"},"knowledge/games/swimming":{"id":"knowledge/games/swimming","title":"Swimming","description":"0. Warm Up Exercises","sidebar":"tutorialSidebar"},"knowledge/games/touch-typing":{"id":"knowledge/games/touch-typing","title":"Touch Typing","description":"Hunt and Peck Typing","sidebar":"tutorialSidebar"},"knowledge/general/important-dates-timelines":{"id":"knowledge/general/important-dates-timelines","title":"Important Dates / Timelines","description":"| | |","sidebar":"tutorialSidebar"},"knowledge/general/intro":{"id":"knowledge/general/intro","title":"Intro","description":"Knowledge is a familiarity, awareness, or understanding of someone or something, such as facts, information, descriptions, or skills, which is acquired through experience or education by perceiving, discovering), or learning.","sidebar":"tutorialSidebar"},"knowledge/general/knowledge-of-humanity":{"id":"knowledge/general/knowledge-of-humanity","title":"Knowledge of Humanity","description":"Humanities","sidebar":"tutorialSidebar"},"knowledge/general/mental-models":{"id":"knowledge/general/mental-models","title":"Mental Models","description":"Links","sidebar":"tutorialSidebar"},"knowledge/general/others":{"id":"knowledge/general/others","title":"Others","description":"Top 20 Indexes of 2022 | For all competitive exams - YouTube","sidebar":"tutorialSidebar"},"knowledge/general/outline-of-knowledge":{"id":"knowledge/general/outline-of-knowledge","title":"Outline of Knowledge","description":"Knowledge is making the right choice with all the information.","sidebar":"tutorialSidebar"},"knowledge/general/readme":{"id":"knowledge/general/readme","title":"General","description":"- Intro","sidebar":"tutorialSidebar"},"knowledge/general/science":{"id":"knowledge/general/science","title":"Science","description":"Science is not a collection of facts about the world. That is called knowledge.","sidebar":"tutorialSidebar"},"knowledge/geography/continents":{"id":"knowledge/geography/continents","title":"Continents","description":"| Continent | Area (km\xb2) | Area (mi\xb2) | Percent total landmass | Population | Percent total pop. | Most populous city |","sidebar":"tutorialSidebar"},"knowledge/geography/countries":{"id":"knowledge/geography/countries","title":"Countries","description":"Apps","sidebar":"tutorialSidebar"},"knowledge/geography/home-house-building":{"id":"knowledge/geography/home-house-building","title":"Home / House Building","description":"Glass Types - Know The Different Types of Window Glass & Their Uses | AIS Glass","sidebar":"tutorialSidebar"},"knowledge/geography/india":{"id":"knowledge/geography/india","title":"India","description":"Population Distribution","sidebar":"tutorialSidebar"},"knowledge/geography/indian-states-and-uts":{"id":"knowledge/geography/indian-states-and-uts","title":"Indian States and UTs","description":"India is a federal union comprising 28 states and 9 union territories, for a total of 37 entities. The states and union territories are further subdivided into districts and smaller administrative divisions.","sidebar":"tutorialSidebar"},"knowledge/geography/living":{"id":"knowledge/geography/living","title":"Living","description":"Digital Nomad","sidebar":"tutorialSidebar"},"knowledge/geography/new-home-place-house":{"id":"knowledge/geography/new-home-place-house","title":"New Home / Place Buying / House","description":"Living","sidebar":"tutorialSidebar"},"knowledge/geography/others":{"id":"knowledge/geography/others","title":"Others","description":"Summer Solstice - 21 June, 22 June","sidebar":"tutorialSidebar"},"knowledge/geography/readme":{"id":"knowledge/geography/readme","title":"Geography","description":"- Continents","sidebar":"tutorialSidebar"},"knowledge/geography/rivers":{"id":"knowledge/geography/rivers","title":"Rivers","description":"Important Geographical Terms Features Landforms Of Earth","sidebar":"tutorialSidebar"},"knowledge/geography/wildlife":{"id":"knowledge/geography/wildlife","title":"Wildlife","description":"IUCN Red List of Threatened Species","sidebar":"tutorialSidebar"},"knowledge/history/crash-course-history-of-science":{"id":"knowledge/history/crash-course-history-of-science","title":"Crash Course History of Science","description":"Nullius in verba - in no one words","sidebar":"tutorialSidebar"},"knowledge/history/crash-course-world-history":{"id":"knowledge/history/crash-course-world-history","title":"Crash Course World History","description":"Crash Course World History 1","sidebar":"tutorialSidebar"},"knowledge/history/histomap":{"id":"knowledge/history/histomap","title":"Histomap","description":"Timeline of World History | Major Time Periods & Ages","sidebar":"tutorialSidebar"},"knowledge/history/human-history-anthropology":{"id":"knowledge/history/human-history-anthropology","title":"Human History / Anthropology","description":"Human Origins 101 | National Geographic - YouTube","sidebar":"tutorialSidebar"},"knowledge/history/indian-history-timeline":{"id":"knowledge/history/indian-history-timeline","title":"Indian History Timeline","description":"Books","sidebar":"tutorialSidebar"},"knowledge/history/others":{"id":"knowledge/history/others","title":"Others","description":"Blinkist - The future is history","sidebar":"tutorialSidebar"},"knowledge/history/readme":{"id":"knowledge/history/readme","title":"History","description":"- Histomap","sidebar":"tutorialSidebar"},"knowledge/history/religion":{"id":"knowledge/history/religion","title":"Religion","description":"What has religion done for this world? - Quora","sidebar":"tutorialSidebar"},"knowledge/language/figures-of-speech":{"id":"knowledge/language/figures-of-speech","title":"Figures of Speech","description":"A word or phrase used in a non-literal sense for rhetorical or vivid effect","sidebar":"tutorialSidebar"},"knowledge/language/general":{"id":"knowledge/language/general","title":"General","description":"Subject Object Verbs","sidebar":"tutorialSidebar"},"knowledge/language/grammer-vocabulary":{"id":"knowledge/language/grammer-vocabulary","title":"Grammer / Vocabulary","description":"In linguistics]$1 $2) is the set of [structural rules governing the composition of clauses), phrases and words in a natural language. The term refers also to the study of such rules and this field includes phonology, morphology) and syntax, often complemented by phonetics, semantics and pragmatics.","sidebar":"tutorialSidebar"},"knowledge/language/languages-others":{"id":"knowledge/language/languages-others","title":"Languages Others","description":"What Is Wrong With Hindi? - YouTube","sidebar":"tutorialSidebar"},"knowledge/language/linguistics":{"id":"knowledge/language/linguistics","title":"Linguistics","description":"Writing Systems of the World | Abjads, Alphabets, Abugidas, Syllabaries & Logosyllabaries","sidebar":"tutorialSidebar"},"knowledge/language/mistakes":{"id":"knowledge/language/mistakes","title":"Mistakes","description":"Usage Mistakes","sidebar":"tutorialSidebar"},"knowledge/language/parts-of-speech":{"id":"knowledge/language/parts-of-speech","title":"Parts of Speech","description":"The eight parts of speech are nouns, pronouns, verbs, adjectives, adverbs, conjunctions, prepositions, and interjections.","sidebar":"tutorialSidebar"},"knowledge/language/readme":{"id":"knowledge/language/readme","title":"Language","description":"- General","sidebar":"tutorialSidebar"},"knowledge/language/spanish":{"id":"knowledge/language/spanish","title":"Spanish","description":"Duolingo Spanish Podcast","sidebar":"tutorialSidebar"},"knowledge/law/constitution-of-india/constitution":{"id":"knowledge/law/constitution-of-india/constitution","title":"Constitution of India","description":"Original","sidebar":"tutorialSidebar"},"knowledge/law/constitution-of-india/others":{"id":"knowledge/law/constitution-of-india/others","title":"Others","description":"9 Dec 1946 - Started writing","sidebar":"tutorialSidebar"},"knowledge/law/constitution-of-india/schedules":{"id":"knowledge/law/constitution-of-india/schedules","title":"Schedules","description":"Schedules - Additional details (like languages list)","sidebar":"tutorialSidebar"},"knowledge/law/judgements-2023":{"id":"knowledge/law/judgements-2023","title":"Judgements 2023","description":"25 Judgements of 2023","sidebar":"tutorialSidebar"},"knowledge/law/laws":{"id":"knowledge/law/laws","title":"Laws","description":"Thoughts","sidebar":"tutorialSidebar"},"knowledge/law/lsat":{"id":"knowledge/law/lsat","title":"LSAT","description":"LSAT (Law School Admission Test) (Score - 120 to 180, above 160 is good)","sidebar":"tutorialSidebar"},"knowledge/law/mcat":{"id":"knowledge/law/mcat","title":"MCAT","description":"CARS - Critical Analysis and Reasoning Skills","sidebar":"tutorialSidebar"},"knowledge/law/others":{"id":"knowledge/law/others","title":"Others","description":"RPAD (Registered Post with Acknowledgement Due)","sidebar":"tutorialSidebar"},"knowledge/law/readme":{"id":"knowledge/law/readme","title":"Law","description":"- Laws","sidebar":"tutorialSidebar"},"knowledge/links":{"id":"knowledge/links","title":"Links","description":"Daily","sidebar":"tutorialSidebar"},"knowledge/others/chemistry-outline":{"id":"knowledge/others/chemistry-outline","title":"Chemistry","description":"- Agrochemistry","sidebar":"tutorialSidebar"},"knowledge/others/climate-change":{"id":"knowledge/others/climate-change","title":"Climate Change","description":"Earth overshoot day - 27 July","sidebar":"tutorialSidebar"},"knowledge/others/clothes-textiles":{"id":"knowledge/others/clothes-textiles","title":"Cloth Fibers / Textiles","description":"1. Cotton","sidebar":"tutorialSidebar"},"knowledge/others/education-phd":{"id":"knowledge/others/education-phd","title":"Education / PhD","description":"Education is not preparation for life; education is life itself.","sidebar":"tutorialSidebar"},"knowledge/others/international-relations-ir":{"id":"knowledge/others/international-relations-ir","title":"International Relations IR","description":"In international relations there are no permanent friends or enemies only permanent interests","sidebar":"tutorialSidebar"},"knowledge/others/mythology":{"id":"knowledge/others/mythology","title":"Mythology","description":"Akshay Patra","sidebar":"tutorialSidebar"},"knowledge/others/news-problems":{"id":"knowledge/others/news-problems","title":"News / Problems","description":"\\"We are in a debt trap\\" - Nouriel Roubini on 10 \u2018megathreats\u2019 to our world and how to stop them - YouTube","sidebar":"tutorialSidebar"},"knowledge/others/others":{"id":"knowledge/others/others","title":"Others","description":"Poverty","sidebar":"tutorialSidebar"},"knowledge/others/philosophy":{"id":"knowledge/others/philosophy","title":"Philosophy","description":"Outline","sidebar":"tutorialSidebar"},"knowledge/others/politics/indian-polity":{"id":"knowledge/others/politics/indian-polity","title":"India Polity","description":"Complete M Laxmikanth Polity in 100 Parts by Dr Sidharth Arora | Crack UPSC CSE/IAS 2021/22/23","sidebar":"tutorialSidebar"},"knowledge/others/politics/others":{"id":"knowledge/others/politics/others","title":"Others","description":"Free Speech","sidebar":"tutorialSidebar"},"knowledge/others/politics/readme":{"id":"knowledge/others/politics/readme","title":"Politics","description":"Lennon will always remain a freedom seeker, a liberal globalizer who dreamed of a world with no country, with nothing to kill or die for, and no religion too. Impossible? Maybe , but dreams need to go beyond the mere possible.","sidebar":"tutorialSidebar"},"knowledge/others/politics/types-of-governments":{"id":"knowledge/others/politics/types-of-governments","title":"Types of Governments","description":"turtles move slow, the government moves slower","sidebar":"tutorialSidebar"},"knowledge/others/readme":{"id":"knowledge/others/readme","title":"Others","description":"- Politics","sidebar":"tutorialSidebar"},"knowledge/physics/astronomy":{"id":"knowledge/physics/astronomy","title":"Astronomy","description":"Earth\'s motion around the Sun, not as simple as I thought","sidebar":"tutorialSidebar"},"knowledge/physics/crash-course-physics":{"id":"knowledge/physics/crash-course-physics","title":"Crash Course Physics","description":"1. Motion in a Straight Line","sidebar":"tutorialSidebar"},"knowledge/physics/intro":{"id":"knowledge/physics/intro","title":"Intro","description":"1. Retrocausality - That future can effect the past. Ex - if I spill the coffee tomorrow then I can see the stain today.","sidebar":"tutorialSidebar"},"knowledge/physics/khan-academy-physics":{"id":"knowledge/physics/khan-academy-physics","title":"Khan Academy Physics","description":"1. One-dimensional motion","sidebar":"tutorialSidebar"},"knowledge/physics/others":{"id":"knowledge/physics/others","title":"Others","description":"Wave-particle duality","sidebar":"tutorialSidebar"},"knowledge/physics/readme":{"id":"knowledge/physics/readme","title":"Physics","description":"- Intro","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/business-management":{"id":"knowledge/quotes-proverbs/business-management","title":"Business / Management","description":"97.42% is a fictional number that figuratively conveys the idea of a significant percentage","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/coding":{"id":"knowledge/quotes-proverbs/coding","title":"Coding","description":"Only ~0.3% of the world\'s population today can code, and this small group has built all of the world\'s ~6.3 million mobile apps. Which means that 99.7% of the world fully depends on 0.3%, which is huge","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/funny":{"id":"knowledge/quotes-proverbs/funny","title":"Funny","description":"Once I was travelling by train from Mumbai to Delhi!","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/habits":{"id":"knowledge/quotes-proverbs/habits","title":"Habits","description":"When in doubt do","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/hindi":{"id":"knowledge/quotes-proverbs/hindi","title":"Hindi","description":"\u0930\u0939\u093f\u092e\u0928 \u0927\u093e\u0917\u093e \u092a\u094d\u0930\u0947\u092e \u0915\u093e, \u092e\u0924 \u0924\u094b\u0930\u094b \u091a\u091f\u0915\u093e\u092f | \u091f\u0942\u091f\u0947 \u092a\u0947 \u092b\u093f\u0930 \u0928\u093e \u091c\u0941\u0930\u0947, \u091c\u0941\u0930\u0947 \u0917\u093e\u0901\u0920 \u092a\u0930\u0940 \u091c\u093e\u092f || -- Kabir Doha","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/life":{"id":"knowledge/quotes-proverbs/life","title":"Life","description":"It\u2019s almost always about money.","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/motivation":{"id":"knowledge/quotes-proverbs/motivation","title":"Motivation","description":"Quotes","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/my-quotes":{"id":"knowledge/quotes-proverbs/my-quotes","title":"My Quotes","description":"Pros outweight the cons","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/poems":{"id":"knowledge/quotes-proverbs/poems","title":"Poems","description":"The Cookie Thief by Valerie Cox","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/readme":{"id":"knowledge/quotes-proverbs/readme","title":"Quotes Proverbs","description":"- Life","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/science":{"id":"knowledge/quotes-proverbs/science","title":"Science","description":"Science is a 6 decimal approximation to real knowledge","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/stories":{"id":"knowledge/quotes-proverbs/stories","title":"Stories","description":"Two men were sent to Africa on reporting if shoes can be a viable business.","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/tatoos-quotes":{"id":"knowledge/quotes-proverbs/tatoos-quotes","title":"Tatoos Quotes","description":"||||| (number of jobs you changed, getting new line when get a new job)","sidebar":"tutorialSidebar"},"knowledge/quotes-proverbs/tips":{"id":"knowledge/quotes-proverbs/tips","title":"Tips","description":"To improve, compare little things.","sidebar":"tutorialSidebar"},"knowledge/readme":{"id":"knowledge/readme","title":"Knowledge","description":"- General","sidebar":"tutorialSidebar"},"knowledge/youtube-podcasts-magazine-apps":{"id":"knowledge/youtube-podcasts-magazine-apps","title":"Youtube / Podcasts / Magazine / Apps","description":"Youtube","sidebar":"tutorialSidebar"},"languages/c++/constructor":{"id":"languages/c++/constructor","title":"Constructor","description":"1. Default Constructor","sidebar":"tutorialSidebar"},"languages/c++/frameworks":{"id":"languages/c++/frameworks","title":"Frameworks","description":"Qt (pronounced cute)","sidebar":"tutorialSidebar"},"languages/c++/friend-function":{"id":"languages/c++/friend-function","title":"Friend Function","description":"A friend function of a class is defined outside that class\' scope but it has the right to access all private and protected members of the class. Even though the prototypes for friend functions appear in the class definition, friends are not member functions.","sidebar":"tutorialSidebar"},"languages/c++/header-files":{"id":"languages/c++/header-files","title":"Header files","description":"","sidebar":"tutorialSidebar"},"languages/c++/intro":{"id":"languages/c++/intro","title":"Intro","description":"C++ is a compiled language. For a program to run, its source text has to be processed by a compiler, producing object files, which are combined by a linker yielding an executable program. A C++ program typically consists of many source code files (usually simply called source files).","sidebar":"tutorialSidebar"},"languages/c++/io":{"id":"languages/c++/io","title":"IO","description":"Char input","sidebar":"tutorialSidebar"},"languages/c++/others":{"id":"languages/c++/others","title":"Others","description":"Log2","sidebar":"tutorialSidebar"},"languages/c++/printf":{"id":"languages/c++/printf","title":"printf","description":"A format specifier follows this prototype:","sidebar":"tutorialSidebar"},"languages/c++/readme":{"id":"languages/c++/readme","title":"C++","description":"- Intro","sidebar":"tutorialSidebar"},"languages/c++/stl-containers":{"id":"languages/c++/stl-containers","title":"STL Containers","description":"1. Sequences","sidebar":"tutorialSidebar"},"languages/c++/stl-iterators-algorithms":{"id":"languages/c++/stl-iterators-algorithms","title":"STL Iterators Algorithms","description":"C++ Iterators","sidebar":"tutorialSidebar"},"languages/c++/storage-classes":{"id":"languages/c++/storage-classes","title":"Storage classes","description":"https://www.tutorialspoint.com/cplusplus/cppstorageclasses.htm","sidebar":"tutorialSidebar"},"languages/c++/tc-pl4":{"id":"languages/c++/tc-pl4","title":"TC++PL4","description":"Part I: Introductory Material","sidebar":"tutorialSidebar"},"languages/c++/templates":{"id":"languages/c++/templates","title":"Templates","description":"http://www.geeksforgeeks.org/templates-cpp","sidebar":"tutorialSidebar"},"languages/frameworks/android/jetpack":{"id":"languages/frameworks/android/jetpack","title":"Jetpack","description":"Jetpack is a set of libraries, tools and architectural guidance to help make it quick and easy to build great Android apps. It provides common infrastructure code so you can focus on what makes your app unique.","sidebar":"tutorialSidebar"},"languages/frameworks/android/kotlin":{"id":"languages/frameworks/android/kotlin","title":"Kotlin","description":"https://proandroiddev.com/android-unidirectional-state-flow-without-rx-596f2f7637bb","sidebar":"tutorialSidebar"},"languages/frameworks/android/questions":{"id":"languages/frameworks/android/questions","title":"Questions","description":"Activity Lifecycle","sidebar":"tutorialSidebar"},"languages/frameworks/android/readme":{"id":"languages/frameworks/android/readme","title":"Android","description":"- jetpack","sidebar":"tutorialSidebar"},"languages/frameworks/android/service":{"id":"languages/frameworks/android/service","title":"Service","description":"A Service is an application component that can perform long-running operations in the background. It does not provide a user interface. Once started, a service might continue running for some time, even after the user switches to another application. Additionally, a component can bind to a service to interact with it and even perform interprocess communication (IPC). For example, a service can handle network transactions, play music, perform file I/O, or interact with a content provider, all from the background.","sidebar":"tutorialSidebar"},"languages/frameworks/android/testing":{"id":"languages/frameworks/android/testing","title":"Testing","description":"Android Code analysis tools","sidebar":"tutorialSidebar"},"languages/frameworks/android/tools":{"id":"languages/frameworks/android/tools","title":"Tools","description":"- Hierarchy Viewer","sidebar":"tutorialSidebar"},"languages/frameworks/comparison":{"id":"languages/frameworks/comparison","title":"Comparison","description":"Python vs Nodejs","sidebar":"tutorialSidebar"},"languages/frameworks/dash":{"id":"languages/frameworks/dash","title":"Dash","description":"Dash is a productive Python framework for building web applications.","sidebar":"tutorialSidebar"},"languages/frameworks/flutter":{"id":"languages/frameworks/flutter","title":"Flutter","description":"Flutter is used to develop apps that run on Android and iOS and deliver the same user experience. Flutter will also be able to target Fuchsia, the upcoming OS from Google","sidebar":"tutorialSidebar"},"languages/frameworks/intro":{"id":"languages/frameworks/intro","title":"Intro","description":"Web Framework","sidebar":"tutorialSidebar"},"languages/frameworks/ios":{"id":"languages/frameworks/ios","title":"iOS","description":"- Swift, Objective-C","sidebar":"tutorialSidebar"},"languages/frameworks/masonite":{"id":"languages/frameworks/masonite","title":"Masonite","description":"The Modern And Developer Centric Python Web Framework.","sidebar":"tutorialSidebar"},"languages/frameworks/others":{"id":"languages/frameworks/others","title":"Others","description":"OpenCL","sidebar":"tutorialSidebar"},"languages/frameworks/readme":{"id":"languages/frameworks/readme","title":"Frameworks","description":"- Intro","sidebar":"tutorialSidebar"},"languages/frameworks/server-driven-mobile-uis":{"id":"languages/frameworks/server-driven-mobile-uis","title":"Server Driven Mobile UIs","description":"Apps","sidebar":"tutorialSidebar"},"languages/frameworks/stacks":{"id":"languages/frameworks/stacks","title":"Stacks","description":"Java stack","sidebar":"tutorialSidebar"},"languages/golang/concepts":{"id":"languages/golang/concepts","title":"Concepts","description":"Goroutines & Channels","sidebar":"tutorialSidebar"},"languages/golang/data-types":{"id":"languages/golang/data-types","title":"Data Types","description":"1. Boolean types","sidebar":"tutorialSidebar"},"languages/golang/examples":{"id":"languages/golang/examples","title":"Examples","description":"https://github.com/marcel-dempers/docker-development-youtube-series/blob/master/messaging/rabbitmq/applications/publisher/publisher.go","sidebar":"tutorialSidebar"},"languages/golang/hello-world":{"id":"languages/golang/hello-world","title":"Hello World","description":"hello.go","sidebar":"tutorialSidebar"},"languages/golang/interview-questions":{"id":"languages/golang/interview-questions","title":"Interview Questions","description":"1. Using\xa0sync.Mutex\xa0in Go","sidebar":"tutorialSidebar"},"languages/golang/intro":{"id":"languages/golang/intro","title":"Intro","description":"Go language is a programming language initially developed at Google in the year 2007 by Robert Griesemer, Rob Pike, and Ken Thompson. It is a statically-typed language having syntax similar to that of C.","sidebar":"tutorialSidebar"},"languages/golang/readme":{"id":"languages/golang/readme","title":"golang","description":"- Intro","sidebar":"tutorialSidebar"},"languages/golang/syntax":{"id":"languages/golang/syntax","title":"Syntax","description":"Reserved Words","sidebar":"tutorialSidebar"},"languages/golang/testing":{"id":"languages/golang/testing","title":"Testing","description":"|Tool|Description|Features|Pros|Cons|","sidebar":"tutorialSidebar"},"languages/golang/tools":{"id":"languages/golang/tools","title":"Tools","description":"dep","sidebar":"tutorialSidebar"},"languages/java/collections":{"id":"languages/java/collections","title":"Collections","description":"Acollection--- sometimes called a container - is simply an object that groups multiple elements into a single unit. Collections are used to store, retrieve, manipulate, and communicate aggregate data.","sidebar":"tutorialSidebar"},"languages/java/comparable-interface":{"id":"languages/java/comparable-interface","title":"Comparable Interface","description":"image","sidebar":"tutorialSidebar"},"languages/java/concurrency":{"id":"languages/java/concurrency","title":"Concurrency","description":"Concurrent Modification","sidebar":"tutorialSidebar"},"languages/java/defining-constants":{"id":"languages/java/defining-constants","title":"Defining Constants","description":"","sidebar":"tutorialSidebar"},"languages/java/frameworks":{"id":"languages/java/frameworks","title":"Frameworks","description":"Micronaut","sidebar":"tutorialSidebar"},"languages/java/hash-collection":{"id":"languages/java/hash-collection","title":"Hash Collection","description":"SparseArray","sidebar":"tutorialSidebar"},"languages/java/intro":{"id":"languages/java/intro","title":"Intro","description":"Installation","sidebar":"tutorialSidebar"},"languages/java/jmx":{"id":"languages/java/jmx","title":"JMX","description":"The Java Management Extensions (JMX) API is a standard -developed through the\xa0Java Community Process\xa0(JCP) as\xa0JSR 3-for managing and monitoring applications and services. It defines a management architecture, design patterns, APIs, and services for building web-based, distributed, dynamic, and modular solutions to manage Java-enabled resources. The JMX APIs make it possible to add manageability to Java-enabled equipment, from web phones to set-top boxes to network devices and servers. Using JMX technology to manage applications and services increases their value to vendors and clients by making applications easier to install, configure, and maintain.","sidebar":"tutorialSidebar"},"languages/java/jvm-architecture":{"id":"languages/java/jvm-architecture","title":"JVM Architecture","description":"image","sidebar":"tutorialSidebar"},"languages/java/knowledge":{"id":"languages/java/knowledge","title":"Knowledge","description":"- Parent class can hold child class reference but not vice-versa","sidebar":"tutorialSidebar"},"languages/java/lambda-expressions":{"id":"languages/java/lambda-expressions","title":"Lambda Expressions","description":"A lambda expression is an unnamed function with parameters and a body.","sidebar":"tutorialSidebar"},"languages/java/libraries":{"id":"languages/java/libraries","title":"Libraries","description":"jvisualvm","sidebar":"tutorialSidebar"},"languages/java/others":{"id":"languages/java/others","title":"Others","description":"Jshell for java REPL (Read-Eval-Print Loop, interactive toplevel or language shell)","sidebar":"tutorialSidebar"},"languages/java/questions":{"id":"languages/java/questions","title":"Questions","description":"Topics","sidebar":"tutorialSidebar"},"languages/java/readme":{"id":"languages/java/readme","title":"Java","description":"- Intro","sidebar":"tutorialSidebar"},"languages/java/reflection":{"id":"languages/java/reflection","title":"Reflection","description":"Reflection is an api used to examine or modify the behavior of methods, classes or interfaces at runtime.","sidebar":"tutorialSidebar"},"languages/java/spring":{"id":"languages/java/spring","title":"Spring","description":"Spring Boot","sidebar":"tutorialSidebar"},"languages/java/template-fastio":{"id":"languages/java/template-fastio","title":"Template FastIO","description":"","sidebar":"tutorialSidebar"},"languages/java/threading-in-javafx":{"id":"languages/java/threading-in-javafx","title":"Threading in JavaFX","description":"JavaFX Scene Graph","sidebar":"tutorialSidebar"},"languages/others/erlang":{"id":"languages/others/erlang","title":"Erlang","description":"Erlang is a programming language used to build massively scalable soft real-time systems with requirements on high availability. Some of its uses are in telecoms, banking, e-commerce, computer telephony and instant messaging. Erlang\'s runtime system has built-in support for concurrency, distribution and fault tolerance.","sidebar":"tutorialSidebar"},"languages/others/general":{"id":"languages/others/general","title":"General","description":"Domain Specific Languages (DSLs)","sidebar":"tutorialSidebar"},"languages/others/javascript-templating":{"id":"languages/others/javascript-templating","title":"JavaScript Templating","description":"https://medium.com/@BuildMySite1/javascript-templating-what-is-templating-7ff49d97db6b","sidebar":"tutorialSidebar"},"languages/others/json":{"id":"languages/others/json","title":"JSON","description":"JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. It is based on a subset of the JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999. JSON is a text format that is completely language independent but uses conventions that are familiar to programmers of the C-family of languages, including C, C++, C#, Java, JavaScript, Perl, Python, and many others. These properties make JSON an ideal data-interchange language.","sidebar":"tutorialSidebar"},"languages/others/markdown":{"id":"languages/others/markdown","title":"Markdown","description":"Markdown is a way to style text on the web. You control the display of the document; formatting words as bold or italic, adding images, and creating lists are just a few of the things we can do with Markdown. Mostly, Markdown is just regular text with a few non-alphabetic characters thrown in, like # or *.","sidebar":"tutorialSidebar"},"languages/others/other-languages":{"id":"languages/others/other-languages","title":"Other Languages","description":"https://dev.to/raygun/top-43-programming-languages-when-and-how-to-use-them-515n","sidebar":"tutorialSidebar"},"languages/others/r-language":{"id":"languages/others/r-language","title":"R","description":"Introduction","sidebar":"tutorialSidebar"},"languages/others/readme":{"id":"languages/others/readme","title":"Other Languages","description":"- General","sidebar":"tutorialSidebar"},"languages/others/regular-expressions-regex":{"id":"languages/others/regular-expressions-regex","title":"Regular Expressions / Regex","description":"Its different from wildcards (Wildcards have very few metacharacters than Regular Expressions)","sidebar":"tutorialSidebar"},"languages/others/ruby":{"id":"languages/others/ruby","title":"Ruby","description":"Gems","sidebar":"tutorialSidebar"},"languages/others/rust":{"id":"languages/others/rust","title":"Rust","description":"Rust is a multi-paradigmsystem programming language focused on safety, especially safe concurrency).Rust is syntactically) similar to C++, but is designed to provide better memory safety while maintaining high performance).","sidebar":"tutorialSidebar"},"languages/others/scala":{"id":"languages/others/scala","title":"Scala","description":"Scalais a general-purposeprogramming language providing support for functional programming and a strong statictype system. Designed to be concise, many of Scala\'s design decisions aimed to address criticisms of Java.","sidebar":"tutorialSidebar"},"languages/others/swift":{"id":"languages/others/swift","title":"Swift","description":"Basic Syntax -","sidebar":"tutorialSidebar"},"languages/others/tla-plus":{"id":"languages/others/tla-plus","title":"TLA+","description":"TLA+(pronounced astee ell a plus, /\u02c8ti\u02d0\u025ble\u026apl\u028cs/) is a formal specification language developed by Leslie Lamport. It is used to design, model, document, and verify concurrent systems. TLA+has been described as exhaustively-testable pseudocode, and its use likened to drawing blueprints for software systems;TLAis an acronym for Temporal Logic of Actions.","sidebar":"tutorialSidebar"},"languages/others/toml":{"id":"languages/others/toml","title":"TOML","description":"Tom\'s Obvious, Minimal Language","sidebar":"tutorialSidebar"},"languages/others/web-assembly":{"id":"languages/others/web-assembly","title":"Web Assembly","description":"https://medium.com/javascript-scene/what-is-webassembly-the-dawn-of-a-new-era-61256ec5a8f6","sidebar":"tutorialSidebar"},"languages/others/yaml":{"id":"languages/others/yaml","title":"Yaml","description":"YAML Ain\'t Markup Language is a data serialization language that matches user\'s expectations about data. It designed to be human friendly and works perfectly with other programming languages. It is useful to manage data and includes Unicode printable characters. This chapter will give you an introduction to YAML and gives you an idea about its features.","sidebar":"tutorialSidebar"},"languages/php/codeigniter/application-architecture":{"id":"languages/php/codeigniter/application-architecture","title":"Application Architecture","description":"Application Architecture","sidebar":"tutorialSidebar"},"languages/php/codeigniter/basic-concepts":{"id":"languages/php/codeigniter/basic-concepts","title":"Basic Concepts","description":"Routing","sidebar":"tutorialSidebar"},"languages/php/codeigniter/commands":{"id":"languages/php/codeigniter/commands","title":"Commands","description":"Dockerfile","sidebar":"tutorialSidebar"},"languages/php/codeigniter/configurations":{"id":"languages/php/codeigniter/configurations","title":"Configurations","description":"The database of the site can be configured in application/config/database.php file. Often we need to set up database for different environment like development and production. With the multidimensional array provided in the CodeIgniter, we can setup database for different environment. The configuration settings are stored in the array as shown below \u2212","sidebar":"tutorialSidebar"},"languages/php/codeigniter/helpers-functions":{"id":"languages/php/codeigniter/helpers-functions","title":"Helpers / Functions","description":"As the name suggests, it will help you build your system. It is divided into small functions to serve different functionality. A number of helpers are available in CodeIgniter, which are listed in the table below. We can build our own helpers too.","sidebar":"tutorialSidebar"},"languages/php/codeigniter/http":{"id":"languages/php/codeigniter/http","title":"HTTP","description":"Working with Requests and Responses","sidebar":"tutorialSidebar"},"languages/php/codeigniter/intro":{"id":"languages/php/codeigniter/intro","title":"CodeIgniter","description":"CodeIgniter is a powerful PHP framework with a very small footprint, built for developers who need a simple and elegant toolkit to create full-featured web applications. CodeIgniter was created by EllisLab, and is now a project of the British Columbia Institute of Technology.","sidebar":"tutorialSidebar"},"languages/php/codeigniter/mvc":{"id":"languages/php/codeigniter/mvc","title":"MVC","description":"image","sidebar":"tutorialSidebar"},"languages/php/codeigniter/others":{"id":"languages/php/codeigniter/others","title":"Others","description":"Logging","sidebar":"tutorialSidebar"},"languages/php/codeigniter/readme":{"id":"languages/php/codeigniter/readme","title":"CodeIgnitor","description":"- CodeIgniter","sidebar":"tutorialSidebar"},"languages/php/documentation":{"id":"languages/php/documentation","title":"Documentation","description":"- Language Reference","sidebar":"tutorialSidebar"},"languages/php/example":{"id":"languages/php/example","title":"Example","description":"","sidebar":"tutorialSidebar"},"languages/php/frameworks":{"id":"languages/php/frameworks","title":"Frameworks","description":"https://kinsta.com/blog/php-frameworks","sidebar":"tutorialSidebar"},"languages/php/intro":{"id":"languages/php/intro","title":"Intro","description":"PHPis a general-purpose programming language originally designed for web development. It was originally created by Rasmus Lerdorf in 1994;the PHP reference implementation is now produced by The PHP Group.PHP originally stood forPersonal Home Page, but it now stands for the recursive initialism PHP: Hypertext Preprocessor.","sidebar":"tutorialSidebar"},"languages/php/operators":{"id":"languages/php/operators","title":"Operators","description":"- Arithmetic Operators","sidebar":"tutorialSidebar"},"languages/php/others":{"id":"languages/php/others","title":"Others","description":"PHP Package Manager","sidebar":"tutorialSidebar"},"languages/php/readme":{"id":"languages/php/readme","title":"PHP","description":"- Intro","sidebar":"tutorialSidebar"},"languages/php/syntax":{"id":"languages/php/syntax","title":"Syntax","description":"Compile-time constants","sidebar":"tutorialSidebar"},"languages/php/web-concepts":{"id":"languages/php/web-concepts","title":"Web Concepts","description":"Browser Redirection","sidebar":"tutorialSidebar"},"languages/readme":{"id":"languages/readme","title":"Languages","description":"- SQL","sidebar":"tutorialSidebar"},"languages/sql/concepts":{"id":"languages/sql/concepts","title":"Concepts","description":"Predicate","sidebar":"tutorialSidebar"},"languages/sql/cte-subquery":{"id":"languages/sql/cte-subquery","title":"CTE / Subquery","description":"SQL Subqueries","sidebar":"tutorialSidebar"},"languages/sql/databricks-sql":{"id":"languages/sql/databricks-sql","title":"Databricks SQL","description":"SQL language reference | Databricks on AWS","sidebar":"tutorialSidebar"},"languages/sql/databricks-sql-functions":{"id":"languages/sql/databricks-sql-functions","title":"Databricks SQL Functions","description":"Built-in functions | Databricks on AWS","sidebar":"tutorialSidebar"},"languages/sql/dcl-data-control-language":{"id":"languages/sql/dcl-data-control-language","title":"DCL - Data Control Language","description":"Data Control Language (DCL) / Data Management Language (DML)","sidebar":"tutorialSidebar"},"languages/sql/ddl-data-definition-language/create-table":{"id":"languages/sql/ddl-data-definition-language/create-table","title":"Create Table","description":"CREATE TABLE","sidebar":"tutorialSidebar"},"languages/sql/ddl-data-definition-language/readme":{"id":"languages/sql/ddl-data-definition-language/readme","title":"DDL - Data Definition Language","description":"DDL (Data Definition Language)","sidebar":"tutorialSidebar"},"languages/sql/ddl-data-definition-language/truncate-delete":{"id":"languages/sql/ddl-data-definition-language/truncate-delete","title":"Truncate vs Delete","description":"| Truncate | Delete |","sidebar":"tutorialSidebar"},"languages/sql/dml-data-manipulation-language":{"id":"languages/sql/dml-data-manipulation-language","title":"DML - Data Manipulation Language","description":"DML (Data Manipulation Language) commands need to be commited/rolled back","sidebar":"tutorialSidebar"},"languages/sql/dql-data-query-language/aggregation-queries":{"id":"languages/sql/dql-data-query-language/aggregation-queries","title":"Aggregation Queries","description":"AVG","sidebar":"tutorialSidebar"},"languages/sql/dql-data-query-language/analytical-queries":{"id":"languages/sql/dql-data-query-language/analytical-queries","title":"Analytical Queries","description":"Aggregate functions perform calculations based on sets of rows","sidebar":"tutorialSidebar"},"languages/sql/dql-data-query-language/readme":{"id":"languages/sql/dql-data-query-language/readme","title":"DQL - Data Query Language","description":"Gotchas / Keep in mind","sidebar":"tutorialSidebar"},"languages/sql/dql-data-query-language/window-functions":{"id":"languages/sql/dql-data-query-language/window-functions","title":"Window Functions","description":"Window functions can be simply explained as calculation functions similar to aggregating, but where normal aggregating via the GROUP BY clause combines then hides the individual rows being aggregated, window functions have access to individual rows and can add some of the attributes from those rows into the result set.","sidebar":"tutorialSidebar"},"languages/sql/functions":{"id":"languages/sql/functions","title":"Functions","description":"MySQL String Functions","sidebar":"tutorialSidebar"},"languages/sql/intro":{"id":"languages/sql/intro","title":"Intro","description":"SQL is a declarative language, you tell the system what do you want, and system figures it out how to give it to you","sidebar":"tutorialSidebar"},"languages/sql/join-algorithms":{"id":"languages/sql/join-algorithms","title":"Join Algorithms","description":"nested loop join","sidebar":"tutorialSidebar"},"languages/sql/keys":{"id":"languages/sql/keys","title":"Keys","description":"Keys","sidebar":"tutorialSidebar"},"languages/sql/operators-wildcards":{"id":"languages/sql/operators-wildcards","title":"Operators / Wildcards","description":"SQL Arithmetic Operators","sidebar":"tutorialSidebar"},"languages/sql/others":{"id":"languages/sql/others","title":"Others","description":"When should I use a unique constraint instead of a unique index","sidebar":"tutorialSidebar"},"languages/sql/partiql":{"id":"languages/sql/partiql","title":"PartiQL","description":"Data may also reside in the data lake, stored in formats that may lack schema, or may involve nesting or multiple values (e.g., Parquet, JSON). Every different type and flavor of data store may suit a particular use case, but each also comes with its own query language. The result is tight coupling between the query language and the format in which data is stored. Hence, if you want to change your data to another format, or change the database engine you use to access/process that data (which is not uncommon in a data lake world), or change the location of your data, you may also need to change your application and queries. This is a very large obstacle to the agility and flexibility needed to effectively use data lakes.","sidebar":"tutorialSidebar"},"languages/sql/postgres-commands":{"id":"languages/sql/postgres-commands","title":"Postgres Commands","description":"psql - start postgres sql query engine","sidebar":"tutorialSidebar"},"languages/sql/readme":{"id":"languages/sql/readme","title":"SQL","description":"- Intro","sidebar":"tutorialSidebar"},"languages/sql/sql-commands":{"id":"languages/sql/sql-commands","title":"SQL Commands","description":"Types","sidebar":"tutorialSidebar"},"languages/sql/sql-data-types":{"id":"languages/sql/sql-data-types","title":"SQL Data Types","description":"SQL data type rules","sidebar":"tutorialSidebar"},"languages/sql/sql-examples-queries":{"id":"languages/sql/sql-examples-queries","title":"SQL Examples / Queries","description":"Online SQL Playground with Data | W3 Schools","sidebar":"tutorialSidebar"},"languages/sql/sql-joins":{"id":"languages/sql/sql-joins","title":"SQL Joins","description":"The SQL Joins clause is used to combine records from two or more tables in a database. A JOIN is a means for combining fields from two tables by using values common to each.","sidebar":"tutorialSidebar"},"languages/sql/sql-views":{"id":"languages/sql/sql-views","title":"SQL Views","description":"Database Administrator and Database Users will face two challenges: writing complex SQL queries and securing database access. Sometimes SQL queries become more complicated due to the use of multiple joins, subqueries, and GROUP BY in a single query. To simplify such queries, you can use some proxy over the original table. Also, Sometimes from the security side, the database administrator wants to restrict direct access to the database. For example, if a table contains various columns but the user only needs 3 columns of data in such case DBA will create a virtual table of 3 columns. For both purposes, you can use the view. Views can act as a proxy or virtual table. Views reduce the complexity of SQL queries and provide secure access to underlying tables.","sidebar":"tutorialSidebar"},"languages/sql/stored-procedure":{"id":"languages/sql/stored-procedure","title":"Stored Procedure","description":"A stored procedure (also termed proc, storp, sproc, StoPro, StoredProc, StoreProc, sp, or SP) is a subroutine available to applications that access a relational database management system(RDBMS). Such procedures are stored in the database data dictionary.","sidebar":"tutorialSidebar"},"languages/sql/types":{"id":"languages/sql/types","title":"Types","description":"- SQL is a query language to operate on sets.","sidebar":"tutorialSidebar"},"management/books-blinkist-management":{"id":"management/books-blinkist-management","title":"Books / Blinkist Management","description":"Books","sidebar":"tutorialSidebar"},"management/business/business-case-studies":{"id":"management/business/business-case-studies","title":"Business Case Studies","description":"https://www.youtube.com/c/AdityaSaini1505/videos","sidebar":"tutorialSidebar"},"management/business/business-terms":{"id":"management/business/business-terms","title":"Business Terms","description":"Operating Models","sidebar":"tutorialSidebar"},"management/business/indian-market":{"id":"management/business/indian-market","title":"Indian Market","description":"Indus Valley Annual Report 2024 - Blume Ventures","sidebar":"tutorialSidebar"},"management/business/readme":{"id":"management/business/readme","title":"Business","description":"https://hbr.org","sidebar":"tutorialSidebar"},"management/business/service-based-model":{"id":"management/business/service-based-model","title":"Service Based Model","description":"Dedicated Team","sidebar":"tutorialSidebar"},"management/community-building":{"id":"management/community-building","title":"Community Building","description":"Companies like Atlassian, Glossier, Datadog, Twitch, dbt, Salesforce, Peloton, and many others have succeeded in large part due to the passionate community they built around their early products. A thriving community creates a sticky and evangelical user base, becomes a great source of ideas, and can even become a clever way to scale customer support (e.g. Airbnb):","sidebar":"tutorialSidebar"},"management/customer-engagement-cx":{"id":"management/customer-engagement-cx","title":"Customer Engagement / CX","description":"When it comes to payments and finances, customers are anxious and impatient when they encounter issues.","sidebar":"tutorialSidebar"},"management/decision-making/ethics":{"id":"management/decision-making/ethics","title":"Ethics","description":"Panoticon","sidebar":"tutorialSidebar"},"management/decision-making/readme":{"id":"management/decision-making/readme","title":"Decision Making","description":"Ensure that decisions are made at the level where the best information is available","sidebar":"tutorialSidebar"},"management/growth-hacking":{"id":"management/growth-hacking","title":"Growth Hacking","description":"A growth hacker is not a replacement for a marketer. A growth hacker is not better than marketer. A growth hacker is just different than a marketer. To use the most succinct definition from Sean\'s post,\\"A growth hacker is a person whose true north is growth.\\"","sidebar":"tutorialSidebar"},"management/growth-hacking-metrics":{"id":"management/growth-hacking-metrics","title":"Growth Hacking Metrics","description":"Startup Metrics for Pirates","sidebar":"tutorialSidebar"},"management/jobs/career":{"id":"management/jobs/career","title":"Career","description":"Understand how your job works, once you understand your career, create projects that will force improvement in specific skills","sidebar":"tutorialSidebar"},"management/jobs/companies":{"id":"management/jobs/companies","title":"Companies","description":"- FAANGM / MAANG - Facebook, Apple, Amazon, Netflix, Google, Microsoft","sidebar":"tutorialSidebar"},"management/jobs/finance-equity-stocks-esops-questions":{"id":"management/jobs/finance-equity-stocks-esops-questions","title":"Finance / Equity / Stocks / ESOPS Questions","description":"ESOPS, Restricted Stock, Stock Options, and Phantom Stock","sidebar":"tutorialSidebar"},"management/jobs/good-profiles":{"id":"management/jobs/good-profiles","title":"Good Profiles","description":"- linkedin.com/in/dr-vinod-ebinezer-44b2981/details/experience/","sidebar":"tutorialSidebar"},"management/jobs/hiring-plan-hr-recruiting":{"id":"management/jobs/hiring-plan-hr-recruiting","title":"Hiring Plan + HR / Recruiting","description":"Platform / Services / Vendor","sidebar":"tutorialSidebar"},"management/jobs/questions-to-company":{"id":"management/jobs/questions-to-company","title":"Questions to company","description":"Always don\'t say yes to any offer at that time, always sleep over it","sidebar":"tutorialSidebar"},"management/jobs/readme":{"id":"management/jobs/readme","title":"Job Hunting","description":"- Career","sidebar":"tutorialSidebar"},"management/jobs/resume-keywords-pointers":{"id":"management/jobs/resume-keywords-pointers","title":"Resume Keywords Pointers","description":"Backend - PHP","sidebar":"tutorialSidebar"},"management/marketing":{"id":"management/marketing","title":"Marketing","description":"AI Tools","sidebar":"tutorialSidebar"},"management/mental-models":{"id":"management/mental-models","title":"Mental Models","description":"- Weekly 1--1s - \\"1--1\'s can add a whole new level of speed and agility to your company.\\"","sidebar":"tutorialSidebar"},"management/others":{"id":"management/others","title":"Others","description":"SWOT Analysis","sidebar":"tutorialSidebar"},"management/people-management/culture":{"id":"management/people-management/culture","title":"Culture","description":"Culture eats strategy for breakfast - Peter Drucker","sidebar":"tutorialSidebar"},"management/people-management/leadership-interview-questions":{"id":"management/people-management/leadership-interview-questions","title":"Leadership Interview Questions","description":"Can you tell me about a time when you demonstrated leadership capabilities on the job?","sidebar":"tutorialSidebar"},"management/people-management/mentoring-teaching-coaching-leading-leader-leadership":{"id":"management/people-management/mentoring-teaching-coaching-leading-leader-leadership","title":"Mentoring / Leading","description":"Leadership is the ability to guide, support, and nurture others. Leaders are adept at finding ways for others to be at their best.","sidebar":"tutorialSidebar"},"management/people-management/onboarding":{"id":"management/people-management/onboarding","title":"Onboarding","description":"IDE - VSCode","sidebar":"tutorialSidebar"},"management/people-management/people-team-management":{"id":"management/people-management/people-team-management","title":"People / Team Management","description":"I am available anytime, I can mentor, Any help you need you can always come to me. -- Deepak","sidebar":"tutorialSidebar"},"management/people-management/readme":{"id":"management/people-management/readme","title":"People Management","description":"- People / Team Management","sidebar":"tutorialSidebar"},"management/people-management/remote-working-teams":{"id":"management/people-management/remote-working-teams","title":"Remote Working / Teams","description":"Teams of 1 are the best teams, and 1 of the most hard to create","sidebar":"tutorialSidebar"},"management/people-management/types-of-leadership":{"id":"management/people-management/types-of-leadership","title":"Types of Leadership","description":"1. Transformational leadership","sidebar":"tutorialSidebar"},"management/product-management/behavioral-design-economics":{"id":"management/product-management/behavioral-design-economics","title":"Behavioral Design / Economics","description":"https://www.lennysnewsletter.com/p/how-to-use-behavioral-science-to","sidebar":"tutorialSidebar"},"management/product-management/coursera-pm":{"id":"management/product-management/coursera-pm","title":"Coursera - PM","description":"https://www.coursera.org/specializations/real-world-product-management","sidebar":"tutorialSidebar"},"management/product-management/intro":{"id":"management/product-management/intro","title":"Intro","description":"Only the best is good enough -- lego group","sidebar":"tutorialSidebar"},"management/product-management/kano-model":{"id":"management/product-management/kano-model","title":"Kano Model","description":"image","sidebar":"tutorialSidebar"},"management/product-management/product-book-summaries":{"id":"management/product-management/product-book-summaries","title":"Product Book Summaries","description":"Purple Cow by Seth Godin","sidebar":"tutorialSidebar"},"management/product-management/product-design-questions":{"id":"management/product-management/product-design-questions","title":"Product Design / Questions","description":"https://www.toptal.com/designers/product-design/interview-questions","sidebar":"tutorialSidebar"},"management/product-management/product-design-stages":{"id":"management/product-management/product-design-stages","title":"Product Design Stages","description":"Designing a product involves several stages that help ensure the successful development and launch of a product that meets customer needs. Here are the typical stages of product design:","sidebar":"tutorialSidebar"},"management/product-management/product-manager-role":{"id":"management/product-management/product-manager-role","title":"Product Manager PM Role","description":"product-manager-skills","sidebar":"tutorialSidebar"},"management/product-management/product-market-fit-pmf":{"id":"management/product-management/product-market-fit-pmf","title":"Product Market Fit (PMF)","description":"Finding product/market fit is the main objective of all new products. However, it\'s crucial to acknowledge that according to Harvard studies, the majority of startups and established organizations fail to achieve PMF. To ensure that we don\'t fall into the same trap with our product, or to achieve PMF quickly and efficiently, we need to take a purposeful approach. This means proactively addressing the six most common dimensions where new products fail and comprehensively focusing on all critical steps that ladder up to building a successful product.","sidebar":"tutorialSidebar"},"management/product-management/product-terms-saas":{"id":"management/product-management/product-terms-saas","title":"Product - Terms - SAAS","description":"Ecommerce","sidebar":"tutorialSidebar"},"management/product-management/readme":{"id":"management/product-management/readme","title":"Product Management","description":"- Intro","sidebar":"tutorialSidebar"},"management/product-management/retail-offline-sales":{"id":"management/product-management/retail-offline-sales","title":"Retail / Offline / Sales","description":"Well, a few years ago, professors at Wharton and Harvard delved into this phenomenon and found something quite interesting. Customers who visit a physical store spend more money. In fact, they spend 60% more on average per order. They\u2019re willing to splurge on higher-priced items. Instead of simply buying casual T-shirts, they might spend more on buying formal shirts. They\u2019re expanding their shopping basket.","sidebar":"tutorialSidebar"},"management/project-management/agile":{"id":"management/project-management/agile","title":"Agile","description":"https://www.atlassian.com/agile","sidebar":"tutorialSidebar"},"management/project-management/atlas":{"id":"management/project-management/atlas","title":"Atlas","description":"Introducing The Loop communication framework | Atlas Help Center","sidebar":"tutorialSidebar"},"management/project-management/goals-setting":{"id":"management/project-management/goals-setting","title":"Goals Setting","description":"SMART Goals","sidebar":"tutorialSidebar"},"management/project-management/intro":{"id":"management/project-management/intro","title":"Intro","description":"https://blog.trello.com/project-management-methodologies","sidebar":"tutorialSidebar"},"management/project-management/jira":{"id":"management/project-management/jira","title":"JIRA","description":"Atlassian","sidebar":"tutorialSidebar"},"management/project-management/others":{"id":"management/project-management/others","title":"Others","description":"Tools","sidebar":"tutorialSidebar"},"management/project-management/pert-and-cpm":{"id":"management/project-management/pert-and-cpm","title":"PERT & CPM","description":"PERT - Program Evaluation and Review Technique","sidebar":"tutorialSidebar"},"management/project-management/pm101":{"id":"management/project-management/pm101","title":"PM101","description":"Project Management 101 Training | Introduction to Project Management | Project Management Basics","sidebar":"tutorialSidebar"},"management/project-management/program-management":{"id":"management/project-management/program-management","title":"Program Management","description":"Program management is the management of multiple related projects at the same time. A program is a set of interconnected projects overseen by a program manager whose main goal is to ensure that all work ties back into company-wide goals and objectives.","sidebar":"tutorialSidebar"},"management/project-management/project-contraints":{"id":"management/project-management/project-contraints","title":"Project Contraints","description":"Triple Constraint Triangle (Iron Triangle of Project Management)","sidebar":"tutorialSidebar"},"management/project-management/readme":{"id":"management/project-management/readme","title":"Project Management","description":"- Intro","sidebar":"tutorialSidebar"},"management/project-management/scrum-meetings":{"id":"management/project-management/scrum-meetings","title":"Scrum / Meetings","description":"- Video Calls","sidebar":"tutorialSidebar"},"management/project-management/sdlc-methodologies":{"id":"management/project-management/sdlc-methodologies","title":"SDLC Methodologies","description":"- Agile: Flexible, Fast, And Short Collaborative Sprint Projects","sidebar":"tutorialSidebar"},"management/project-management/template":{"id":"management/project-management/template","title":"1. Summary","description":"1. Start Date","sidebar":"tutorialSidebar"},"management/project-product-business-tools-saas":{"id":"management/project-product-business-tools-saas","title":"Project / Product / Business - Tools - SAAS","description":"PM Templates - by Pawe\u0142 Huryn","sidebar":"tutorialSidebar"},"management/readme":{"id":"management/readme","title":"Management","description":"- Mental Models","sidebar":"tutorialSidebar"},"management/roles/data":{"id":"management/roles/data","title":"Data","description":"You join a 100 person company as the head of data. What should you do?","sidebar":"tutorialSidebar"},"management/roles/engineering-manager":{"id":"management/roles/engineering-manager","title":"Engineering Manager / Tech Lead","description":"- The tech lead is the owner of the technological vision for a project, and the technical leader of the project team.","sidebar":"tutorialSidebar"},"management/roles/others":{"id":"management/roles/others","title":"Others","description":"CTO","sidebar":"tutorialSidebar"},"management/roles/principle-software-engineer":{"id":"management/roles/principle-software-engineer","title":"Principle Software Engineer","description":"My thoughts about the Principal role","sidebar":"tutorialSidebar"},"management/sales":{"id":"management/sales","title":"Sales","description":"Sales model","sidebar":"tutorialSidebar"},"management/six-sigma":{"id":"management/six-sigma","title":"Six Sigma","description":"Enhanced Problem-Solving Skills","sidebar":"tutorialSidebar"},"mathematics/algebra/cheatsheet":{"id":"mathematics/algebra/cheatsheet","title":"Cheatsheet","description":"image","sidebar":"tutorialSidebar"},"mathematics/algebra/complex-numbers":{"id":"mathematics/algebra/complex-numbers","title":"2.2 Complex Numbers","description":"1. Principle Square root","sidebar":"tutorialSidebar"},"mathematics/algebra/exponential-and-logarithms":{"id":"mathematics/algebra/exponential-and-logarithms","title":"2.7. Exponential & logarithms","description":"1. Introduction to logarithms","sidebar":"tutorialSidebar"},"mathematics/algebra/functions":{"id":"mathematics/algebra/functions","title":"2.1 Functions","description":"1. Combining functions","sidebar":"tutorialSidebar"},"mathematics/algebra/intro":{"id":"mathematics/algebra/intro","title":"Intro","description":"Algebra - 1","sidebar":"tutorialSidebar"},"mathematics/algebra/others":{"id":"mathematics/algebra/others","title":"Others","description":"Slope","sidebar":"tutorialSidebar"},"mathematics/algebra/readme":{"id":"mathematics/algebra/readme","title":"Algebra","description":"- Intro","sidebar":"tutorialSidebar"},"mathematics/algebra/root":{"id":"mathematics/algebra/root","title":"Root","description":"Roots get back the base number from the solution of an exponential equation.","sidebar":"tutorialSidebar"},"mathematics/algebra/series":{"id":"mathematics/algebra/series","title":"2.9. Series","description":"1. Arithmetic sequences (Arithmeric Progression)","sidebar":"tutorialSidebar"},"mathematics/algebra/sets":{"id":"mathematics/algebra/sets","title":"Sets","description":"Symmetric Difference (\u25b3) - The symmetric difference of two sets is the collection of elements which are members of either set but not both - in other words, the union of the sets excluding their intersection. Forming the symmetric difference of two sets is simple, but forming the symmetric difference of three sets is a bit trickier","sidebar":"tutorialSidebar"},"mathematics/aptitude/chinese-remainder-theorem":{"id":"mathematics/aptitude/chinese-remainder-theorem","title":"Chinese Remainder Theorem","description":"The Chinese remainder theorem is a theorem of number theory, which states that if one knows the remainders of the Euclidean division of an integer n by several integers, then one can determine uniquely the remainder of the division of n by the product of these integers, under the condition that the divisors are pairwise coprime.","sidebar":"tutorialSidebar"},"mathematics/aptitude/cube-cutting":{"id":"mathematics/aptitude/cube-cutting","title":"Cube Cutting","description":"Concepts -","sidebar":"tutorialSidebar"},"mathematics/aptitude/distance-speed-and-time":{"id":"mathematics/aptitude/distance-speed-and-time","title":"Distance Speed and Time","description":"HOW TO CALCULATE TIME AND DISTANCE FROM ACCELERATION AND VELOCITY","sidebar":"tutorialSidebar"},"mathematics/aptitude/readme":{"id":"mathematics/aptitude/readme","title":"Aptitude","description":"- Distance Speed and Time","sidebar":"tutorialSidebar"},"mathematics/calculus/essence-of-calculus-3blue1brown":{"id":"mathematics/calculus/essence-of-calculus-3blue1brown","title":"Essence of Calculus - 3Blue1Brown","description":"1. Introduction","sidebar":"tutorialSidebar"},"mathematics/calculus/functions":{"id":"mathematics/calculus/functions","title":"Functions","description":"Elementary Functions","sidebar":"tutorialSidebar"},"mathematics/calculus/gradient":{"id":"mathematics/calculus/gradient","title":"Gradient","description":"In mathematics, the gradient is a multi-variable generalization of the derivative. While a derivative can be defined on functions of a single variable, for functions of several variables, the gradient takes its place. The gradient is a vector-valued function, as opposed to a derivative, which is scalar-valued.","sidebar":"tutorialSidebar"},"mathematics/calculus/intro":{"id":"mathematics/calculus/intro","title":"Intro","description":"The word Calculus comes from Latin meaning \\"small stone\\", Because it is like understanding something by looking at small pieces.","sidebar":"tutorialSidebar"},"mathematics/calculus/others":{"id":"mathematics/calculus/others","title":"Others","description":"Laplace Transform","sidebar":"tutorialSidebar"},"mathematics/calculus/precalculus-intro":{"id":"mathematics/calculus/precalculus-intro","title":"Intro","description":"1. Trigonometry","sidebar":"tutorialSidebar"},"mathematics/calculus/product-rule-for-derivatives":{"id":"mathematics/calculus/product-rule-for-derivatives","title":"Product Rule for Derivatives","description":"image","sidebar":"tutorialSidebar"},"mathematics/calculus/quotient-rule":{"id":"mathematics/calculus/quotient-rule","title":"Quotient Rule","description":"image","sidebar":"tutorialSidebar"},"mathematics/calculus/readme":{"id":"mathematics/calculus/readme","title":"Calculus","description":"- Precalculus Intro","sidebar":"tutorialSidebar"},"mathematics/calculus/tangent-line-and-the-derivative":{"id":"mathematics/calculus/tangent-line-and-the-derivative","title":"Tangent Line and the Derivative","description":"Tangent Line","sidebar":"tutorialSidebar"},"mathematics/combinatorics/birthday-paradox":{"id":"mathematics/combinatorics/birthday-paradox","title":"Birthday Paradox","description":"Problem - Exponents aren\'t intuitive","sidebar":"tutorialSidebar"},"mathematics/combinatorics/conditional-probability":{"id":"mathematics/combinatorics/conditional-probability","title":"Conditional Probability","description":"Conditional probability is calculating the probability of an event given that another event has already occured .","sidebar":"tutorialSidebar"},"mathematics/combinatorics/inclusion-exclusion-principle":{"id":"mathematics/combinatorics/inclusion-exclusion-principle","title":"Inclusion-Exclusion Principle","description":"In combinatorics(combinatorial mathematics), theinclusion--exclusion principleis a counting technique which generalizes the familiar method of obtaining the number of elements in the union) of two finite sets); symbolically expressed as","sidebar":"tutorialSidebar"},"mathematics/combinatorics/intro":{"id":"mathematics/combinatorics/intro","title":"Intro","description":"Combinatorics is an area of mathematics primarily concerned with counting, both as a means and an end in obtaining results, and certain properties of finitestructures. It is closely related to many other areas of mathematics and has many applications ranging from logic to statistical physics, from evolutionary biology to computer science, etc","sidebar":"tutorialSidebar"},"mathematics/combinatorics/permutation-and-combination":{"id":"mathematics/combinatorics/permutation-and-combination","title":"Permutation and Combination","description":"Permutation - Order matters","sidebar":"tutorialSidebar"},"mathematics/combinatorics/pigeonhole-principle":{"id":"mathematics/combinatorics/pigeonhole-principle","title":"Pigeonhole Principle","description":"In mathematics, the pigeonhole principle states that if n items are put into m containers, with n>m, then at least one container must contain more than one item.","sidebar":"tutorialSidebar"},"mathematics/combinatorics/readme":{"id":"mathematics/combinatorics/readme","title":"Combinatorics","description":"- Intro","sidebar":"tutorialSidebar"},"mathematics/general/ackermann-function":{"id":"mathematics/general/ackermann-function","title":"Ackermann Function","description":"In computability theory, the**Ackermann function**, named after Wilhelm Ackermann, is one of the simplest and earliest-discovered examples of a totalcomputable function that is not primitive recursive. All primitive recursive functions are total and computable, but the Ackermann function illustrates that not all total computable functions are primitive recursive.","sidebar":"tutorialSidebar"},"mathematics/general/advanced-topics":{"id":"mathematics/general/advanced-topics","title":"Advanced Topics","description":"Bayes\' Theorem and Conditional Probability (https://brilliant.org/wiki/bayes-theorem)","sidebar":"tutorialSidebar"},"mathematics/general/conjecture":{"id":"mathematics/general/conjecture","title":"Conjecture","description":"Conjecture - Is a conclusion or proposition based on incomplete information, for which no proof has been found.","sidebar":"tutorialSidebar"},"mathematics/general/discrete-mathematics":{"id":"mathematics/general/discrete-mathematics","title":"Discrete Mathematics","description":"Discrete mathematicsis the study of mathematical structures that are fundamentally discrete rather than continuous. In contrast to real numbers that have the property of varying \\"smoothly\\", the objects studied in discrete mathematics -- such as integers, graphs), and statements) in logic-- do not vary smoothly in this way, but have distinct, separated values.Discrete mathematics therefore excludes topics in \\"continuous mathematics\\" such as calculus or Euclidean geometry. Discrete objects can often be enumerated by integers. More formally, discrete mathematics has been characterized as the branch of mathematics dealing with countable sets(finite sets or sets with the same cardinality as the natural numbers). However, there is no exact definition of the term \\"discrete mathematics.\\"Indeed, discrete mathematics is described less by what is included than by what is excluded: continuously varying quantities and related notions.","sidebar":"tutorialSidebar"},"mathematics/general/fermat-last-theorem":{"id":"mathematics/general/fermat-last-theorem","title":"Fermat\'s Last Theorem","description":"In number theory, **Fermat\'s Last Theorem**(sometimes called**Fermat\'s conjecture**, especially in older texts) states that no three positiveintegers a, b, and c satisfy the equation a^n^+b^n^=c^n^ for any integer value of n greater than 2. The cases n = 1 and n = 2 have been known to have infinitely many solutions since antiquity.","sidebar":"tutorialSidebar"},"mathematics/general/fermat-little-theorem":{"id":"mathematics/general/fermat-little-theorem","title":"Fermat\'s Little Theorem","description":"Fermat\'s little theoremis a fundamental theorem in elementary number theory, which helps compute powers of integers moduloprime numbers. It is a special case of Euler\'s theorem, and is important in applications of elementary number theory, including primality testing and public-key cryptography.","sidebar":"tutorialSidebar"},"mathematics/general/gcd-lcm":{"id":"mathematics/general/gcd-lcm","title":"GCD / LCM","description":"GCD","sidebar":"tutorialSidebar"},"mathematics/general/godel-incompleteness-theorem":{"id":"mathematics/general/godel-incompleteness-theorem","title":"Godel\'s Incompleteness Theorem","description":"G\xf6del\'s incompleteness theoremsare two theorems of mathematical logic that demonstrate the inherent limitations of every formal axiomatic system containing basic arithmetic. These results, published by Kurt G\xf6del in 1931, are important both in mathematical logic and in the philosophy of mathematics. The theorems are widely, but not universally, interpreted as showing that Hilbert\'s program to find a complete and consistent set of axioms for all mathematics is impossible.","sidebar":"tutorialSidebar"},"mathematics/general/golden-ratio-phi":{"id":"mathematics/general/golden-ratio-phi","title":"Golden Ratio - phi","description":"Two quantities are in thegolden ratio if their ratio is the same as the ratio of their sum to the larger of the two quantities. Expressed algebraically, for quantities a and b w itha>b>0,","sidebar":"tutorialSidebar"},"mathematics/general/greek-letters-latin":{"id":"mathematics/general/greek-letters-latin","title":"Greek Letters / Latin","description":"| Name | Symbol | Name | Symbol | Name | Symbol | Name | Symbol | Name | Symbol |","sidebar":"tutorialSidebar"},"mathematics/general/handshaking-lemma":{"id":"mathematics/general/handshaking-lemma","title":"Handshaking Lemma","description":"In any group of people the number of people who have shaken hands with an odd number of other people from the group is even.","sidebar":"tutorialSidebar"},"mathematics/general/logic":{"id":"mathematics/general/logic","title":"Logic","description":"Conceptions of logic","sidebar":"tutorialSidebar"},"mathematics/general/numbers":{"id":"mathematics/general/numbers","title":"Numbers","description":"image","sidebar":"tutorialSidebar"},"mathematics/general/others":{"id":"mathematics/general/others","title":"Others","description":"Arity","sidebar":"tutorialSidebar"},"mathematics/general/pie":{"id":"mathematics/general/pie","title":"Pie","description":"Pie is the ratio of circumference of a circle to its diameter","sidebar":"tutorialSidebar"},"mathematics/general/properties":{"id":"mathematics/general/properties","title":"Properties","description":"1. The Commutative Property of Addition ( x + y = y + x )","sidebar":"tutorialSidebar"},"mathematics/general/readme":{"id":"mathematics/general/readme","title":"General","description":"- Numbers","sidebar":"tutorialSidebar"},"mathematics/geometry/analytic-geometry":{"id":"mathematics/geometry/analytic-geometry","title":"Analytic Geometry","description":"Distance and midpoints:Analytic geometry","sidebar":"tutorialSidebar"},"mathematics/geometry/circles":{"id":"mathematics/geometry/circles","title":"Circles","description":"Circle basics:Circles","sidebar":"tutorialSidebar"},"mathematics/geometry/congruence":{"id":"mathematics/geometry/congruence","title":"Congruence","description":"Transformations & congruence:Congruence","sidebar":"tutorialSidebar"},"mathematics/geometry/geometry-foundations":{"id":"mathematics/geometry/geometry-foundations","title":"Geometry Foundations","description":"Intro to Euclidean geometry","sidebar":"tutorialSidebar"},"mathematics/geometry/others":{"id":"mathematics/geometry/others","title":"Others","description":"1. Law of haversines / Haversine formula","sidebar":"tutorialSidebar"},"mathematics/geometry/readme":{"id":"mathematics/geometry/readme","title":"Geometry","description":"- Geometry Foundations","sidebar":"tutorialSidebar"},"mathematics/geometry/right-triangles-and-geometry":{"id":"mathematics/geometry/right-triangles-and-geometry","title":"Right Triangles and Geometry","description":"1. Pythagorean theorem","sidebar":"tutorialSidebar"},"mathematics/geometry/similarity":{"id":"mathematics/geometry/similarity","title":"Similarity","description":"Definitions of similarity:Similarity","sidebar":"tutorialSidebar"},"mathematics/geometry/solid-geometry":{"id":"mathematics/geometry/solid-geometry","title":"Solid Geometry","description":"Solid geometry intro:Solid geometry","sidebar":"tutorialSidebar"},"mathematics/geometry/transformations":{"id":"mathematics/geometry/transformations","title":"Transformations","description":"Introduction to rigid transformations:Transformations","sidebar":"tutorialSidebar"},"mathematics/linear-algebra/3blue1brown":{"id":"mathematics/linear-algebra/3blue1brown","title":"3Blue1Brown","description":"1. Vectors","sidebar":"tutorialSidebar"},"mathematics/linear-algebra/alternate-coordinate-systems-bases":{"id":"mathematics/linear-algebra/alternate-coordinate-systems-bases","title":"Alternate Coordinate systems (bases)","description":"1. Orthogonal complements","sidebar":"tutorialSidebar"},"mathematics/linear-algebra/cheatsheet":{"id":"mathematics/linear-algebra/cheatsheet","title":"Cheatsheet","description":"https://www.freecodecamp.org/news/linear-algebra-full-course","sidebar":"tutorialSidebar"},"mathematics/linear-algebra/matrix-transformations":{"id":"mathematics/linear-algebra/matrix-transformations","title":"Matrix Transformations","description":"1. Functions and linear transformations","sidebar":"tutorialSidebar"},"mathematics/linear-algebra/others":{"id":"mathematics/linear-algebra/others","title":"Others","description":"Concepts","sidebar":"tutorialSidebar"},"mathematics/linear-algebra/readme":{"id":"mathematics/linear-algebra/readme","title":"Linear Algebra","description":"- Vectors and Spaces","sidebar":"tutorialSidebar"},"mathematics/linear-algebra/vectors-and-spaces":{"id":"mathematics/linear-algebra/vectors-and-spaces","title":"Vectors and Spaces","description":"Vectors","sidebar":"tutorialSidebar"},"mathematics/probability/365-ds-probability":{"id":"mathematics/probability/365-ds-probability","title":"365 DS - Probability","description":"The Basics of Probability","sidebar":"tutorialSidebar"},"mathematics/probability/binomial-random-variables":{"id":"mathematics/probability/binomial-random-variables","title":"Binomial Random Variables","description":"1. Binomial Random Variables","sidebar":"tutorialSidebar"},"mathematics/probability/central-limit-theorem":{"id":"mathematics/probability/central-limit-theorem","title":"Central Limit Theorem","description":"In probability theory, thecentral limit theorem(CLT) establishes that, in some situations, when independent random variables are added, their properly normalized sum tends toward a normal distribution(informally a \\"bell curve\\") even if the original variables themselves are not normally distributed. The theorem is a key concept in probability theory because it implies that probabilistic and statistical methods that work for normal distributions can be applicable to many problems involving other types of distributions.","sidebar":"tutorialSidebar"},"mathematics/probability/cheatsheet":{"id":"mathematics/probability/cheatsheet","title":"Cheatsheet","description":"MVN - MultiVariate Normal Distribution","sidebar":"tutorialSidebar"},"mathematics/probability/intro":{"id":"mathematics/probability/intro","title":"Intro","description":"Two types of probability","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/1.-probability-models-and-axioms":{"id":"mathematics/probability/intro-to-probability/1.-probability-models-and-axioms","title":"1. Probability Models and Axioms","description":"Basic structure of probability models, including the sample space and the axioms that any probabilistic model should obey, together with some consequences of the axioms and some simple examples.","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/1.1-set-sequences-limits-and-series-un-countable-sets":{"id":"mathematics/probability/intro-to-probability/1.1-set-sequences-limits-and-series-un-countable-sets","title":"1.1 Set, Sequences, Limits and Series, (un)countable sets","description":"imagecountable-sets-image1.jpg)","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/10-conditioning-on-a-random-variable-independence-bayes-rule":{"id":"mathematics/probability/intro-to-probability/10-conditioning-on-a-random-variable-independence-bayes-rule","title":"10. Conditioning on a random variable; Independence; Bayes\' rule","description":"image","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/11.-derived-distributions":{"id":"mathematics/probability/intro-to-probability/11.-derived-distributions","title":"11. Derived Distributions","description":"1. Derived distributions - how to find the distribution, that is the PMF or the PDF of a random variable that is defined as a function of other random variables known as distributions","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/12.-sums-of-independent-rv-covariance-and-correlation":{"id":"mathematics/probability/intro-to-probability/12.-sums-of-independent-rv-covariance-and-correlation","title":"12. Sums of independent r.v.\'s; Covariance and Correlation","description":"image","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/13.-conditional-expectation-and-variance-revisited":{"id":"mathematics/probability/intro-to-probability/13.-conditional-expectation-and-variance-revisited","title":"13. Conditional expectation and variance revisited","description":"Law of iterated expectations - Expectation of a conditional expectation, is the same as the unconditional expectation","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/14.-intro-to-bayesian-inference":{"id":"mathematics/probability/intro-to-probability/14.-intro-to-bayesian-inference","title":"14. Intro to Bayesian Inference","description":"The power of Bayesian statistics","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/2.-conditioning-and-independence":{"id":"mathematics/probability/intro-to-probability/2.-conditioning-and-independence","title":"2. Conditioning and Independence","description":"Conditioning leads to revised (\\"conditional\\") probabilities that take into account partial information on the outcome of a probabilistic experiment. Conditioning is a very useful tool that allows us to \\"divide and conquer\\" complex problems. Independence is used to model situations involving non-interacting probabilistic phenomena and also plays an important role in building complex models from more elementary ones.","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/3.-independence":{"id":"mathematics/probability/intro-to-probability/3.-independence","title":"3. Independence","description":"Introduces the concepts of independence of two events, independence of multiple events, and pairwise independence, together with examples related to coin tossing and system reliability.","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/4.-counting":{"id":"mathematics/probability/intro-to-probability/4.-counting","title":"4. Counting","description":"The basic principle of counting, uses it to count subsets, permutations, combinations, and partitions, and applies it to some probability problems.","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/5.-probability-mass-functions-and-expectations":{"id":"mathematics/probability/intro-to-probability/5.-probability-mass-functions-and-expectations","title":"5. Probability Mass Functions and Expectations","description":"image","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/6-variance-conditioning-of-an-event-multiple-rv":{"id":"mathematics/probability/intro-to-probability/6-variance-conditioning-of-an-event-multiple-rv","title":"6. Variance; Conditioning of an event; Multiple r.v.\'s","description":"Variance - Is a quantity that measures the amount of spread, of a dispersion of a probability mass function. It is defined as the expected value of the squared distance from the mean. Always non negative","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/7-conditioning-on-a-rv-independence-of-rv":{"id":"mathematics/probability/intro-to-probability/7-conditioning-on-a-rv-independence-of-rv","title":"7. Conditioning on a rv; Independence of r.v.\'s","description":"Joint PMF","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/8.-probability-density-functions":{"id":"mathematics/probability/intro-to-probability/8.-probability-density-functions","title":"8. Probability density functions","description":"PDF\'s are not probabilities, they are densities. Their unit is probability per unit length","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/9.-conditioning-on-an-event-multiple-continuous-rv":{"id":"mathematics/probability/intro-to-probability/9.-conditioning-on-an-event-multiple-continuous-rv","title":"9. Conditioning on an event; Multiple continuous r.v.\'s","description":"Green PDF is the form of a conditional PDF","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/additional-theoretical-material":{"id":"mathematics/probability/intro-to-probability/additional-theoretical-material","title":"Additional Theoretical Material","description":"Functions","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/intro-syllabus":{"id":"mathematics/probability/intro-to-probability/intro-syllabus","title":"Intro - Syllabus","description":"Introduction to Probability - The Science of Uncertainty - MITx - 6.041x","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/readme":{"id":"mathematics/probability/intro-to-probability/readme","title":"Intro to Probability","description":"- Intro - Syllabus","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/unit-1-solved-problems":{"id":"mathematics/probability/intro-to-probability/unit-1-solved-problems","title":"Unit 1 - Solved Problems","description":"The probability of difference of two sets","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/unit-2-solved-problems":{"id":"mathematics/probability/intro-to-probability/unit-2-solved-problems","title":"Unit 2 - Solved Problems","description":"Conditional probability example","sidebar":"tutorialSidebar"},"mathematics/probability/intro-to-probability/unit-3-solved-problems":{"id":"mathematics/probability/intro-to-probability/unit-3-solved-problems","title":"Unit 3 - Solved Problems","description":"The birthday problem","sidebar":"tutorialSidebar"},"mathematics/probability/monte-carlo-simulation":{"id":"mathematics/probability/monte-carlo-simulation","title":"Monte Carlo Simulation","description":"Monte Carlo simulation(also known as the Monte Carlo Method) lets you see all the possible outcomes of your decisions and assess the impact of risk, allowing for better decision making under uncertainty.","sidebar":"tutorialSidebar"},"mathematics/probability/normal-distributions":{"id":"mathematics/probability/normal-distributions","title":"Normal Distributions","description":"In probability theory, the normal(or Gaussian or Gauss or Laplace--Gauss) distribution is a very common continuous probability distribution. Normal distributions are important in statistics and are often used in the natural and social sciences to represent real-valued random variables whose distributions are not known. A random variable with a Gaussian distribution is said to be normally distributed and is called a normal deviate.","sidebar":"tutorialSidebar"},"mathematics/probability/others":{"id":"mathematics/probability/others","title":"Others","description":"Quantile","sidebar":"tutorialSidebar"},"mathematics/probability/probability-distribution":{"id":"mathematics/probability/probability-distribution","title":"Probability Distribution","description":"In probability theory and statistics, a**probability distribution** is a mathematical function that provides the probabilities of occurrence of different possible outcomes in an experiment). In more technical terms, the probability distribution is a description of a random phenomenon in terms of the probabilities of events). For instance, if the random variableXis used to denote the outcome of a coin toss (\\"the experiment\\"), then the probability distribution of X would take the value 0.5 forX= heads, and 0.5 forX= tails(assuming the coin is fair). Examples of random phenomena can include the results of an experiment) or survey.","sidebar":"tutorialSidebar"},"mathematics/probability/random-variables":{"id":"mathematics/probability/random-variables","title":"Random Variables","description":"In probability and statistics, arandom variable, random quantity, aleatory variable, orstochastic variable is a variable whose possible values are outcomes) of a random phenomenon.As a function, a random variable is required to be measurable, which rules out certain pathological) cases where the quantity which the random variable returns is infinitely sensitive to small changes in the outcome.","sidebar":"tutorialSidebar"},"mathematics/probability/readme":{"id":"mathematics/probability/readme","title":"Probability","description":"- Intro","sidebar":"tutorialSidebar"},"mathematics/readme":{"id":"mathematics/readme","title":"Mathematics","description":"- Mahematics General","sidebar":"tutorialSidebar"},"mathematics/statistics/bivariate-analysis":{"id":"mathematics/statistics/bivariate-analysis","title":"Bivariate Analysis","description":"Bivariate analysis is one of the simplest forms of quantitative (statistical) analysis.It involves the analysis of two variables(often denoted asX,Y), for the purpose of determining the empirical relationship between them","sidebar":"tutorialSidebar"},"mathematics/statistics/confidence-intervals":{"id":"mathematics/statistics/confidence-intervals","title":"Confidence Intervals","description":"Definition of confidence intervals","sidebar":"tutorialSidebar"},"mathematics/statistics/correlation-and-covariance":{"id":"mathematics/statistics/correlation-and-covariance","title":"Correlation and Covariance","description":"Data Relationships","sidebar":"tutorialSidebar"},"mathematics/statistics/crash-course-statistics":{"id":"mathematics/statistics/crash-course-statistics","title":"Crash Course Statistics","description":"Statistics","sidebar":"tutorialSidebar"},"mathematics/statistics/crosstab":{"id":"mathematics/statistics/crosstab","title":"Crosstab","description":"A\xa0crosstab\xa0is a\xa0table showing the relationship between two or more variables. Where the table only shows the relationship between two categorical variables, a crosstab is also known as a\xa0contingency table.","sidebar":"tutorialSidebar"},"mathematics/statistics/descriptive-statistics":{"id":"mathematics/statistics/descriptive-statistics","title":"Descriptive Statistics","description":"Levels of measurement","sidebar":"tutorialSidebar"},"mathematics/statistics/discriminant-analysis":{"id":"mathematics/statistics/discriminant-analysis","title":"Discriminant Analysis","description":"During a study, there are often questions that strike the researcher that must be answered. These questions include questions like \'are the groups different?\', \'on what variables, are the groups most different?\', \'can one predict which group a person belongs to using such variables?\' etc. In answering such questions, discriminant analysis is quite helpful.","sidebar":"tutorialSidebar"},"mathematics/statistics/estimation-statistics":{"id":"mathematics/statistics/estimation-statistics","title":"Estimation Statistics","description":"Estimation statistics may be used as an alternative to statistical hypothesis tests. Statistical hypothesis tests can be used to indicate whether the difference between two samples is due to random chance, but cannot comment on the size of the difference. A group of methods referred to as new statistics are seeing increased use instead of or in addition to p-values in order to quantify the magnitude of effects and the amount of uncertainty for estimated values. This group of statistical methods is referred to as estimation statistics. Estimation statistics is a term to describe three main classes of methods. The three main classes of methods include:","sidebar":"tutorialSidebar"},"mathematics/statistics/glossary":{"id":"mathematics/statistics/glossary","title":"Glossary","description":"| Word | Definition |","sidebar":"tutorialSidebar"},"mathematics/statistics/hypothesis-testing":{"id":"mathematics/statistics/hypothesis-testing","title":"Hypothesis Testing","description":"Null vs Alternative","sidebar":"tutorialSidebar"},"mathematics/statistics/inferential-statistics":{"id":"mathematics/statistics/inferential-statistics","title":"Inferential Statistics","description":"Introduction","sidebar":"tutorialSidebar"},"mathematics/statistics/intro":{"id":"mathematics/statistics/intro","title":"Intro","description":"Statistics is a subfield of mathematics. It refers to a collection of methods for working with data and using data to answer questions.","sidebar":"tutorialSidebar"},"mathematics/statistics/nonparametric-statistics":{"id":"mathematics/statistics/nonparametric-statistics","title":"Nonparametric Statistics","description":"Nonparametric statisticsis the branch of statistics that is not based solely on parametrized families of probability distributions(common examples of parameters are the mean and variance). Nonparametric statistics is based on either being distribution-free or having a specified distribution but with the distribution\'s parameters unspecified. Nonparametric statistics includes both descriptive statistics and statistical inference.","sidebar":"tutorialSidebar"},"mathematics/statistics/other-statistics":{"id":"mathematics/statistics/other-statistics","title":"Other Statistics","description":"Gaussian Noise","sidebar":"tutorialSidebar"},"mathematics/statistics/percentiles":{"id":"mathematics/statistics/percentiles","title":"Percentiles","description":"Tell you what percentage of the population has a score or value that\'s lower than yours.","sidebar":"tutorialSidebar"},"mathematics/statistics/ranking":{"id":"mathematics/statistics/ranking","title":"Ranking","description":"Strategies for assigning rankings","sidebar":"tutorialSidebar"},"mathematics/statistics/readme":{"id":"mathematics/statistics/readme","title":"Statistics","description":"- Intro","sidebar":"tutorialSidebar"},"mathematics/statistics/sampling":{"id":"mathematics/statistics/sampling","title":"Sampling","description":"- Sampling is the main technique employed for data selection","sidebar":"tutorialSidebar"},"networking/mqtt/client-broker-and-connection-establishment":{"id":"networking/mqtt/client-broker-and-connection-establishment","title":"Client, Broker & Connection Establishment","description":"Client","sidebar":"tutorialSidebar"},"networking/mqtt/intro":{"id":"networking/mqtt/intro","title":"Intro","description":"Features","sidebar":"tutorialSidebar"},"networking/mqtt/keep-alive-and-client-take-over":{"id":"networking/mqtt/keep-alive-and-client-take-over","title":"Keep Alive & Client Take-Over","description":"The problem of half-open TCP connections","sidebar":"tutorialSidebar"},"networking/mqtt/last-will-and-testament":{"id":"networking/mqtt/last-will-and-testament","title":"Last Will and Testament","description":"Because MQTT is often used in scenarios that include unreliable networks, it\'s reasonable to assume that some of the MQTT clients in these scenarios will occasionally disconnect ungracefully. An ungraceful disconnect can occur due to loss of connection, empty batteries, or many other reasons. Knowing whether a client disconnected gracefully (with an MQTTDISCONNECT message) or ungracefully (without a disconnect message), helps you respond correctly. The Last Will and Testament feature provides a way for clients to respond to ungraceful disconnects in an appropriate way.","sidebar":"tutorialSidebar"},"networking/mqtt/libraries":{"id":"networking/mqtt/libraries","title":"Libraries","description":"MQTT BROKER IMPLEMENTATIONS","sidebar":"tutorialSidebar"},"networking/mqtt/messages":{"id":"networking/mqtt/messages","title":"Messages","description":"MQTT has 14 different message types. Typically, end users only need to employ the CONNECT, PUBLISH, SUBSCRIBE, and UNSUBSCRIBE message types. The other message types are used for internal mechanisms and message flows.","sidebar":"tutorialSidebar"},"networking/mqtt/mqtt-5.0":{"id":"networking/mqtt/mqtt-5.0","title":"MQTT 5.0","description":"- Enhancements for scalability and large scale systems in respect to setups with 1000s and millions of devices.","sidebar":"tutorialSidebar"},"networking/mqtt/mqtt-over-websockets":{"id":"networking/mqtt/mqtt-over-websockets","title":"MQTT over WebSockets","description":"We\'ve seen that MQTT is ideal for constrained devices and unreliable networks and that it is perfect for sending messages with a very low overhead. Naturally, it would be quite nice to send and receive MQTT messages directly in a browser. For example, on a mobile phone.MQTT over WebSockets is the answer. MQTT over WebSockets enables the browser to leverage all MQTT features. You can use these capabilities for many interesting use cases:","sidebar":"tutorialSidebar"},"networking/mqtt/mqtt-sn":{"id":"networking/mqtt/mqtt-sn","title":"MQTT - SN","description":"MQTT for Sensor Networks","sidebar":"tutorialSidebar"},"networking/mqtt/mqtt-vs-http":{"id":"networking/mqtt/mqtt-vs-http","title":"MQTT vs HTTP","description":"- MQTT transfers data as a byte array and publish/subscribe model, which makes it perfect for resource-constrained devices and help to save battery.","sidebar":"tutorialSidebar"},"networking/mqtt/paho-client":{"id":"networking/mqtt/paho-client","title":"Paho Client","description":"References","sidebar":"tutorialSidebar"},"networking/mqtt/persistent-session-and-queuing-messages":{"id":"networking/mqtt/persistent-session-and-queuing-messages","title":"Persistent Session & Queuing Messages","description":"To receive messages from an MQTT broker, a client connects to the broker and creates subscriptions to the topics in which it is interested. If the connection between the client and broker is interrupted during a non-persistent session, these topics are lost and the client needs to subscribe again on reconnect. Re-subscribing every time the connection is interrupted is a burden for constrained clients with limited resources. To avoid this problem, the client can request a persistent session when it connects to the broker. Persistent sessions save all information that is relevant for the client on the broker. The clientId that the client provides when it establishes connection to the broker identifies the session","sidebar":"tutorialSidebar"},"networking/mqtt/publish-subscribe-and-unsubscribe":{"id":"networking/mqtt/publish-subscribe-and-unsubscribe","title":"Publish, Subscribe & Unsubscribe","description":"Publish","sidebar":"tutorialSidebar"},"networking/mqtt/publish-subscribe-pattern":{"id":"networking/mqtt/publish-subscribe-pattern","title":"Publish Subscribe Pattern","description":"The publish/subscribe pattern (also known as pub/sub) provides an alternative to traditional client-server architecture. In the client-sever model, a client communicates directly with an endpoint.The pub/sub model decouples the client that sends a message (the publisher) from the client or clients that receive the messages (the subscribers). The publishers and subscribers never contact each other directly. In fact, they are not even aware that the other exists. The connection between them is handled by a third component (the broker). The job of the broker is to filter all incoming messages and distribute them correctly to subscribers.","sidebar":"tutorialSidebar"},"networking/mqtt/qos-levels":{"id":"networking/mqtt/qos-levels","title":"QoS Levels","description":"What is Quality of Service?","sidebar":"tutorialSidebar"},"networking/mqtt/readme":{"id":"networking/mqtt/readme","title":"MQTT","description":"- Intro","sidebar":"tutorialSidebar"},"networking/mqtt/retained-messages":{"id":"networking/mqtt/retained-messages","title":"Retained Messages","description":"In MQTT, the client that publishes a message has no guarantee that a subscribing client actually receives the message. The publishing client can only make sure that the message gets delivered safely to the broker. Basically, the same is true for a subscribing client. The client that connects and subscribes to topics has no guarantee on when the publishing client will publish a message in one of their topics of interest. It can take a few seconds, minutes, or hours for the publisher to send a new message in one of the subscribed topics. Until the next message is published, the subscribing client is totally in the dark about the current status of the topic. This situation is where retained messages come into play.","sidebar":"tutorialSidebar"},"networking/mqtt/scaling":{"id":"networking/mqtt/scaling","title":"Scaling","description":"In a brokered architecture it\'s critical to avoid a single point of failure and to think about scaling out, since typically only one broker node is used. In the context of MQTT there are two different popular strategies applicable:","sidebar":"tutorialSidebar"},"networking/mqtt/security":{"id":"networking/mqtt/security","title":"Security","description":"Security is a very important part of any communication. MQTT itself keeps everything as simple as possible and relies on other proven technologies for safeguards instead of reinventing the wheel.","sidebar":"tutorialSidebar"},"networking/mqtt/topics-and-best-practices":{"id":"networking/mqtt/topics-and-best-practices","title":"Topics & Best Practices","description":"In MQTT, the word topic refers to an UTF-8 string that the broker uses to filter messages for each connected client. The topic consists of one or more topic levels. Each topic level is separated by a forward slash (topic level separator).","sidebar":"tutorialSidebar"},"networking/networking-concepts/addressing-methods-cast-protocols":{"id":"networking/networking-concepts/addressing-methods-cast-protocols","title":"Addressing Methods / cast protocols","description":"The cast term here signifies some data(stream of packets) is being transmitted to the recipient(s) from client(s) side over the communication channel that help them to communicate. Let\'s see some of the \\"cast\\" concepts that are prevailing in the computer networks field.","sidebar":"tutorialSidebar"},"networking/networking-concepts/book-computer-networks":{"id":"networking/networking-concepts/book-computer-networks","title":"Book - Computer Networks","description":"Andrew S Tanenbaum and DAVID J. WETHERALL","sidebar":"tutorialSidebar"},"networking/networking-concepts/cidr":{"id":"networking/networking-concepts/cidr","title":"CIDR","description":"Classless Inter-Domain Routing","sidebar":"tutorialSidebar"},"networking/networking-concepts/data-center-networking":{"id":"networking/networking-concepts/data-center-networking","title":"Data Center Networking","description":"Data center is a pool of resources (computational, storage, network) interconnected using a communication network. Data Center Network (DCN) holds a pivotal role in a data center, as it interconnects all of the data center resources together. DCNs need to be scalable and efficient to connect tens or even hundreds of thousands of servers to handle the growing demands of Cloud computing.Today\'s data centers are constrained by the interconnection network.","sidebar":"tutorialSidebar"},"networking/networking-concepts/forward-error-correction":{"id":"networking/networking-concepts/forward-error-correction","title":"Forward Error Correction","description":"Error Detection and Correction Codes","sidebar":"tutorialSidebar"},"networking/networking-concepts/intro":{"id":"networking/networking-concepts/intro","title":"Intro","description":"Connection","sidebar":"tutorialSidebar"},"networking/networking-concepts/ip":{"id":"networking/networking-concepts/ip","title":"IP","description":"IP addresses are typically made of two separate components. The first part of the address is used to identify the network that the address is a part of. The part that comes afterwards is used to specify a specific host within that network.","sidebar":"tutorialSidebar"},"networking/networking-concepts/network-sockets-ports":{"id":"networking/networking-concepts/network-sockets-ports","title":"Network Sockets/Ports","description":"Network Sockets","sidebar":"tutorialSidebar"},"networking/networking-concepts/networking-fabric":{"id":"networking/networking-concepts/networking-fabric","title":"Networking Fabric","description":"The networking switch fabric is the basic topology of how a network is laid out and connected to switch traffic on a data or circuit-switched network.","sidebar":"tutorialSidebar"},"networking/networking-concepts/osi-layers":{"id":"networking/networking-concepts/osi-layers","title":"OSI Layers","description":"Mnemonic - All people seem to need data processing","sidebar":"tutorialSidebar"},"networking/networking-concepts/others":{"id":"networking/networking-concepts/others","title":"Others","description":"Interface Definition Languages","sidebar":"tutorialSidebar"},"networking/networking-concepts/peer-to-peer":{"id":"networking/networking-concepts/peer-to-peer","title":"Peer to Peer Networks","description":"A\xa0P2P\xa0network is a type of network in which different computers communicate with each other directly without the need for a central server. The peer\xa0in the term indicates that all participating computers/systems are equal. These computers are also called\xa0nodes.","sidebar":"tutorialSidebar"},"networking/networking-concepts/questions":{"id":"networking/networking-concepts/questions","title":"Questions","description":"1. Where would you use exact-match packet forwarding? Where would you use longest-prefix? Whyis 2-choice better than standard hashing?","sidebar":"tutorialSidebar"},"networking/networking-concepts/readme":{"id":"networking/networking-concepts/readme","title":"Networking Concepts","description":"- Intro","sidebar":"tutorialSidebar"},"networking/networking-concepts/routing":{"id":"networking/networking-concepts/routing","title":"Routing","description":"IP addresses are classified into several classes of operational characteristics: unicast, multicast, anycast and broadcast addressing.","sidebar":"tutorialSidebar"},"networking/networking-concepts/sockets":{"id":"networking/networking-concepts/sockets","title":"Sockets","description":"Socket","sidebar":"tutorialSidebar"},"networking/networking-concepts/tcp-ip":{"id":"networking/networking-concepts/tcp-ip","title":"TCP/IP","description":"The OSI Model we just looked at is just a reference/logical model. It was designed to describe the functions of the communication system by dividing the communication procedure into smaller and simpler components. But when we talk about the TCP/IP model, it was designed and developed by Department of Defense (DoD) in 1960s and is based on standard protocols. It stands for Transmission Control Protocol/Internet Protocol. TheTCP/IP modelis a concise version of the OSI model. It contains four layers, unlike seven layers in the OSI model. The layers are:","sidebar":"tutorialSidebar"},"networking/others/5g-wireless-networking":{"id":"networking/others/5g-wireless-networking","title":"5G Wireless Networking","description":"Wireless Network Design","sidebar":"tutorialSidebar"},"networking/others/apache-avro":{"id":"networking/others/apache-avro","title":"Apache Avro","description":"Apache Avro is a language-neutral fast data serialization system. It was developed by Doug Cutting, the father of Hadoop. Since Hadoop writable classes lack language portability, Avro becomes quite helpful, as it deals with data formats that can be processed by multiple languages. Avro is a preferred tool to serialize data in Hadoop.","sidebar":"tutorialSidebar"},"networking/others/apache-parquet":{"id":"networking/others/apache-parquet","title":"Apache Parquet","description":"Apache Parquet is a free and open-sourcecolumn-oriented data store of the Apache Hadoop ecosystem. It is similar to the other columnar-storage file formats available in Hadoop namely RCFile and Optimized RCFile (ORC). It is compatible with most of the data processing frameworks in the Hadoop environment. It provides efficient data compression and encoding schemes with enhanced performance to handle complex data in bulk","sidebar":"tutorialSidebar"},"networking/others/data-formats":{"id":"networking/others/data-formats","title":"Data formats","description":"Hierarchical Data Format","sidebar":"tutorialSidebar"},"networking/others/delta-lake":{"id":"networking/others/delta-lake","title":"Delta Lake","description":"Delta Lake is an open-source storage framework that enables building a Lakehouse architecture with compute engines including Spark, PrestoDB, Flink, Trino, and Hive and APIs for Scala, Java, Rust, Ruby, and Python.","sidebar":"tutorialSidebar"},"networking/others/delta-lake-tutorial":{"id":"networking/others/delta-lake-tutorial","title":"Delta Lake Tutorial","description":"Tutorial: Delta Lake | Databricks on AWS","sidebar":"tutorialSidebar"},"networking/others/falcor":{"id":"networking/others/falcor","title":"Falcor","description":"A JavaScript library for efficient data fetching","sidebar":"tutorialSidebar"},"networking/others/file-formats":{"id":"networking/others/file-formats","title":"File Formats","description":"CSV, TSV, JSON, and Avro, are traditional row-based file formats. Parquet, and ORC file are columnar file formats.","sidebar":"tutorialSidebar"},"networking/others/file-formats-comparisons":{"id":"networking/others/file-formats-comparisons","title":"File Format Comparisons","description":"Avro vs Protobuf","sidebar":"tutorialSidebar"},"networking/others/grpc/commands":{"id":"networking/others/grpc/commands","title":"Commands","description":"Tools","sidebar":"tutorialSidebar"},"networking/others/grpc/comparison":{"id":"networking/others/grpc/comparison","title":"Comparison","description":"Performance benchmarks","sidebar":"tutorialSidebar"},"networking/others/grpc/concepts":{"id":"networking/others/grpc/concepts","title":"Concepts","description":"Flow Control","sidebar":"tutorialSidebar"},"networking/others/grpc/guides":{"id":"networking/others/grpc/guides","title":"Guides","description":"- Authentication","sidebar":"tutorialSidebar"},"networking/others/grpc/intro":{"id":"networking/others/grpc/intro","title":"gRPC","description":"- RPC - Remote Procedure Call framework that uses HTTP 2.0 and Protocol Buffers","sidebar":"tutorialSidebar"},"networking/others/grpc/others":{"id":"networking/others/grpc/others","title":"Others","description":"How to automate grpc generation using git hooks, why grpc over REST + JSON","sidebar":"tutorialSidebar"},"networking/others/grpc/readme":{"id":"networking/others/grpc/readme","title":"gRPC","description":"- gRPC","sidebar":"tutorialSidebar"},"networking/others/other":{"id":"networking/others/other","title":"Others","description":"OpenConnect","sidebar":"tutorialSidebar"},"networking/others/protocol-buffers-protobuf":{"id":"networking/others/protocol-buffers-protobuf","title":"Protocol Buffers Protobuf","description":"Protocol Buffers are a way of encoding structured data in an efficient yet extensible format. Google uses Protocol Buffers for almost all of its internal RPC protocols and file formats.","sidebar":"tutorialSidebar"},"networking/others/readme":{"id":"networking/others/readme","title":"Others","description":"- Falcor","sidebar":"tutorialSidebar"},"networking/others/rpc":{"id":"networking/others/rpc","title":"RPC","description":"https://sbdevel.wordpress.com/2009/12/17/the-case-rpc-vs-messaging","sidebar":"tutorialSidebar"},"networking/others/serialization-deserialization":{"id":"networking/others/serialization-deserialization","title":"Serialization/Deserialization","description":"Serialization is the process of turning structured in-memory objects into a byte stream for transmission over a network or for writing to persistent storage","sidebar":"tutorialSidebar"},"networking/others/vpn":{"id":"networking/others/vpn","title":"VPN","description":"A virtual private network (VPN) extends a private network across a public network, and enables users to send and receive data across shared or public networks as if their computing devices were directly connected to the private network. Applications running on a computing device, e.g., a laptop, desktop, smartphone, across a VPN may therefore benefit from the functionality, security, and management of the private network. Encryption is a common, though not an inherent, part of a VPN connection.","sidebar":"tutorialSidebar"},"networking/others/vpn-tools":{"id":"networking/others/vpn-tools","title":"VPN Tools","description":"Openvpn","sidebar":"tutorialSidebar"},"networking/protocols/amqp":{"id":"networking/protocols/amqp","title":"AMQP","description":"Advanced Message Queuing Protocol (AMQP)","sidebar":"tutorialSidebar"},"networking/protocols/dns-domain-name-system":{"id":"networking/protocols/dns-domain-name-system","title":"DNS Domain Name System","description":"https://dnschecker.org","sidebar":"tutorialSidebar"},"networking/protocols/graphql":{"id":"networking/protocols/graphql","title":"GraphQL","description":"GraphQL will do to REST what JSON did to XML.","sidebar":"tutorialSidebar"},"networking/protocols/http-3-quic":{"id":"networking/protocols/http-3-quic","title":"HTTP/3 QUIC","description":"QUIC - Quick UDP Internet Connections","sidebar":"tutorialSidebar"},"networking/protocols/http-https":{"id":"networking/protocols/http-https","title":"HTTP / HTTPS","description":"- URL - Uniform Resource Locator","sidebar":"tutorialSidebar"},"networking/protocols/http-status-code":{"id":"networking/protocols/http-status-code","title":"Http Status Code","description":"1\xd7\xd7 Informational","sidebar":"tutorialSidebar"},"networking/protocols/intro":{"id":"networking/protocols/intro","title":"Protocols","description":"1. Application Layer","sidebar":"tutorialSidebar"},"networking/protocols/messaging":{"id":"networking/protocols/messaging","title":"Messaging","description":"For Messaging consider it like email, not between people but between different apps on different machines. A message is typically some container-like format with some extra metadata naming the sender and the recipent(s), maybe timestamps and serial numbers. All you can do in a messaging system is basically to send a message to a particular address. Whether or when the resident at that address responds is not possible to determine -- just like email in that sense. For a large scale example of a messaging system we have the internet itself. The very much hyped REST interactions of online services is also an example where messaging is starting to show success.","sidebar":"tutorialSidebar"},"networking/protocols/openapi":{"id":"networking/protocols/openapi","title":"OpenAPI","description":"What Is OpenAPI?","sidebar":"tutorialSidebar"},"networking/protocols/openthread":{"id":"networking/protocols/openthread","title":"OpenThread","description":"Thread","sidebar":"tutorialSidebar"},"networking/protocols/others":{"id":"networking/protocols/others","title":"Others","description":"LWM2M - Light Weight Machine-to-Machine","sidebar":"tutorialSidebar"},"networking/protocols/protocols-intro":{"id":"networking/protocols/protocols-intro","title":"Protocols Intro","description":"Media Access Control (MAC Address)","sidebar":"tutorialSidebar"},"networking/protocols/readme":{"id":"networking/protocols/readme","title":"Protocols","description":"- Protocols","sidebar":"tutorialSidebar"},"networking/protocols/rest-representational-state-transfer-restful":{"id":"networking/protocols/rest-representational-state-transfer-restful","title":"REST Representational State Transfer / RESTFul","description":"REST + JSON over HTTP","sidebar":"tutorialSidebar"},"networking/protocols/rsocket":{"id":"networking/protocols/rsocket","title":"Rsocket","description":"RSocket is a binary protocol for use on byte stream transports such as TCP, WebSockets, and Aeron.","sidebar":"tutorialSidebar"},"networking/protocols/tcp-connection-oriented-protocol/flow-control":{"id":"networking/protocols/tcp-connection-oriented-protocol/flow-control","title":"Flow Control","description":"Flow Control basically means that TCP will ensure that a sender is not overwhelming a receiver by sending packets faster than it can consume. It\'s pretty similar to what\'s normally called Back pressure in the Distributed Systems literature. The idea is that a node receiving data will send some kind of feedback to the node sending the data to let it know about its current condition.","sidebar":"tutorialSidebar"},"networking/protocols/tcp-connection-oriented-protocol/readme":{"id":"networking/protocols/tcp-connection-oriented-protocol/readme","title":"TCP (Connection Oriented Protocol)","description":"TCP stands for transmission control protocol. It is implemented in the transport layer of the IP/TCP model and is used to establish reliable connections.","sidebar":"tutorialSidebar"},"networking/protocols/udp":{"id":"networking/protocols/udp","title":"UDP","description":"In computer networking, theUser Datagram Protocol(UDP) is one of the core members of the Internet protocol suite. The protocol was designed by David P. Reed in 1980 and formally defined in RFC) 768. With UDP, computer applications can send messages, in this case referred to as datagrams, to other hosts on an Internet Protocol(IP) network. Prior communications are not required in order to set up communication channels or data paths.","sidebar":"tutorialSidebar"},"networking/protocols/video-live-streaming":{"id":"networking/protocols/video-live-streaming","title":"Video / Live Streaming","description":"Tools","sidebar":"tutorialSidebar"},"networking/protocols/weave":{"id":"networking/protocols/weave","title":"Weave","description":"Weave is a set of application-level networking protocols built around a common addressing and naming architecture with low overhead serialization protocols and modern security.","sidebar":"tutorialSidebar"},"networking/protocols/websockets":{"id":"networking/protocols/websockets","title":"WebSockets","description":"WebSocket is a computer communications protocol, providing full-duplex communication channels over a single TCP connection. The WebSocket protocol was standardized by the IETF as RFC 6455 in 2011, and the WebSocket API in Web IDL is being standardized by the W3C.","sidebar":"tutorialSidebar"},"networking/protocols/zeromq-distributed-messaging":{"id":"networking/protocols/zeromq-distributed-messaging","title":"ZeroMQ: Distributed Messaging","description":"ZeroMQ (also known as \xd8MQ, 0MQ, or zmq) looks like an embeddable networking library but acts like a concurrency framework. It gives you sockets that carry atomic messages across various transports like in-process, inter-process, TCP, and multicast. You can connect sockets N-to-N with patterns like fan-out, pub-sub, task distribution, and request-reply. It\'s fast enough to be the fabric for clustered products. Its asynchronous I/O model gives you scalable multicore applications, built as asynchronous message-processing tasks. It has a score of language APIs and runs on most operating systems.- Carries messages across inproc, IPC, TCP, TIPC, multicast.","sidebar":"tutorialSidebar"},"networking/readme":{"id":"networking/readme","title":"Networking","description":"- Networking Concepts","sidebar":"tutorialSidebar"},"psychology/biases-fallacies":{"id":"psychology/biases-fallacies","title":"Biases / Fallacies","description":"There are two major types of logical fallacies","sidebar":"tutorialSidebar"},"psychology/brain":{"id":"psychology/brain","title":"Brain","description":"Left side of brain - Logic, Language, Linear (Analytical / Logical)","sidebar":"tutorialSidebar"},"psychology/burnout":{"id":"psychology/burnout","title":"Burnout","description":"Programmers Burnout","sidebar":"tutorialSidebar"},"psychology/consumerism":{"id":"psychology/consumerism","title":"Consumerism","description":"Spending money not equal to happiness","sidebar":"tutorialSidebar"},"psychology/course-mindshift":{"id":"psychology/course-mindshift","title":"Course - Mindshift","description":"Change is Possible","sidebar":"tutorialSidebar"},"psychology/criticism":{"id":"psychology/criticism","title":"Criticism / Criticizing / Criticize / Critic","description":"How to Handle Criticism, Hate and Disrespect?","sidebar":"tutorialSidebar"},"psychology/defence-mechanisms":{"id":"psychology/defence-mechanisms","title":"Defence Mechanisms","description":"Getting to know ourselves better sounds, on the surface, like a project we might all buy into. But this is to underestimate the extent to which are, just below the surface, typically highly invested in not getting to know or feel a range of important but troubling things about who we are. Whatever lipservice we may pay to the project of self-knowledge, we would - it seems - very much like not to know a great deal about our identities.","sidebar":"tutorialSidebar"},"psychology/emotions":{"id":"psychology/emotions","title":"Emotions","description":"Emotion Wheels","sidebar":"tutorialSidebar"},"psychology/habits":{"id":"psychology/habits","title":"Habits","description":"Self-Control","sidebar":"tutorialSidebar"},"psychology/human-psychology-and-thinking":{"id":"psychology/human-psychology-and-thinking","title":"Human Psychology & Thinking","description":"We all crave attention - Therefore if you even know everything, still you ask questions, just for attention","sidebar":"tutorialSidebar"},"psychology/ikigai":{"id":"psychology/ikigai","title":"Ikigai","description":"image","sidebar":"tutorialSidebar"},"psychology/intelligence":{"id":"psychology/intelligence","title":"Intelligence","description":"Howard Gardner, a psychologist & professor at Harvard University, first introduced the concept of 8 types of human intelligence in his 1983 book Frames of Mind.","sidebar":"tutorialSidebar"},"psychology/intro":{"id":"psychology/intro","title":"Psychology","description":"Maslow\'s hierarchy of needs","sidebar":"tutorialSidebar"},"psychology/learning/chunking-the-essentials":{"id":"psychology/learning/chunking-the-essentials","title":"Chunking - The Essentials","description":"Key points","sidebar":"tutorialSidebar"},"psychology/learning/concentration-mindfulness-attention-focus-hard-work":{"id":"psychology/learning/concentration-mindfulness-attention-focus-hard-work","title":"Concentration / Mindfulness / Attention / Focus / Hard Work","description":"I think, therefore I am distracted.","sidebar":"tutorialSidebar"},"psychology/learning/course-learning-how-to-learn":{"id":"psychology/learning/course-learning-how-to-learn","title":"Course - Learning How to Learn","description":"Key Chunks discussed in the course from which you can recall whole course","sidebar":"tutorialSidebar"},"psychology/learning/exams":{"id":"psychology/learning/exams","title":"Exams","description":"The strategy to ace Exams","sidebar":"tutorialSidebar"},"psychology/learning/learning-intro":{"id":"psychology/learning/learning-intro","title":"Learning - Intro","description":"https://guides.lib.uoguelph.ca/c.php?g=697430&p=4949569","sidebar":"tutorialSidebar"},"psychology/learning/memory":{"id":"psychology/learning/memory","title":"Memory","description":"Brain have a visual spatial center - Therefore images are stored very efficiently.","sidebar":"tutorialSidebar"},"psychology/learning/mistakes-apology":{"id":"psychology/learning/mistakes-apology","title":"Mistakes / Apology","description":"Never make the same mistake twice.","sidebar":"tutorialSidebar"},"psychology/learning/note-taking-second-brain-pkm-zettelkasten":{"id":"psychology/learning/note-taking-second-brain-pkm-zettelkasten","title":"Note Taking / Second Brain / PKM / Zettelkasten / Digital Garden","description":"Your brain is for having ideas not holding them","sidebar":"tutorialSidebar"},"psychology/learning/readme":{"id":"psychology/learning/readme","title":"Learning","description":"- Learning Intro","sidebar":"tutorialSidebar"},"psychology/learning/speed-reading":{"id":"psychology/learning/speed-reading","title":"Speed Reading","description":"Read to Lead","sidebar":"tutorialSidebar"},"psychology/learning/tips":{"id":"psychology/learning/tips","title":"Tips","description":"https://en.wikipedia.org/wiki/Listofmnemonics","sidebar":"tutorialSidebar"},"psychology/life-relationship-people":{"id":"psychology/life-relationship-people","title":"Life / Relationship / People","description":"When working with people, assume good intentions.","sidebar":"tutorialSidebar"},"psychology/mental-models":{"id":"psychology/mental-models","title":"Mental Models","description":"80/20 Rule / Pareto Principle","sidebar":"tutorialSidebar"},"psychology/others":{"id":"psychology/others","title":"Others","description":"Classical Conditioning (Pavlov\'s Experiment)","sidebar":"tutorialSidebar"},"psychology/paradox":{"id":"psychology/paradox","title":"Paradox","description":"Omnipotence paradox: Can an omnipotent being create a rock too heavy for itself to lift?","sidebar":"tutorialSidebar"},"psychology/parenting":{"id":"psychology/parenting","title":"Parenting / children","description":"- Use adjectives - Teddy\u2019s fur is soft,\u201d \u201cThe radio is quiet,\u201d \u201cThe tree outside is big","sidebar":"tutorialSidebar"},"psychology/people":{"id":"psychology/people","title":"People","description":"Financial Experts","sidebar":"tutorialSidebar"},"psychology/personality":{"id":"psychology/personality","title":"Personality","description":"Class is permanent and form is temporary","sidebar":"tutorialSidebar"},"psychology/power":{"id":"psychology/power","title":"Power","description":"Power tends to corrupt, absolute power corrupts absolutely","sidebar":"tutorialSidebar"},"psychology/procrastination":{"id":"psychology/procrastination","title":"Procrastination","description":"Procrastination and Lazyness are the biggest disability of all.","sidebar":"tutorialSidebar"},"psychology/productivity-productive-time-management-todo":{"id":"psychology/productivity-productive-time-management-todo","title":"Productivity / Productive / Time Management / TODO","description":"Productivity isn\'t everything, but, in the long run, it is almost everything -- Economist Paul Krugman, in The Age of Diminished Expectations","sidebar":"tutorialSidebar"},"psychology/readme":{"id":"psychology/readme","title":"Psychology","description":"- Learning","sidebar":"tutorialSidebar"},"psychology/research":{"id":"psychology/research","title":"Research","description":"The main point of science is to ask the right questions.","sidebar":"tutorialSidebar"},"psychology/self-awareness":{"id":"psychology/self-awareness","title":"Self Awareness","description":"It is the ability to see ourselves clearly, to understand who we are, how other see us, and how we fit into the world","sidebar":"tutorialSidebar"},"psychology/self-control-will-power":{"id":"psychology/self-control-will-power","title":"Self Control / Will Power","description":"Before you try to increase your willpower, try to decrease the friction in your environment.","sidebar":"tutorialSidebar"},"psychology/sleep":{"id":"psychology/sleep","title":"Sleep","description":"Sleep is a question of ease. If you are totally at ease, your sleep quality will go up and your sleep quota will go down. -- Sadhguru","sidebar":"tutorialSidebar"},"psychology/soft-skills/asking-right-questions":{"id":"psychology/soft-skills/asking-right-questions","title":"Asking Right Questions","description":"A good question is the one that lets you obtain thetype, quality, and quantity of information you need.","sidebar":"tutorialSidebar"},"psychology/soft-skills/disagreement-feedback":{"id":"psychology/soft-skills/disagreement-feedback","title":"Disagreement / Feedback","description":"Giving Feedback","sidebar":"tutorialSidebar"},"psychology/soft-skills/listening":{"id":"psychology/soft-skills/listening","title":"Listening","description":"When we listen, we hear someone into existence -- Laurie Buchanan, PhD","sidebar":"tutorialSidebar"},"psychology/soft-skills/negotiation":{"id":"psychology/soft-skills/negotiation","title":"Negotiation Tips","description":"You want leverage.","sidebar":"tutorialSidebar"},"psychology/soft-skills/prioritization-leverage":{"id":"psychology/soft-skills/prioritization-leverage","title":"Prioritization / Leverage","description":"Many people work hard, but few people work on the highest and best thing.","sidebar":"tutorialSidebar"},"psychology/soft-skills/readme":{"id":"psychology/soft-skills/readme","title":"Soft Skills","description":"- Listening","sidebar":"tutorialSidebar"},"psychology/soft-skills/reasoning":{"id":"psychology/soft-skills/reasoning","title":"Reasoning","description":"Reason is the capacity for consciously making sense of things, applying logic, for establishing and verifying facts, and changing or justifying practices, institutions, and beliefs based on new or existing information. It is closely associated with such characteristically human activities as philosophy, science, language, mathematics, and art, and is normally considered to be a definitive characteristic of human nature.","sidebar":"tutorialSidebar"},"psychology/soft-skills/speaking-phrases-quotes":{"id":"psychology/soft-skills/speaking-phrases-quotes","title":"Speaking - Phrases / Quotes","description":"Quotes","sidebar":"tutorialSidebar"},"psychology/soft-skills/speaking-story-talking-conversation-presentation-phrases":{"id":"psychology/soft-skills/speaking-story-talking-conversation-presentation-phrases","title":"Speaking / Story / Talking / Presentation / Phrases / Body Language","description":"Use english - Indians have a bias towards English","sidebar":"tutorialSidebar"},"psychology/soft-skills/writing":{"id":"psychology/soft-skills/writing","title":"Writing / Newsletter","description":"\\"Don\'t write to sound smart. Write to be useful.","sidebar":"tutorialSidebar"},"psychology/stoicism":{"id":"psychology/stoicism","title":"Stoicism","description":"How to be a stoic","sidebar":"tutorialSidebar"},"psychology/strategic-thinking":{"id":"psychology/strategic-thinking","title":"Strategic Thinking","description":"Defined as the process that determines the manner in which people think about, assess, view, and create the future for themselves and others.It\'s a combination of mindset and techniques that determines one\'s ability to know their goal and how to achieve it.","sidebar":"tutorialSidebar"},"psychology/thinking-mental-models":{"id":"psychology/thinking-mental-models","title":"Thinking Mental Models","description":"- The Scientific Method","sidebar":"tutorialSidebar"},"psychology/travelling":{"id":"psychology/travelling","title":"Travelling","description":"Case Against Travel","sidebar":"tutorialSidebar"},"psychology/trust":{"id":"psychology/trust","title":"Trust","description":"Trust does not mean that others have to do things the way you expect them to. Trust means to become vulnerable.","sidebar":"tutorialSidebar"},"python/advanced/architecture":{"id":"python/advanced/architecture","title":"Architecture","description":"Working","sidebar":"tutorialSidebar"},"python/advanced/concurrency":{"id":"python/advanced/concurrency","title":"Concurrency","description":"Global Interpreter Lock (GIL)","sidebar":"tutorialSidebar"},"python/advanced/cpython":{"id":"python/advanced/cpython","title":"CPython","description":"CPython is a stack-oriented virtual machine","sidebar":"tutorialSidebar"},"python/advanced/faster-python":{"id":"python/advanced/faster-python","title":"Faster Python","description":"1. Line Profiling","sidebar":"tutorialSidebar"},"python/advanced/idiomatic-python":{"id":"python/advanced/idiomatic-python","title":"Idiomatic Python","description":"Idiomatic Python","sidebar":"tutorialSidebar"},"python/advanced/memory-management":{"id":"python/advanced/memory-management","title":"Memory Management","description":"Everything in Python is an object. Some objects can hold other objects, such as lists, tuples, dicts, classes, etc. Because of dynamic Python\'s nature, such approach requires a lot of small memory allocations. To speed-up memory operations and reduce fragmentation Python uses a special manager on top of the general-purpose allocator, called PyMalloc.","sidebar":"tutorialSidebar"},"python/advanced/mixin":{"id":"python/advanced/mixin","title":"Mixin","description":"A mixin is a special kind of multiple inheritance. There are two main situations where mixins are used:","sidebar":"tutorialSidebar"},"python/advanced/others":{"id":"python/advanced/others","title":"Others","description":"The priority of how methods are resolved is from left to right","sidebar":"tutorialSidebar"},"python/advanced/python-tricks":{"id":"python/advanced/python-tricks","title":"Python Tricks","description":"Patterns for Cleaner Python","sidebar":"tutorialSidebar"},"python/advanced/python-versions":{"id":"python/advanced/python-versions","title":"Python Versions","description":"Python2 vs Python3","sidebar":"tutorialSidebar"},"python/advanced/readme":{"id":"python/advanced/readme","title":"Advanced","description":"- Architecture","sidebar":"tutorialSidebar"},"python/advanced/super":{"id":"python/advanced/super","title":"Super","description":"Super considered super - pycon 2015","sidebar":"tutorialSidebar"},"python/advanced/web-scraping":{"id":"python/advanced/web-scraping","title":"Web Scraping","description":"Web Scraping is a technique in which a computer program extracts data from human-readable output coming from websites.","sidebar":"tutorialSidebar"},"python/django/admin-site":{"id":"python/django/admin-site","title":"Admin site","description":"Overview","sidebar":"tutorialSidebar"},"python/django/advanced":{"id":"python/django/advanced","title":"Advanced","description":"1. Atomic Transactions","sidebar":"tutorialSidebar"},"python/django/architecture":{"id":"python/django/architecture","title":"Architecture","description":"Follows Model-View-Template (MVT) architectural pattern.","sidebar":"tutorialSidebar"},"python/django/authentication-authorization":{"id":"python/django/authentication-authorization","title":"Authentication / Authorization","description":"https://docs.djangoproject.com/en/1.11/topics/auth/customizing","sidebar":"tutorialSidebar"},"python/django/cheatsheet":{"id":"python/django/cheatsheet","title":"Cheatsheet","description":"image","sidebar":"tutorialSidebar"},"python/django/commands":{"id":"python/django/commands","title":"Commands","description":"- migrate, which is responsible for applying and unapplying migrations.","sidebar":"tutorialSidebar"},"python/django/content-types":{"id":"python/django/content-types","title":"Content Types","description":"Content Types","sidebar":"tutorialSidebar"},"python/django/django-rest-framework-drf":{"id":"python/django/django-rest-framework-drf","title":"Django Rest Framework DRF","description":"Django REST framework is a powerful and flexible toolkit for building Web APIs.","sidebar":"tutorialSidebar"},"python/django/django-template-language":{"id":"python/django/django-template-language","title":"Django Template Language","description":"{{ foo }} - this is a placeholder in the template, for the variable foo that is passed to the template from a view.","sidebar":"tutorialSidebar"},"python/django/docs-topic-guides":{"id":"python/django/docs-topic-guides","title":"Docs - Topic Guides","description":"- How to install Django","sidebar":"tutorialSidebar"},"python/django/libraries":{"id":"python/django/libraries","title":"Libaries","description":"https://dev.to/sm0ke/django-framework-popular-extensions-a-short-list-130","sidebar":"tutorialSidebar"},"python/django/logging":{"id":"python/django/logging","title":"Logging","description":"Django uses Python\'s builtin logging module to perform system logging.","sidebar":"tutorialSidebar"},"python/django/models":{"id":"python/django/models","title":"Models","description":"A model is the single, definitive source of information about your data. It contains the essential fields and behaviors of the data you\'re storing. Generally, each model maps to a single database table.","sidebar":"tutorialSidebar"},"python/django/optimizations":{"id":"python/django/optimizations","title":"Optimizations","description":"Caching","sidebar":"tutorialSidebar"},"python/django/other-topics":{"id":"python/django/other-topics","title":"Other Topics","description":"The model layer","sidebar":"tutorialSidebar"},"python/django/others":{"id":"python/django/others","title":"Others","description":"Fixtures","sidebar":"tutorialSidebar"},"python/django/overview":{"id":"python/django/overview","title":"Overview","description":"https://www.djangoproject.com/start/overview","sidebar":"tutorialSidebar"},"python/django/queryset-and-query-expressions":{"id":"python/django/queryset-and-query-expressions","title":"QuerySet & Query Expressions","description":"A QuerySet is, in essence, a list of objects of a given Model. QuerySets allow you to read the data from the database, filter it and order it. Internally, a QuerySet can be constructed, filtered, sliced, and generally passed around without actually hitting the database. No database activity actually occurs until you do something to evaluate the queryset.","sidebar":"tutorialSidebar"},"python/django/readme":{"id":"python/django/readme","title":"Django","description":"- Overview","sidebar":"tutorialSidebar"},"python/django/unicode":{"id":"python/django/unicode","title":"Unicode","description":"There are 3 built-in methods for string conversion -","sidebar":"tutorialSidebar"},"python/documentation/01-intro":{"id":"python/documentation/01-intro","title":"1. Intro","description":"Characteristics","sidebar":"tutorialSidebar"},"python/documentation/02-built-in-functions":{"id":"python/documentation/02-built-in-functions","title":"2. Built-in Functions","description":"1. abs()","sidebar":"tutorialSidebar"},"python/documentation/03-built-in-constants":{"id":"python/documentation/03-built-in-constants","title":"3. Built-in Constants","description":"A small number of constants live in the built-in namespace. They are:","sidebar":"tutorialSidebar"},"python/documentation/04-built-in-types":{"id":"python/documentation/04-built-in-types","title":"4. Built-in Types","description":"4.1. Truth Value Testing","sidebar":"tutorialSidebar"},"python/documentation/06-text-processing-services":{"id":"python/documentation/06-text-processing-services","title":"6. Text Processing Services","description":"6.1. string - Common string operations","sidebar":"tutorialSidebar"},"python/documentation/07-binary-data-services":{"id":"python/documentation/07-binary-data-services","title":"7. Binary Data Services","description":"- struct - Interpret bytes as packed binary data","sidebar":"tutorialSidebar"},"python/documentation/08-data-types":{"id":"python/documentation/08-data-types","title":"8. Data Types","description":"8.1. datetime - Basic date and time types","sidebar":"tutorialSidebar"},"python/documentation/09-numeric-and-mathematical-modules":{"id":"python/documentation/09-numeric-and-mathematical-modules","title":"9. Numeric and Mathematical Modules","description":"9.1. numbers - Numeric abstract base classes","sidebar":"tutorialSidebar"},"python/documentation/10-functional-programming-modules":{"id":"python/documentation/10-functional-programming-modules","title":"10. Functional Programming Modules","description":"10.1. itertools - Functions creating iterators for efficient looping","sidebar":"tutorialSidebar"},"python/documentation/11-file-and-directory-access":{"id":"python/documentation/11-file-and-directory-access","title":"11. File and Directory Access","description":"The modules described in this chapter deal with disk files and directories. For example, there are modules for reading the properties of files, manipulating paths in a portable way, and creating temporary files. The full list of modules in this chapter is:","sidebar":"tutorialSidebar"},"python/documentation/12-data-persistence":{"id":"python/documentation/12-data-persistence","title":"12. Data Persistence","description":"- 12.1.pickle - Python object serialization","sidebar":"tutorialSidebar"},"python/documentation/14-file-formats":{"id":"python/documentation/14-file-formats","title":"14. File Formats","description":"- 14.1.csv - CSV File Reading and Writing","sidebar":"tutorialSidebar"},"python/documentation/15-cryptographic-services":{"id":"python/documentation/15-cryptographic-services","title":"15. Cryptographic Services","description":"- hashlib - Secure hashes and message digests","sidebar":"tutorialSidebar"},"python/documentation/16-generic-operating-system-services-logging":{"id":"python/documentation/16-generic-operating-system-services-logging","title":"16. Generic Operating System Services / Logging","description":"16.1.os - Miscellaneous operating system interfaces","sidebar":"tutorialSidebar"},"python/documentation/17-concurrent-execution":{"id":"python/documentation/17-concurrent-execution","title":"17. Concurrent Execution","description":"- 17.1.threading - Thread-based parallelism","sidebar":"tutorialSidebar"},"python/documentation/18-interprocess-communication-and-networking":{"id":"python/documentation/18-interprocess-communication-and-networking","title":"18. Interprocess Communication and Networking","description":"- 18.1.socket - Low-level networking interface","sidebar":"tutorialSidebar"},"python/documentation/19-internet-data-handling":{"id":"python/documentation/19-internet-data-handling","title":"19. Internet Data Handling","description":"- 19.1.email - An email and MIME handling package","sidebar":"tutorialSidebar"},"python/documentation/21-structured-markup-processing-tools":{"id":"python/documentation/21-structured-markup-processing-tools","title":"21. Structured Markup Processing Tools","description":"- html - HyperText Markup Language support","sidebar":"tutorialSidebar"},"python/documentation/22-internet-protocols-and-support":{"id":"python/documentation/22-internet-protocols-and-support","title":"22. Internet Protocols and Support","description":"21.1. webbrowser","sidebar":"tutorialSidebar"},"python/documentation/27-development-tools/readme":{"id":"python/documentation/27-development-tools/readme","title":"27. Development Tools","description":"27.1. typing - Support for type hints","sidebar":"tutorialSidebar"},"python/documentation/27-development-tools/static-code-analysis":{"id":"python/documentation/27-development-tools/static-code-analysis","title":"Static Code Analysis","description":"black / autopep8 / yapf (Auto formatters)","sidebar":"tutorialSidebar"},"python/documentation/27-development-tools/testing":{"id":"python/documentation/27-development-tools/testing","title":"Testing","description":"1. Create your inputs","sidebar":"tutorialSidebar"},"python/documentation/28-debugging-and-profiling":{"id":"python/documentation/28-debugging-and-profiling","title":"28. Debugging and Profiling","description":"27.1. bdb - Debugger framework","sidebar":"tutorialSidebar"},"python/documentation/30-python-runtime-services":{"id":"python/documentation/30-python-runtime-services","title":"30. Python Runtime Services","description":"30.1. sys - System-specific parameters and functions","sidebar":"tutorialSidebar"},"python/documentation/33-python-language-services":{"id":"python/documentation/33-python-language-services","title":"33. Python Language Services","description":"https://docs.python.org/3/library/language.html","sidebar":"tutorialSidebar"},"python/documentation/pep":{"id":"python/documentation/pep","title":"PEP","description":"PEP-0 - Python Enhancement Proposals","sidebar":"tutorialSidebar"},"python/documentation/python-howtos":{"id":"python/documentation/python-howtos","title":"Python HowTos","description":"- Porting Python 2 Code to Python 3","sidebar":"tutorialSidebar"},"python/documentation/python-language-reference":{"id":"python/documentation/python-language-reference","title":"Python Language Reference","description":"Describes the syntax and \\"core semantics\\" of the language.","sidebar":"tutorialSidebar"},"python/documentation/readme":{"id":"python/documentation/readme","title":"Documentation","description":"- The Python Standard Library","sidebar":"tutorialSidebar"},"python/documentation/the-python-standard-library":{"id":"python/documentation/the-python-standard-library","title":"The Python Standard Library","description":"Documentation","sidebar":"tutorialSidebar"},"python/others/boto-and-boto3/readme":{"id":"python/others/boto-and-boto3/readme","title":"boto & boto3","description":"AWS SDK for python","sidebar":"tutorialSidebar"},"python/others/boto-and-boto3/slides":{"id":"python/others/boto-and-boto3/slides","title":"Slides","description":"Boto3","sidebar":"tutorialSidebar"},"python/others/fastapi/internal-working":{"id":"python/others/fastapi/internal-working","title":"Internal working","description":"Concurrency","sidebar":"tutorialSidebar"},"python/others/fastapi/readme":{"id":"python/others/fastapi/readme","title":"FastAPI","description":"FastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.6+ based on standard Python type hints.","sidebar":"tutorialSidebar"},"python/others/flask/documentation":{"id":"python/others/flask/documentation","title":"Documentation","description":"Flask depends on the Jinja template engine and the Werkzeug WSGI toolkit. The documentation for these libraries can be found at:","sidebar":"tutorialSidebar"},"python/others/flask/flask-sqlalchemy":{"id":"python/others/flask/flask-sqlalchemy","title":"Flask-sqlalchemy","description":"https://github.com/pallets/flask-sqlalchemy","sidebar":"tutorialSidebar"},"python/others/flask/others":{"id":"python/others/flask/others","title":"Others","description":"https://github.com/pallets/flask/tree/1.1.2/examples/tutorial","sidebar":"tutorialSidebar"},"python/others/flask/readme":{"id":"python/others/flask/readme","title":"Flask","description":"Flask is a micro web framework written in Python and based on the Werkzeug toolkit and Jinja2 template engine.","sidebar":"tutorialSidebar"},"python/others/frameworks":{"id":"python/others/frameworks","title":"Frameworks","description":"Tornado","sidebar":"tutorialSidebar"},"python/others/libraries":{"id":"python/others/libraries","title":"Libraries","description":"nose packages","sidebar":"tutorialSidebar"},"python/others/pymysql":{"id":"python/others/pymysql","title":"PyMySQL","description":"https://github.com/PyMySQL/PyMySQL","sidebar":"tutorialSidebar"},"python/others/readme":{"id":"python/others/readme","title":"Others","description":"- Requests","sidebar":"tutorialSidebar"},"python/others/requests":{"id":"python/others/requests","title":"Requests","description":"https://julien.danjou.info/python-and-fast-http-clients","sidebar":"tutorialSidebar"},"python/others/sqlalchemy/models":{"id":"python/others/sqlalchemy/models","title":"Models","description":"https://docs.sqlalchemy.org/en/14/orm/quickstart.html","sidebar":"tutorialSidebar"},"python/others/sqlalchemy/orm":{"id":"python/others/sqlalchemy/orm","title":"ORM","description":"ORM (Object Relational Mapper)","sidebar":"tutorialSidebar"},"python/others/sqlalchemy/readme":{"id":"python/others/sqlalchemy/readme","title":"SQLAlchemy","description":"Alchemist","sidebar":"tutorialSidebar"},"python/others/twisted":{"id":"python/others/twisted","title":"Twisted","description":"Twisted is an event-driven networking engine written in Python","sidebar":"tutorialSidebar"},"python/python-intro/basic":{"id":"python/python-intro/basic","title":"Basic","description":"Python is an experiment in how much freedom programmers need. Too much freedom and nobody can read another\'s code; too little and expressiveness is endangered. - Guido van Rossum, Creator of the Python programming language","sidebar":"tutorialSidebar"},"python/python-intro/classes":{"id":"python/python-intro/classes","title":"Classes","description":"Creating a class","sidebar":"tutorialSidebar"},"python/python-intro/data-structure/dict-evolution":{"id":"python/python-intro/data-structure/dict-evolution","title":"Dict Evolution","description":"Python2.7 - Scambled (dict_size = 280)","sidebar":"tutorialSidebar"},"python/python-intro/data-structure/dictionary":{"id":"python/python-intro/data-structure/dictionary","title":"Dictionary","description":"Each piece of information in a dictionary is stored as a key-value pair. When we provide a key, Python returns the value associated with that key.","sidebar":"tutorialSidebar"},"python/python-intro/data-structure/dictionary-architecture":{"id":"python/python-intro/data-structure/dictionary-architecture","title":"Dictionary Architecture","description":"- Python dictionaries are implemented as hash tables.","sidebar":"tutorialSidebar"},"python/python-intro/data-structure/list":{"id":"python/python-intro/data-structure/list","title":"List","description":"Properties","sidebar":"tutorialSidebar"},"python/python-intro/data-structure/readme":{"id":"python/python-intro/data-structure/readme","title":"Data Structure","description":"Built-in data structures","sidebar":"tutorialSidebar"},"python/python-intro/data-structure/set":{"id":"python/python-intro/data-structure/set","title":"Set","description":"- Set doesn\'t support indexing/slicing","sidebar":"tutorialSidebar"},"python/python-intro/data-structure/tuples":{"id":"python/python-intro/data-structure/tuples","title":"Tuples","description":"Properties","sidebar":"tutorialSidebar"},"python/python-intro/datetime":{"id":"python/python-intro/datetime","title":"DateTime","description":"Concepts","sidebar":"tutorialSidebar"},"python/python-intro/exceptions":{"id":"python/python-intro/exceptions","title":"Exceptions","description":"Should I Use Exceptions of Conditional Handling?","sidebar":"tutorialSidebar"},"python/python-intro/file-io":{"id":"python/python-intro/file-io","title":"File IO","description":"https://towardsdatascience.com/knowing-these-you-can-cover-99-of-file-operations-in-python-84725d82c2df","sidebar":"tutorialSidebar"},"python/python-intro/functions":{"id":"python/python-intro/functions","title":"Functions","description":"Functions are named blocks of code, designed to do one specific job.","sidebar":"tutorialSidebar"},"python/python-intro/generators":{"id":"python/python-intro/generators","title":"Generators","description":"- Generator functions allow you to declare a function that behaves like an iterator.","sidebar":"tutorialSidebar"},"python/python-intro/input-output-template":{"id":"python/python-intro/input-output-template","title":"Input Output Template","description":"I changed the Python print statement to understand how it works internally - YouTube","sidebar":"tutorialSidebar"},"python/python-intro/iterators":{"id":"python/python-intro/iterators","title":"Iterators","description":"An iterator is an object that can be iterated (looped) upon. It is used to abstract a container of data to make it behave like an iterable object. You probably already use a few iterable objects every day: strings, lists, and dictionaries to name a few.","sidebar":"tutorialSidebar"},"python/python-intro/keywords":{"id":"python/python-intro/keywords","title":"Keywords","description":"Keywords","sidebar":"tutorialSidebar"},"python/python-intro/loops":{"id":"python/python-intro/loops","title":"Loops","description":"http://www.geeksforgeeks.org/any-all-in-python","sidebar":"tutorialSidebar"},"python/python-intro/map-reduce-filter":{"id":"python/python-intro/map-reduce-filter","title":"Map, reduce, filter","description":"Map","sidebar":"tutorialSidebar"},"python/python-intro/mathematics":{"id":"python/python-intro/mathematics","title":"Mathematics","description":"Finding nCr for given numbers","sidebar":"tutorialSidebar"},"python/python-intro/modules":{"id":"python/python-intro/modules","title":"Modules","description":"A module is a file containing Python definitions and statements. The file name is the module name with the suffix.pyappended. Within a module, the module\'s name (as a string) is available as the value of the global variable name.","sidebar":"tutorialSidebar"},"python/python-intro/oops":{"id":"python/python-intro/oops","title":"OOPS","description":"In Python, everything is an object, and can be handled as such. This is what is meant when we say, for example, that functions are first-class objects. Functions, classes, strings, and even types are objects in Python: like any object, they have a type, they can be passed as function arguments, and they may have methods and properties. In this understanding, Python is an object-oriented language.","sidebar":"tutorialSidebar"},"python/python-intro/operators":{"id":"python/python-intro/operators","title":"Operators","description":"Types of Operator","sidebar":"tutorialSidebar"},"python/python-intro/questions":{"id":"python/python-intro/questions","title":"Questions","description":"What is the difference between thestrandreprmethods of a Python object","sidebar":"tutorialSidebar"},"python/python-intro/readme":{"id":"python/python-intro/readme","title":"Python","description":"- Basic","sidebar":"tutorialSidebar"},"python/python-intro/regular-expressions":{"id":"python/python-intro/regular-expressions","title":"Regular Expressions","description":"Pythons Metacharacters","sidebar":"tutorialSidebar"},"python/python-intro/requirements-file":{"id":"python/python-intro/requirements-file","title":"Requirements file","description":"pip supports installing from PyPI, version control, local projects, and directly from distribution files.","sidebar":"tutorialSidebar"},"python/python-intro/resources":{"id":"python/python-intro/resources","title":"Resources","description":"Getting started","sidebar":"tutorialSidebar"},"python/python-intro/sorting":{"id":"python/python-intro/sorting","title":"Sorting","description":"Sort items in a list in alphabetical order, or reverse alphabetical order.","sidebar":"tutorialSidebar"},"python/python-intro/strings":{"id":"python/python-intro/strings","title":"Strings","description":"fstrings","sidebar":"tutorialSidebar"},"python/python-intro/time-complexities":{"id":"python/python-intro/time-complexities","title":"Time complexities","description":"list","sidebar":"tutorialSidebar"},"python/python-intro/virtualenv-and-pip":{"id":"python/python-intro/virtualenv-and-pip","title":"virtualenv & pip","description":"VirtualEnv","sidebar":"tutorialSidebar"},"python/readme":{"id":"python/readme","title":"Python","description":"- Python","sidebar":"tutorialSidebar"},"readme":{"id":"readme","title":"Deep Notes","description":"This is my personal wiki where I share everything I know about this world in form of an online wiki.","sidebar":"tutorialSidebar"},"technologies/apache/airflow/airflow-architecture":{"id":"technologies/apache/airflow/airflow-architecture","title":"Airflow Architecture","description":"At its core, Airflow is simply a queuing system built on top of a metadata database. The database stores the state of queued tasks and a scheduler uses these states to prioritize how other tasks are added to the queue. This functionality is orchestrated by four primary components","sidebar":"tutorialSidebar"},"technologies/apache/airflow/astronomer":{"id":"technologies/apache/airflow/astronomer","title":"Astronomer","description":"astro deploy | Astronomer Documentation","sidebar":"tutorialSidebar"},"technologies/apache/airflow/commands-configs":{"id":"technologies/apache/airflow/commands-configs","title":"Commands / Configs","description":"Config","sidebar":"tutorialSidebar"},"technologies/apache/airflow/concepts":{"id":"technologies/apache/airflow/concepts","title":"Concepts","description":"DAGs","sidebar":"tutorialSidebar"},"technologies/apache/airflow/dags-example":{"id":"technologies/apache/airflow/dags-example","title":"Dags Example","description":"https://airflow.apache.org/docs/apache-airflow/1.10.12/api/airflow/contrib/operators/kubernetespod_operator/index.html","sidebar":"tutorialSidebar"},"technologies/apache/airflow/intro":{"id":"technologies/apache/airflow/intro","title":"Airflow","description":"Airflow is a platform to programmatically author, schedule and monitor workflows.","sidebar":"tutorialSidebar"},"technologies/apache/airflow/others":{"id":"technologies/apache/airflow/others","title":"Others","description":"Cadence","sidebar":"tutorialSidebar"},"technologies/apache/airflow/parallelism":{"id":"technologies/apache/airflow/parallelism","title":"Parallelism","description":"Here\'s an expanded list of configuration options that are available since Airflow v1.10.2. Some can be set on a per-DAG or per-operator basis, but may also fall back to the setup-wide defaults when they are not specified.","sidebar":"tutorialSidebar"},"technologies/apache/airflow/readme":{"id":"technologies/apache/airflow/readme","title":"Airflow","description":"- Airflow","sidebar":"tutorialSidebar"},"technologies/apache/apache-flink":{"id":"technologies/apache/apache-flink","title":"Apache Flink","description":"Apache Flink is a stream processing framework that can also handle batch tasks. It considers batches to simply be data streams with finite boundaries, and thus treats batch processing as a subset of stream processing. This stream-first approach to all processing has a number of interesting side effects.","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/about":{"id":"technologies/apache/apache-hadoop/about","title":"Apache Hadoop","description":"- MapReduce API (Processing large parallel data)","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/big-data-hadoop-stack":{"id":"technologies/apache/apache-hadoop/big-data-hadoop-stack","title":"Big Data Hadoop Stack","description":"Hadoop","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/hadoop-mapreduce-1.0":{"id":"technologies/apache/apache-hadoop/hadoop-mapreduce-1.0","title":"Hadoop MapReduce 1.0","description":"What is Map Reduce","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/hadoop-mapreduce-2.0":{"id":"technologies/apache/apache-hadoop/hadoop-mapreduce-2.0","title":"Hadoop MapReduce 2.0","description":"Introduction","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/hdfs":{"id":"technologies/apache/apache-hadoop/hdfs","title":"HDFS","description":"The Hadoop Distributed File System (HDFS) is designed to store very large data sets reliably, and to stream those data sets at high bandwidth to user applications. In a large cluster, thousands of servers both host directly attached storage and execute user application tasks. By distributing storage and computation across many servers, the resource can grow with demand while remaining economical at every size.","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/intro":{"id":"technologies/apache/apache-hadoop/intro","title":"Intro","description":"Apache Hadoop is a processing framework that exclusively provides batch processing. Hadoop was the first big data framework to gain significant traction in the open-source community. Based on several papers and presentations by Google about how they were dealing with tremendous amounts of data at the time, Hadoop reimplemented the algorithms and component stack to make large scale batch processing more accessible.","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/mapreduce-examples":{"id":"technologies/apache/apache-hadoop/mapreduce-examples","title":"MapReduce Examples","description":"image","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/others":{"id":"technologies/apache/apache-hadoop/others","title":"Others","description":"Traditionally, Hadoop saves its data internally in flat sequence files, which is a binary storage format for key value pairs. It has the benefit of being more compact than text and fits well the map-reduce output format. Sequence files can be compressed on value, or block level, to improve its IO profile further. Unfortunately, sequence files are not an optimal solution for Hive since it saves a complete row as a single binary value. Consequently, Hive has to read a full row and decompress it even if only one column is being requested.","sidebar":"tutorialSidebar"},"technologies/apache/apache-hadoop/readme":{"id":"technologies/apache/apache-hadoop/readme","title":"Apache Hadoop","description":"- Apache Hadoop","sidebar":"tutorialSidebar"},"technologies/apache/apache-hbase":{"id":"technologies/apache/apache-hbase","title":"Apache HBase","description":"HBaseis an open-source, non-relational, distributed database modeled after Google\'sBigtable and written in Java). It is developed as part of Apache Software Foundation\'s Apache Hadoop project and runs on top of HDFS (Hadoop Distributed File System), providing Bigtable-like capabilities for Hadoop. That is, it provides a fault-tolerant way of storing large quantities of sparse data (small amounts of information caught within a large collection of empty or unimportant data, such as finding the 50 largest items in a group of 2 billion records, or finding the non-zero items representing less than 0.1% of a huge collection).","sidebar":"tutorialSidebar"},"technologies/apache/apache-hive":{"id":"technologies/apache/apache-hive","title":"Apache Hive","description":"- Hive is a distributed data management for Hadoop","sidebar":"tutorialSidebar"},"technologies/apache/apache-hudi":{"id":"technologies/apache/apache-hudi","title":"Hudi","description":"Hudi - Hadoop Upserts Deletes and Incremental","sidebar":"tutorialSidebar"},"technologies/apache/apache-projects":{"id":"technologies/apache/apache-projects","title":"Apache Projects","description":"- HTTP Server","sidebar":"tutorialSidebar"},"technologies/apache/apache-pulsar":{"id":"technologies/apache/apache-pulsar","title":"Apache Pulsar","description":"Apache Pulsar is an open-source distributed pub-sub messaging system originally created at Yahoo and now part of the Apache Software Foundation","sidebar":"tutorialSidebar"},"technologies/apache/apache-samza":{"id":"technologies/apache/apache-samza","title":"Apache Samza","description":"Apache Samza","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/00-intro":{"id":"technologies/apache/apache-spark/00-intro","title":"Intro","description":"Spark is a general purpose distributed data processing engine. Or in other words: load big data, do computations on it in a distributed way, and then store it.","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/01-terms":{"id":"technologies/apache/apache-spark/01-terms","title":"Terms","description":"RDDs, DataFrames, DataSets","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/02-spark-modules":{"id":"technologies/apache/apache-spark/02-spark-modules","title":"Spark Modules","description":"Apache Spark (Core)","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/03-processing-model":{"id":"technologies/apache/apache-spark/03-processing-model","title":"Processing Model","description":"Apache Spark is a next generation batch processing framework with stream processing capabilities. Built using many of the same principles of Hadoop\'s MapReduce engine, Spark focuses primarily on speeding up batch processing workloads by offering full in-memory computation and processing optimization.","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/04-key-points":{"id":"technologies/apache/apache-spark/04-key-points","title":"Key points","description":"Spark Dataframes","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/05-spark-built-in-libraries":{"id":"technologies/apache/apache-spark/05-spark-built-in-libraries","title":"Spark Built-in Libraries","description":"Intro","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/06-sliding-window-analytics":{"id":"technologies/apache/apache-spark/06-sliding-window-analytics","title":"Sliding Window Analytics","description":"Stream processing framework that is","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/07-joins":{"id":"technologies/apache/apache-spark/07-joins","title":"Joins","description":"What Factors affect Join Operations?","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/08-examples":{"id":"technologies/apache/apache-spark/08-examples","title":"Examples","description":"Glue Transformation from Aurora DB to Parquet in s3","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/09-dataframe":{"id":"technologies/apache/apache-spark/09-dataframe","title":"DataFrame","description":"- PySpark - Create an empty DataFrame","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/10-sql-functions-datasources":{"id":"technologies/apache/apache-spark/10-sql-functions-datasources","title":"SQL Functions / Datasources","description":"PySpark SQL Functions","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/11-built-in-functions":{"id":"technologies/apache/apache-spark/11-built-in-functions","title":"Built-In Functions","description":"- PySpark - when()","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/99-others":{"id":"technologies/apache/apache-spark/99-others","title":"Others","description":"Data Types","sidebar":"tutorialSidebar"},"technologies/apache/apache-spark/readme":{"id":"technologies/apache/apache-spark/readme","title":"Apache Spark","description":"- Intro","sidebar":"tutorialSidebar"},"technologies/apache/apache-storm":{"id":"technologies/apache/apache-storm","title":"Apache Storm","description":"Apache Storm","sidebar":"tutorialSidebar"},"technologies/apache/apache-zookeeper":{"id":"technologies/apache/apache-zookeeper","title":"Apache Zookeeper","description":"Apache Zookeeper is a distributed, open-source configuration, synchronization service along with naming registry for distributed applications.","sidebar":"tutorialSidebar"},"technologies/apache/celery/celery-backend":{"id":"technologies/apache/celery/celery-backend","title":"Celery Backend","description":"Redis Backend","sidebar":"tutorialSidebar"},"technologies/apache/celery/commands-tools":{"id":"technologies/apache/celery/commands-tools","title":"Commands / Tools","description":"Major commands","sidebar":"tutorialSidebar"},"technologies/apache/celery/readme":{"id":"technologies/apache/celery/readme","title":"Celery","description":"Celery is an asynchronous task queue/job queue based on distributed message passing. It is focused on real-time operation, but supports scheduling as well.","sidebar":"tutorialSidebar"},"technologies/apache/celery/workers":{"id":"technologies/apache/celery/workers","title":"Workers","description":"The Celery worker","sidebar":"tutorialSidebar"},"technologies/apache/cncf":{"id":"technologies/apache/cncf","title":"CNCF","description":"CNCF Landscape","sidebar":"tutorialSidebar"},"technologies/apache/data-pipeline-architecture":{"id":"technologies/apache/data-pipeline-architecture","title":"Data Pipeline Architecture","description":"image","sidebar":"tutorialSidebar"},"technologies/apache/others":{"id":"technologies/apache/others","title":"Others","description":"Apache Tez","sidebar":"tutorialSidebar"},"technologies/apache/readme":{"id":"technologies/apache/readme","title":"Apache","description":"- Apache Projects","sidebar":"tutorialSidebar"},"technologies/brokers/emqtt/commands":{"id":"technologies/brokers/emqtt/commands","title":"Commands","description":"git clone -b master https://github.com/emqx/emqx-docker.git","sidebar":"tutorialSidebar"},"technologies/brokers/emqtt/conf":{"id":"technologies/brokers/emqtt/conf","title":"Conf","description":"1. Cluster name","sidebar":"tutorialSidebar"},"technologies/brokers/emqtt/deployment-and-installation":{"id":"technologies/brokers/emqtt/deployment-and-installation","title":"Deployment and Installation","description":"image","sidebar":"tutorialSidebar"},"technologies/brokers/emqtt/plugins":{"id":"technologies/brokers/emqtt/plugins","title":"Plugins","description":"TheEMQ Xbroker could be extended by Plugins. A plugin is an Erlang application that adds extra feature to theEMQ Xbroker:","sidebar":"tutorialSidebar"},"technologies/brokers/emqtt/readme":{"id":"technologies/brokers/emqtt/readme","title":"EMQTT","description":"EMQ Xbroker is a fully open source, distributed, highly scalable, highly extensible, highly available distributed MQTT messaging broker for IoT, M2M and Mobile applications that can handle tens of millions of concurrent clients.","sidebar":"tutorialSidebar"},"technologies/brokers/others":{"id":"technologies/brokers/others","title":"Others","description":"NSQ - A realtime distributed messaging platform","sidebar":"tutorialSidebar"},"technologies/brokers/rabbitmq":{"id":"technologies/brokers/rabbitmq","title":"RabbitMQ","description":"The Polyglot Broker (Distributed Message Broker)","sidebar":"tutorialSidebar"},"technologies/brokers/readme":{"id":"technologies/brokers/readme","title":"Brokers","description":"- RabbitMQ","sidebar":"tutorialSidebar"},"technologies/brokers/smap":{"id":"technologies/brokers/smap","title":"sMAP","description":"sMAP: the Simple Measurement and Actuation Profile","sidebar":"tutorialSidebar"},"technologies/brokers/vernemq/commands":{"id":"technologies/brokers/vernemq/commands","title":"Commands","description":"","sidebar":"tutorialSidebar"},"technologies/brokers/vernemq/readme":{"id":"technologies/brokers/vernemq/readme","title":"VerneMQ","description":"VerneMQ is first and foremost a MQTT publish/subscribe message broker which implements the OASIS industry standard MQTT protocol. But VerneMQ is also built to take messaging and IoT applications to the next level by providing a unique set of features related to scalability, reliability and high-performance as well as operational simplicity.","sidebar":"tutorialSidebar"},"technologies/brokers/volttron":{"id":"technologies/brokers/volttron","title":"Volttron","description":"VOLTTRON is an open source platform for distributed sensing and control. The platform provides services for collecting and storing data from buildings and devices and provides an environment for developing applications which interact with that data.","sidebar":"tutorialSidebar"},"technologies/databricks/01-databricks":{"id":"technologies/databricks/01-databricks","title":"Databricks","description":"https://www.databricks.com/wp-content/uploads/2021/11/The-Data-Lakehouse-Platform-For-Dummies-1.pdf","sidebar":"tutorialSidebar"},"technologies/databricks/02-databricks-getting-started":{"id":"technologies/databricks/02-databricks-getting-started","title":"Databricks in 5 minutes","description":"Databricks Input Widget Parameters","sidebar":"tutorialSidebar"},"technologies/databricks/03-optimizations":{"id":"technologies/databricks/03-optimizations","title":"Optimizations","description":"Delta Lake Files - S3 Effect","sidebar":"tutorialSidebar"},"technologies/databricks/04-workflow":{"id":"technologies/databricks/04-workflow","title":"Workflow","description":"Create, run, and manage Databricks Jobs | Databricks on AWS","sidebar":"tutorialSidebar"},"technologies/databricks/10-medallion-architecture":{"id":"technologies/databricks/10-medallion-architecture","title":"Medallion Architecture","description":"What is a medallion architecture?","sidebar":"tutorialSidebar"},"technologies/databricks/20-delta-live-tables":{"id":"technologies/databricks/20-delta-live-tables","title":"Delta Live Tables","description":"Delta Live Tables is a declarative framework for building reliable, maintainable, and testable data processing pipelines. You define the transformations to perform on your data and Delta Live Tables manages task orchestration, cluster management, monitoring, data quality, and error handling.","sidebar":"tutorialSidebar"},"technologies/databricks/30-unity-catalog":{"id":"technologies/databricks/30-unity-catalog","title":"Unity Catalog","description":"Unity Catalog is a unified governance solution for all data and AI assets including files, tables, machine learning models and dashboards in your lakehouse on any cloud.","sidebar":"tutorialSidebar"},"technologies/databricks/40-databricks-commands":{"id":"technologies/databricks/40-databricks-commands","title":"Databricks-commands","description":"Databricks CLI","sidebar":"tutorialSidebar"},"technologies/databricks/99-others":{"id":"technologies/databricks/99-others","title":"Others","description":"Download file from DBFS in Databricks","sidebar":"tutorialSidebar"},"technologies/databricks/readme":{"id":"technologies/databricks/readme","title":"Databricks","description":"- Databricks Intro","sidebar":"tutorialSidebar"},"technologies/elasticsearch/analysis-and-analyzers":{"id":"technologies/elasticsearch/analysis-and-analyzers","title":"Analysis and Analyzers","description":"Analysis is a process that consists of the following:","sidebar":"tutorialSidebar"},"technologies/elasticsearch/architecture":{"id":"technologies/elasticsearch/architecture","title":"Architecture","description":"Cluster and Node","sidebar":"tutorialSidebar"},"technologies/elasticsearch/commands":{"id":"technologies/elasticsearch/commands","title":"Commands","description":"Monitoring","sidebar":"tutorialSidebar"},"technologies/elasticsearch/elastalert":{"id":"technologies/elasticsearch/elastalert","title":"ElastAlert","description":"ElastAlert is a simple framework for alerting on anomalies, spikes, or other patterns of interest from data in Elasticsearch.","sidebar":"tutorialSidebar"},"technologies/elasticsearch/elasticsearch-the-definitive-guide":{"id":"technologies/elasticsearch/elasticsearch-the-definitive-guide","title":"Elasticsearch: The Definitive Guide","description":"Elasticsearch is a distributed, scalable, real-time search and analytics engine. It enables you to search, analyze, and explore your data. It exists because raw data sitting on a hard drive is just not useful.","sidebar":"tutorialSidebar"},"technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch":{"id":"technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch","title":"ELK/EFK Stack /Elastic Stack / ElasticSearch","description":"ELK stands for Elasticsearch - Logstash - Kibana","sidebar":"tutorialSidebar"},"technologies/elasticsearch/full-text-searches":{"id":"technologies/elasticsearch/full-text-searches","title":"Full Text Searches","description":"- Ignoring \\"stop words\\" such as \\"a\\", \'the\', \'and\'","sidebar":"tutorialSidebar"},"technologies/elasticsearch/getting-started":{"id":"technologies/elasticsearch/getting-started","title":"Getting Started","description":"Points","sidebar":"tutorialSidebar"},"technologies/elasticsearch/information-retrieval":{"id":"technologies/elasticsearch/information-retrieval","title":"Information Retrieval","description":"Link Analysis and Web Search","sidebar":"tutorialSidebar"},"technologies/elasticsearch/internal-working":{"id":"technologies/elasticsearch/internal-working","title":"Internal Working","description":"Here is the sequence of steps necessary to successfully create, index, or delete a document on both the primary and any replica shards:","sidebar":"tutorialSidebar"},"technologies/elasticsearch/others":{"id":"technologies/elasticsearch/others","title":"Others","description":"Heartbeat","sidebar":"tutorialSidebar"},"technologies/elasticsearch/readme":{"id":"technologies/elasticsearch/readme","title":"Elasticsearch","description":"- ELK/EFK Stack / Elastic Stack / Elasticsearch","sidebar":"tutorialSidebar"},"technologies/git/branching-strategies":{"id":"technologies/git/branching-strategies","title":"Branching Strategies","description":"Note: Up until the first public release of a product, it absolutely makes sense to commit all changes directly to the main branch - even if you are a Git flow advocate - for the sake of the speed and simplicity of the development workflow. Since there\'s no production yet, there\'s no possibility of a production bug that the team needs to fix ASAP. Doing all the branching magic that classic Git flow implies is therefore overkill at this stage","sidebar":"tutorialSidebar"},"technologies/git/commands":{"id":"technologies/git/commands","title":"Commands","description":"Shortcuts","sidebar":"tutorialSidebar"},"technologies/git/github":{"id":"technologies/git/github","title":"Github","description":"Organizations","sidebar":"tutorialSidebar"},"technologies/git/others":{"id":"technologies/git/others","title":"Others","description":".gitkeep","sidebar":"tutorialSidebar"},"technologies/git/readme":{"id":"technologies/git/readme","title":"Git","description":"- Theory","sidebar":"tutorialSidebar"},"technologies/git/theory":{"id":"technologies/git/theory","title":"Theory","description":"Learnings","sidebar":"tutorialSidebar"},"technologies/kafka/confluent-kafka":{"id":"technologies/kafka/confluent-kafka","title":"confluent-kafka","description":"Confluent kafka-python","sidebar":"tutorialSidebar"},"technologies/kafka/installing-kafka":{"id":"technologies/kafka/installing-kafka","title":"Installing Kafka","description":"- A Zookeeper cluster is called an ensemble, it is recommended that ensembles contain an odd number of servers","sidebar":"tutorialSidebar"},"technologies/kafka/intro":{"id":"technologies/kafka/intro","title":"Intro","description":"Intro","sidebar":"tutorialSidebar"},"technologies/kafka/intro-to-kafka":{"id":"technologies/kafka/intro-to-kafka","title":"Intro to Kafka","description":"- Kafka Core is the distributed, durable equivalent of Unix pipes. Use it to connect and compose your large-scale data applications","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-architecture":{"id":"technologies/kafka/kafka-architecture","title":"Kafka Architecture","description":"Why is Kafka so Fast?","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-commands":{"id":"technologies/kafka/kafka-commands","title":"Kafka Commands","description":"Configuration","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-connect":{"id":"technologies/kafka/kafka-connect","title":"Kafka Connect","description":"- Connectors and tasks","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-consumers":{"id":"technologies/kafka/kafka-consumers","title":"Kafka Consumers","description":"The consumer is the receiver of the message in Kafka","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-listeners":{"id":"technologies/kafka/kafka-listeners","title":"Kafka Listeners","description":"tl;dr : You need to set advertised.listeners (or KAFKAADVERTISEDLISTENERSif you\'re using Docker images) to the external address (host/IP) so that clients can correctly connect to it. Otherwise they\'ll try to connect to the internal host address and if that\'s not reachable then problems ensue","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-producers":{"id":"technologies/kafka/kafka-producers","title":"Kafka Producers","description":"The producer is the creator of the message in Kafka","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-python":{"id":"technologies/kafka/kafka-python","title":"kafka-python","description":"Python client for the Apache Kafka distributed stream processing system. (consumer iterators)","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-rest-proxy":{"id":"technologies/kafka/kafka-rest-proxy","title":"kafka-rest proxy","description":"Kafka-connect","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-schema-registry":{"id":"technologies/kafka/kafka-schema-registry","title":"Kafka schema-registry","description":"https://www.confluent.io/blog/schemas-contracts-compatibility","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-streams":{"id":"technologies/kafka/kafka-streams","title":"Kafka Streams","description":"Topics live in Kafka\'s storage layer - they are part of the Kafka \\"filesystem\\" powered by the brokers. In contrast, streams and tables are concepts of Kafka\'s processing layer, used in tools like ksqlDB and Kafka Streams. These tools process your events stored in \\"raw\\" topics by turning them into streams and tables - a process that is conceptually very similar to how a relational database turns the bytes in files on disk into an RDBMS table for you to work with.","sidebar":"tutorialSidebar"},"technologies/kafka/kafka-topic-replication":{"id":"technologies/kafka/kafka-topic-replication","title":"Kafka Topic/Replication","description":"Kafka Topics","sidebar":"tutorialSidebar"},"technologies/kafka/kafkacat":{"id":"technologies/kafka/kafkacat","title":"kafkacat","description":"https://github.com/edenhill/kafkacat","sidebar":"tutorialSidebar"},"technologies/kafka/migration-mirroring-replication":{"id":"technologies/kafka/migration-mirroring-replication","title":"Migration / Mirroring / Replication","description":"Cross-Cluster Data Mirroring","sidebar":"tutorialSidebar"},"technologies/kafka/monitoring":{"id":"technologies/kafka/monitoring","title":"Monitoring","description":"Monitoring / Management Tools","sidebar":"tutorialSidebar"},"technologies/kafka/others":{"id":"technologies/kafka/others","title":"Others","description":"Message Processing Guarantees","sidebar":"tutorialSidebar"},"technologies/kafka/readme":{"id":"technologies/kafka/readme","title":"Kafka","description":"- Intro","sidebar":"tutorialSidebar"},"technologies/kafka/security":{"id":"technologies/kafka/security","title":"Security","description":"With a standard Kafka setup, any user or application can write any messages to any topic, as well as read data from any topics.","sidebar":"tutorialSidebar"},"technologies/kafka/strimzi":{"id":"technologies/kafka/strimzi","title":"Strimzi","description":"Strimzi HTTP Bridge for Apache Kafka","sidebar":"tutorialSidebar"},"technologies/others/fasttag":{"id":"technologies/others/fasttag","title":"FastTag","description":"Fastag Service | Fastag Integration API","sidebar":"tutorialSidebar"},"technologies/others/other-technologies":{"id":"technologies/others/other-technologies","title":"Other Technologies","description":"Opensource Free Stuff","sidebar":"tutorialSidebar"},"technologies/others/others-distributed-systems":{"id":"technologies/others/others-distributed-systems","title":"Others - Distributed Systems","description":"Orbit","sidebar":"tutorialSidebar"},"technologies/others/others-iot":{"id":"technologies/others/others-iot","title":"Others - IoT","description":"MainFlux","sidebar":"tutorialSidebar"},"technologies/others/presto":{"id":"technologies/others/presto","title":"Presto","description":"Distributed SQL Query Engine for BigData","sidebar":"tutorialSidebar"},"technologies/others/readme":{"id":"technologies/others/readme","title":"Others","description":"- Presto","sidebar":"tutorialSidebar"},"technologies/readme":{"id":"technologies/readme","title":"Technologies","description":"- Git","sidebar":"tutorialSidebar"}}}')}}]); \ No newline at end of file diff --git a/assets/js/983c0810.afd9294b.js b/assets/js/983c0810.9e5ded1c.js similarity index 90% rename from assets/js/983c0810.afd9294b.js rename to assets/js/983c0810.9e5ded1c.js index 41e81cfa592..5a7971ab6a6 100644 --- a/assets/js/983c0810.afd9294b.js +++ b/assets/js/983c0810.9e5ded1c.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[28607],{282651:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>o,contentTitle:()=>a,default:()=>h,frontMatter:()=>r,metadata:()=>l,toc:()=>d});var i=s(785893),t=s(511151);const r={},a="(1) Linux General / Unix / Linux Commands",l={id:"devops/terminal-bash/1-linux-general-unix-linux-commands",title:"(1) Linux General / Unix / Linux Commands",description:"Display",source:"@site/docs/devops/terminal-bash/1-linux-general-unix-linux-commands.md",sourceDirName:"devops/terminal-bash",slug:"/devops/terminal-bash/1-linux-general-unix-linux-commands",permalink:"/devops/terminal-bash/1-linux-general-unix-linux-commands",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/devops/terminal-bash/1-linux-general-unix-linux-commands.md",tags:[],version:"current",lastUpdatedAt:1732812944,formattedLastUpdatedAt:"Nov 28, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Terminal Bash",permalink:"/devops/terminal-bash/"},next:{title:"(2) System Calls",permalink:"/devops/terminal-bash/2-system-calls"}},o={},d=[{value:"Display",id:"display",level:2},{value:"ssh to server",id:"ssh-to-server",level:2},{value:"Having different ssh keys for different github accounts",id:"having-different-ssh-keys-for-different-github-accounts",level:3},{value:"SSH Agent Forwarding",id:"ssh-agent-forwarding",level:3},{value:"SCP from server (Copy a file from server to local, from local machine)",id:"scp-from-server-copy-a-file-from-server-to-local-from-local-machine",level:3},{value:"SCP to server (Copy a file from local to server, from local machine)",id:"scp-to-server-copy-a-file-from-local-to-server-from-local-machine",level:3},{value:"SCP directory (use -r option)",id:"scp-directory-use--r-option",level:3},{value:"Directory and user permissions",id:"directory-and-user-permissions",level:2},{value:"Redirection and Pipes",id:"redirection-and-pipes",level:2},{value:"Wildcards and Help",id:"wildcards-and-help",level:3},{value:"rm command",id:"rm-command",level:3},{value:"date",id:"date",level:3},{value:"history",id:"history",level:3},{value:"List directory contents",id:"list-directory-contents",level:3},{value:"lsof",id:"lsof",level:2},{value:"Count",id:"count",level:2},{value:"Head (Show the top 2 lines in the file)",id:"head-show-the-top-2-lines-in-the-file",level:3},{value:"Tail (Show the last lines in the file)",id:"tail-show-the-last-lines-in-the-file",level:3},{value:"Hexdump",id:"hexdump",level:3},{value:"Source",id:"source",level:2},{value:"Make",id:"make",level:2},{value:"BitBake",id:"bitbake",level:3},{value:"Add new user",id:"add-new-user",level:3},{value:"Change current user",id:"change-current-user",level:3},{value:"See current user",id:"see-current-user",level:3},{value:"Seq command",id:"seq-command",level:2},{value:"Netstat command (list open ports)",id:"netstat-command-list-open-ports",level:2},{value:"nslookup command",id:"nslookup-command",level:2},{value:"dig command",id:"dig-command",level:2},{value:"uptime",id:"uptime",level:3},{value:"w",id:"w",level:3},{value:"sort",id:"sort",level:3},{value:"alias <alias_command_name>",id:"alias-alias_command_name",level:3},{value:"paste",id:"paste",level:3},{value:"ln (Create links)",id:"ln-create-links",level:3},{value:"hard vs symbolic links",id:"hard-vs-symbolic-links",level:4},{value:"find",id:"find",level:3},{value:"hostname",id:"hostname",level:3},{value:"environments",id:"environments",level:3},{value:"tr (translate characters)",id:"tr-translate-characters",level:3},{value:"tcpdump (wireshark)",id:"tcpdump-wireshark",level:3},{value:"killall",id:"killall",level:3},{value:"Log parsing commands",id:"log-parsing-commands",level:2},{value:"Grep",id:"grep",level:3},{value:"cut",id:"cut",level:3},{value:"sed",id:"sed",level:3},{value:"Finding duplicates with uniq",id:"finding-duplicates-with-uniq",level:3},{value:"openssl",id:"openssl",level:2},{value:"Encrypt decrypt a file or folder",id:"encrypt-decrypt-a-file-or-folder",level:3},{value:"public private key pair",id:"public-private-key-pair",level:3},{value:"ts",id:"ts",level:3},{value:"ps",id:"ps",level:3},{value:"tree",id:"tree",level:3},{value:"/usr/bin/time",id:"usrbintime",level:3},{value:"time",id:"time",level:3},{value:"Compression",id:"compression",level:3},{value:"df - report file system disk space usage",id:"df---report-file-system-disk-space-usage",level:3},{value:"du (disk usage) - estimate file space usage",id:"du-disk-usage---estimate-file-space-usage",level:3},{value:"lsblk",id:"lsblk",level:3},{value:"NetCat (NC)",id:"netcat-nc",level:2},{value:"strace",id:"strace",level:2},{value:"nice/renice",id:"nicerenice",level:2},{value:"Nice",id:"nice",level:3},{value:"Renice",id:"renice",level:3},{value:"nohup",id:"nohup",level:2},{value:"Screen",id:"screen",level:3},{value:"sample",id:"sample",level:2},{value:"Others",id:"others",level:2},{value:"taskset",id:"taskset",level:2},{value:"References",id:"references",level:2}];function c(e){const n={a:"a",code:"code",em:"em",h1:"h1",h2:"h2",h3:"h3",h4:"h4",img:"img",li:"li",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,t.a)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"1-linux-general--unix--linux-commands",children:"(1) Linux General / Unix / Linux Commands"}),"\n",(0,i.jsx)(n.h2,{id:"display",children:"Display"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:'cat "file" //display a file\nless "file" //display a file a page at a time\nhead "file" //display the first few lines of a file\ntail "file" //display the last few lines of a file\n tail -F #to follow log-rotated files\nhead\nless ( spacebar - forward, b - backward, q - quit)\n\n# Copy / Move\ncp "file1" "file2" //copy file1 and call it file2\nmv "file1" "file2" //move or rename file1 to file2\n\n# move all types of files from all directory to single directory\nmv **/*.jpg media/\n'})}),"\n",(0,i.jsx)(n.h2,{id:"ssh-to-server",children:"ssh to server"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:'chmod 400 devec2.pem\nssh -i devec2.pem ec2-user@18.237.184.186\n\nssh ubuntu@energy.abc.com (simple ssh)\n\nssh -L 8889:localhost:8888 ubuntu@bepemis.abc.com (port forwarding from server to local)\n\nssh -L 27017:localhost:27017 -i strawhat-core-key ubuntu@3.108.70.26\n\nssh -i private.pem ubuntu@energy.abc.com (using key)\n\nssh -i id_rsa ubuntu@openvpn.abc.com\n\n# Other\nssh-add\nssh-copy-id\nssh-keygen\nssh-keyscan\nssh-old\nsshd\nssh-agent\nssh-import-id\n\n# SSH KeyGen\nssh-keygen -t rsa -b 4096 -C "deepaksood619@gmail.com"\nssh-keygen -t rsa -b 4096 -C "deepak.sood@opstree.com"\nssh-keygen -t rsa -b 4096 -C "deepak.sood@stashfin.com"\nssh-keygen -t rsa -b 4096 -C "deepak.sood@careers360.in"\n\nssh-keygen -R energy.abc.com # reset the saved key of server\n\nssh-keygen -t ecdsa -b 521 -C "deepaksood619@gmail.com"\n\nssh config (man ssh_config - OpenSSH SSH client configuration files)\n Add all the details for a server ssh to ~/.ssh/config file\n Host dev\n HostName dev.abc.com\n Port 1234\n User ubuntu\n ForwardAgent yes\n IdentityFile ~/.ssh/dev.key\n LocalForward 8888 0.0.0.0:8888\n\n Host git-codecommit.*.amazonaws.com\n User XXXAU2R6AAK3AIIGFXXX\n IdentityFile ~/.ssh/id_rsa\n\n Without LocalForward ssh - ssh dev\n For using LocalForward ssh - ssh -f -N dev\n'})}),"\n",(0,i.jsx)(n.h3,{id:"having-different-ssh-keys-for-different-github-accounts",children:"Having different ssh keys for different github accounts"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:'ssh-keygen -t ecdsa -b 521 -C "deepaksood619@gmail.com"\n\nssh-keygen -t rsa -b 4096 -C "personal_email@example.com" -f ~/.ssh/id_rsa_personal\n\nssh-keygen -t rsa -b 4096 -C "work_email@example.com" -f ~/.ssh/id_rsa_work\n\nvim ~/.ssh/config\n'})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-text",metastring:'title="~/.ssh/config"',children:"# Default SSH key\nHost github.com\n User git\n IdentityFile ~/.ssh/id_rsa\n\n# Personal GitHub account\nHost github-personal\n HostName github.com\n User git\n IdentityFile ~/.ssh/id_rsa_personal\n\n# Work GitHub account\nHost github-work\n HostName github.com\n User git\n IdentityFile ~/.ssh/id_rsa_work\n"})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"# test the ssh connection\nssh -T git@github.com\nssh -T git@github-personal\nssh -T git@github-work\n"})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"# These will use the specified keys for the respective aliases.\ngit clone git@github.com:username/repository.git\ngit clone git@github-personal:username/repository.git\ngit clone git@github-work:username/repository.git\n"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://chatgpt.com/share/674227b5-5480-8008-a0cc-f7b0b5af143a",children:"ChatGPT - Git SSH Key Setup"})}),"\n",(0,i.jsx)(n.h3,{id:"ssh-agent-forwarding",children:"SSH Agent Forwarding"}),"\n",(0,i.jsx)(n.p,{children:"It allows you to use your local SSH keys instead of leaving keys (without passphrases!) sitting on your server."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://dev.to/levivm/how-to-use-ssh-and-ssh-agent-forwarding-more-secure-ssh-2c32",children:"https://dev.to/levivm/how-to-use-ssh-and-ssh-agent-forwarding-more-secure-ssh-2c32"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://www.ssh.com/ssh/config",children:"https://www.ssh.com/ssh/config"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://nerderati.com/2011/03/17/simplify-your-life-with-an-ssh-config-file",children:"https://nerderati.com/2011/03/17/simplify-your-life-with-an-ssh-config-file"})}),"\n",(0,i.jsx)(n.h3,{id:"scp-from-server-copy-a-file-from-server-to-local-from-local-machine",children:"SCP from server (Copy a file from server to local, from local machine)"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"scp username@remoteHost:/remote/dir/file.txt /local/dir/\n\nscp -i ../ec2_ssh_key.pem ubuntu@15.206.94.125:/home/ubuntu/workspace/cred-stuff .\n\n-r # for recursive copying a directory\n"})}),"\n",(0,i.jsx)(n.h3,{id:"scp-to-server-copy-a-file-from-local-to-server-from-local-machine",children:"SCP to server (Copy a file from local to server, from local machine)"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"scp /local/dir/ username@remoteHost:/remote/dir/file.txt"})}),"\n",(0,i.jsx)(n.h3,{id:"scp-directory-use--r-option",children:"SCP directory (use -r option)"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"scp -r ubuntu@energy.example.com:/home/ubuntu/sources/example/media /home/ubuntu/sources/example/media"})}),"\n",(0,i.jsx)(n.h2,{id:"directory-and-user-permissions",children:"Directory and user permissions"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"# Change current directory permissions for user\nchown -R test:test .\n\n# Change current file permission\nsudo chmod +r /var/log/electric_meter.log\n\n# Give sudo access to user\nsudo usermod -a -G adm telegraf\nsudo usermod -a -G root telegraf\n"})}),"\n",(0,i.jsx)(n.h2,{id:"redirection-and-pipes",children:"Redirection and Pipes"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"program_command 2>&1 | tee -a outfile.log"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command > output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"The standard output stream will be redirected to the file only, it will not be visible in the terminal. If the file already exists, it gets overwritten."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command >> output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"The standard output stream will be redirected to the file only, it will not be visible in the terminal. If the file already exists, the new data will get appended to the end of the file."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command 2> output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"The standard error stream will be redirected to the file only, it will not be visible in the terminal. If the file already exists, it gets overwritten."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command 2>> output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"The standard error stream will be redirected to the file only, it will not be visible in the terminal. If the file already exists, the new data will get appended to the end of the file."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command &> output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"Both the standard output and standard error stream will be redirected to the file only, nothing will be visible in the terminal. If the file already exists, it gets overwritten."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command &>> output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"Both the standard output and standard error stream will be redirected to the file only, nothing will be visible in the terminal. If the file already exists, the new data will get appended to the end of the file.."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command | tee output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"The standard output stream will be copied to the file, it will still be visible in the terminal. If the file already exists, it gets overwritten."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command | tee -a output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"The standard output stream will be copied to the file, it will still be visible in the terminal. If the file already exists, the new data will get appended to the end of the file."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command |& tee output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"Both the standard output and standard error streams will be copied to the file while still being visible in the terminal. If the file already exists, it gets overwritten."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"command |& tee -a output.txt"}),"\nBoth the standard output and standard error streams will be copied to the file while still being visible in the terminal. If the file already exists, the new data will get appended to the end of the file."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:'"command" < "file"'})," //redirect standard input from a file"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:'"command1" | "command2"'})," //pipe the output of command1 to the input of command2"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:'cat "file1" "file2" > "file0"'})," //concatenate file1 and file2 to file0"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"sort"})," //sort data"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"who"})," //list users currently logged in"]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{children:"Syntax"}),(0,i.jsx)(n.th,{children:"visible in terminal - StdOut"}),(0,i.jsx)(n.th,{children:"visible in terminal - StdErr"}),(0,i.jsx)(n.th,{children:"visible in file - StdOut"}),(0,i.jsx)(n.th,{children:"visible in file - StdErr"}),(0,i.jsx)(n.th,{children:"existing file"})]})}),(0,i.jsxs)(n.tbody,{children:[(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:">"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"overwrite"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:">>"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"append"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"2>"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"overwrite"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"2>>"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"append"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"&>"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"overwrite"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"&>>"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"append"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"tee"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"overwrite"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"tee -a"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"append"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"n.e. (*)"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"overwrite"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"n.e. (*)"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"append"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"& tee"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"overwrite"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"& tee -a"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"append"})]})]})]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"http://www.tldp.org/LDP/abs/html/io-redirection.html",children:"http://www.tldp.org/LDP/abs/html/io-redirection.html"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Example"})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"vmq-admin trace client client-id=/Samhi-42 >> trace.log 2>&1 &\n\npython test_de_script.py de_run_final.csv 2>&1 | tee -a outfile.log\n\n30 0 * * * aws autoscaling update-auto-scaling-group --auto-scaling-group-name eks-application-node-group --max-size 80 >> /var/log/autoscaling_asg.log 2>&1\n"})}),"\n",(0,i.jsx)(n.h3,{id:"wildcards-and-help",children:"Wildcards and Help"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"*"})," //match any number of characters"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"?"})," //match one character"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:'man "command"'})," //read the online manual page for a command"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:'whatis "command"'})," //brief description of a command"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:'apropos "keyword"'})," //match commands with keyword in their man pages","\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"apropos compress"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"rm-command",children:"rm command"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"rm -Rdf #remove directory\nsudo rm -rvf * #delete everything\nrmdir #remove an empty directory\nrm #remove a file\n"})}),"\n",(0,i.jsx)(n.h3,{id:"date",children:"date"}),"\n",(0,i.jsx)(n.p,{children:"display or set date and time"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"echo $(($(date +%s%N)/1000000)) # using nanoseconds"})}),"\n",(0,i.jsx)(n.h3,{id:"history",children:"history"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"history\n\n# clear all terminal history\nhistory -c && history -w\n"})}),"\n",(0,i.jsx)(n.h3,{id:"list-directory-contents",children:"List directory contents"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"ls #listing\nls -laf\nls -alst\nls -R #Show contents of directory recursively\nls -l # long listing format\n-rwxrw-r-- 1 root root 2048 Jan 13 07:11 afile.exe\n - file permissions,\n - number of links,\n - owner name,\n - owner group,\n - file size,\n - time of last modification, and\n - file/directory name\nFile permissions is displayed as following;\n - first character is - or l or d, d indicates a directory, a line represents a file, l is a symlink (or soft link) - special type of file\n - three sets of characters, three times, indicating permissions for owner, group and other:\n r = readable\n w = writable\n x = executable\n"})}),"\n",(0,i.jsx)(n.h2,{id:"lsof",children:"lsof"}),"\n",(0,i.jsxs)(n.p,{children:['lsof is a command meaning "list open files", which is used in many ',(0,i.jsx)(n.a,{href:"https://en.m.wikipedia.org/wiki/Unix-like",children:"Unix-like"})," systems to report a list of all open files and the processes that opened them"]}),"\n",(0,i.jsxs)(n.p,{children:["Open files in the system include disk files, ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Named_pipe",children:"named pipes"}),", network ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Internet_socket",children:"sockets"})," and devices opened by all processes. One use for this command is when a disk cannot be unmounted because (unspecified) files are in use. The listing of open files can be consulted (suitably filtered if necessary) to identify the process that is using the files."]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"see open ports"})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"sudo lsof -i -P -n | grep LISTEN\nsudo lsof -i:22 #see a specific port such as 22\nlsof -a -i -s TCP:SYN_RECV\n[lsof - Wikipedia](https://en.wikipedia.org/wiki/Lsof)\n"})}),"\n",(0,i.jsx)(n.h2,{id:"count",children:"Count"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"ls -l | wc -l (Count number of files in a directory)\nfind . -type f | wc -l (Count number of files in a directory recursively)\nwc - l file.txt (lines)\nwc -w file.txt (words)\n"})}),"\n",(0,i.jsx)(n.h3,{id:"head-show-the-top-2-lines-in-the-file",children:"Head (Show the top 2 lines in the file)"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"$ head -n 2 adult.data"})}),"\n",(0,i.jsx)(n.h3,{id:"tail-show-the-last-lines-in-the-file",children:"Tail (Show the last lines in the file)"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"$ tail -n 10 adult.data"})}),"\n",(0,i.jsx)(n.h3,{id:"hexdump",children:"Hexdump"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"$ cat test.txt\nhi\n\n$ hexdump test.txt\n0000000 68 69\n\nHere 68 is 'h' in ASCII and 69 is 'i' in ASCII\n"})}),"\n",(0,i.jsx)(n.h2,{id:"source",children:"Source"}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.a,{href:"http://ss64.com/bash/source.html",children:"source"})," is a bash shell built-in command that executes the content of the file passed as argument, ",(0,i.jsx)(n.em,{children:(0,i.jsx)(n.strong,{children:"in the current shell"})}),". It has a synonym in.(period)."]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"source ~/.bash_profile"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:". ~/.bash_profile"})}),"\n",(0,i.jsx)(n.h2,{id:"make",children:"Make"}),"\n",(0,i.jsx)(n.h3,{id:"bitbake",children:"BitBake"}),"\n",(0,i.jsxs)(n.p,{children:["BitBakeis a ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Make_(software)",children:"make"}),"-like ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Build_tool",children:"build tool"})," with the special focus of ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Linux_distributions",children:"distributions"})," and packages for ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Embedded_Linux",children:"embedded Linux"}),(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Cross_compilation",children:"cross compilation"}),", although it is not limited to that. It is inspired by ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Portage_(software)",children:"Portage"}),", which is the ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Package_management_system",children:"package management system"})," used by the ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Gentoo_Linux",children:"Gentoo Linux"})," distribution. BitBake existed for some time in the ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/OpenEmbedded",children:"OpenEmbedded"})," project until it was separated out into a standalone, maintained, distribution-independent tool. BitBake is co-maintained by the ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Yocto_Project",children:"Yocto Project"})," and the ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/OpenEmbedded",children:"OpenEmbedded"})," project"]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/BitBake",children:"https://en.wikipedia.org/wiki/BitBake"})}),"\n",(0,i.jsx)(n.h3,{id:"add-new-user",children:"Add new user"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"useradd username"})}),"\n",(0,i.jsx)(n.h3,{id:"change-current-user",children:"Change current user"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"su username\nsudo -u telegraf /bin/bash\n"})}),"\n",(0,i.jsx)(n.h3,{id:"see-current-user",children:"See current user"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"whoami"})}),"\n",(0,i.jsx)(n.h2,{id:"seq-command",children:"Seq command"}),"\n",(0,i.jsx)(n.p,{children:"print sequences of number"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"seq [-w] [-f format] [-s string] [-t string] [first [incr]] last"})}),"\n",(0,i.jsx)(n.h2,{id:"netstat-command-list-open-ports",children:"Netstat command (list open ports)"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"netstat -a #list all network ports\nnetstat -at #list all TCP Ports\nnetstat -s #show statistics for all ports\nnetstat -atn # For tcp\nnetstat -aun # For udp\nnetstat -atun # For both\nnetstat -an | grep :9105 | grep -v TIME_WAIT | wc -l\nnetstat -an | grep :9105 | grep ESTABLISHED | wc -l\nsudo netstat -planet | grep 1883 | wc -l\n"})}),"\n",(0,i.jsx)(n.h2,{id:"nslookup-command",children:"nslookup command"}),"\n",(0,i.jsx)(n.p,{children:"A network utility program used to obtain information about internet servers"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"nslookup -query=mx google.com #Query Mail Exchanger Record\nnslookup -type=ns google.com #Query Name Server\nnslookup -type=any google.com #Query DNS Record\nnslookup -type=soa google.com #Query Start of Authority\nnslookup kafka0.abc.com\n"})}),"\n",(0,i.jsx)(n.h2,{id:"dig-command",children:"dig command"}),"\n",(0,i.jsx)(n.p,{children:"A dig is a tool for querying DNS nameservers for information about host addresses, mail exchanges, nameservers and related information"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"dig google.com +nocomments #turn off comment lines\ndig google.com +noauthority #turn off authority section\ndig google.com +noall #disable all section at once\ndig +trace www.google.com\ndig @8.8.8.8 +trace github.com\ndig @ns-421.awsdns-52.com github.com\ndig -x 172.217.167.132 #will do a reverse lookup, doesn't always work -- it depends on there being an accurate PTR record\n"})}),"\n",(0,i.jsx)(n.h3,{id:"uptime",children:"uptime"}),"\n",(0,i.jsx)(n.p,{children:"show how long system has been running"}),"\n",(0,i.jsx)(n.p,{children:"The uptime utility displays the current time, the length of time the system has been up, the number of users, and the load average of the system over the last 1, 5, and 15 minutes."}),"\n",(0,i.jsx)(n.h3,{id:"w",children:"w"}),"\n",(0,i.jsx)(n.p,{children:"Combination of uptime and who commands given one immediately after the other, in that order"}),"\n",(0,i.jsx)(n.h3,{id:"sort",children:"sort"}),"\n",(0,i.jsx)(n.p,{children:"Unix Sort uses an External R-Way merge sorting algorithm. It divides the input up into smaller portions (that fit into memory) and then merges each portion together at the end."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"sort -t $'n' -g -o sorted_large.txt 1.txt"})}),"\n",(0,i.jsx)(n.h3,{id:"alias-alias_command_name",children:(0,i.jsx)(n.code,{children:"alias "})}),"\n",(0,i.jsx)(n.p,{children:"Return the full command for the passed alias_command_name"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"alias dc='docker-compose'"})}),"\n",(0,i.jsx)(n.h3,{id:"paste",children:"paste"}),"\n",(0,i.jsx)(n.p,{children:"merge corresponding or subsequent lines of files"}),"\n",(0,i.jsx)(n.h3,{id:"ln-create-links",children:"ln (Create links)"}),"\n",(0,i.jsx)(n.p,{children:"make links"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"ln test.txt link.txt"})}),"\n",(0,i.jsx)(n.p,{children:"The ln utility creates a new directory entry (linked file) which has the same modes as the original file. It is useful for maintaining multiple copies of a file in many places at once without using up storage for the copies; instead, a link points to the original copy. There are two types of links; hard links and symbolic links. How a link points to a file is one of the differences between a hard and symbolic link."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"ln -s /bin/zsh /usr/local/bin/zsh # create a symbolic link\n\nln -s /path/to/original /path/to/link\n\nln -s myfile.txt my-soft-link\n"})}),"\n",(0,i.jsx)(n.h4,{id:"hard-vs-symbolic-links",children:"hard vs symbolic links"}),"\n",(0,i.jsx)(n.p,{children:"Underneath the file system, files are represented by inodes."}),"\n",(0,i.jsx)(n.p,{children:"A file in the file system is basically a link to an inode."}),"\n",(0,i.jsx)(n.p,{children:"A hard link, then, just creates another file with a link to the same underlying inode."}),"\n",(0,i.jsx)(n.p,{children:"When you delete a file, it removes one link to the underlying inode. The inode is only deleted (or deletable/over-writable) when all links to the inode have been deleted."}),"\n",(0,i.jsx)(n.p,{children:"A symbolic link is a link to another name in the file system."}),"\n",(0,i.jsx)(n.p,{children:"Once a hard link has been made the link is to the inode. Deleting, renaming, or moving the original file will not affect the hard link as it links to the underlying inode. Any changes to the data on the inode is reflected in all files that refer to that inode."}),"\n",(0,i.jsx)(n.p,{children:"Note: Hard links are only valid within the same File System. Symbolic links can span file systems as they are simply the name of another file."}),"\n",(0,i.jsx)(n.h3,{id:"find",children:"find"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:'find . -name "zookeeper*"\n\n# ignore case\nfind . -iname "ipify*"\n\n# find and delete\nfind . -name "*.pyc" -type f\nfind . -name "*.pyc" -type f -delete\n\nfind . -type f -mtime +30 -exec -f {} \\;\n\n# find and replace in shole directory except \'config.yaml\'\nfind ./ ! -name \'config.yaml\' -type f -exec sed -i "s~${ecr_name}.*$~${ecr_name}\\\\/${app_name}\\\\/${env_name}:${app_name}-${env_name}-${timestamp}-${build_no}~" {} \\;\n\nfind -E . -regex \'.*hello[^/]*\' -type f\nfind AI -regex \'.*/[^a-zA-Z].*\'\nfind . -regex \'.*/[^a-zA-Z0-9.].*\' -not -path "*/node_modules/*" -not -path "*/.git/*"\n\nfind . -type f -name \'*outline.md\' -not -path "*/node_modules/*" -not -path "*/.git/*" -exec sh -c \'mv "$1" "${1%/*}/index.md"\' sh {} \\;\n\n# rename file, replace - with -\n# brew install rename\nfind . -name "*---*" -exec rename \'s/---/-/\' {} ";"\nfind . -name "*,*" -exec rename \'s/,//\' {} ";"\n\nfind . -name \'*\' -exec rename x {} +\n\n# rename file extension recursively\nfind content -type f -name \'*\' -print0 | xargs -0 rename \'s/$/x/\'\n\n# rename all files and folders to lowercase\nfind . -name "*" -type f -depth -not -path "*/node_modules/*" -not -path "*/.git/*" | xargs -n 1 rename -f \'s/(.*)\\/([^\\/]*)/$1\\/\\L$2/\' {} \\;\n\n# rename dslr photos to it\'s created date with appended original name\nfor f in *.*; do echo mv -n "$f" "$(stat -f\'%SB\' -t "%Y%m%d_%H%M%S" "$f")_${f%.*}.${f##*.}"; done\n\n# final command to rename DSLR photos\nfor f in *.*; do eval "mv -n \\"$f\\" \\"\\$(stat -f \'%SB\' -t \\"%Y%m%d_%H%M%S\\" \\"$f\\")_${f%.*}.${f##*.}\\""; done\n\n# rename dslr photos to it\'s created date without appended original name\nfor f in *.*; do echo mv -n "$f" "$(stat -f\'%SB\' -t "%Y%m%d_%H%M%S%fff" "$f").${f##*.}"; done\n'})}),"\n",(0,i.jsx)(n.h3,{id:"hostname",children:"hostname"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"hostname -- set or print name of current host system\nhostname -i #server\nhostname #mac\n"})}),"\n",(0,i.jsx)(n.h3,{id:"environments",children:"environments"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"printenv | less #print all loaded environment variables\necho $ #print value for environment variable\necho $? #print last call execution return value\nenv #print all environments loaded in current session\n"})}),"\n",(0,i.jsx)(n.h3,{id:"tr-translate-characters",children:"tr (translate characters)"}),"\n",(0,i.jsx)(n.p,{children:"The tr utility copies the standard input to the standard output with substitution or deletion of selected characters."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"cat domains.txt | tr [:lower:] [:upper:]\ncat linux.txt | tr [a-z] [A-Z]\n"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://www.tecmint.com/tr-command-examples-in-linux",children:"https://www.tecmint.com/tr-command-examples-in-linux"})}),"\n",(0,i.jsx)(n.h3,{id:"tcpdump-wireshark",children:"tcpdump (wireshark)"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"sudo tcpdump -i any port 9101 -w tcpdump"})}),"\n",(0,i.jsx)(n.h3,{id:"killall",children:"killall"}),"\n",(0,i.jsx)(n.p,{children:"kill processes by name"}),"\n",(0,i.jsx)(n.p,{children:"The killall utility kills processes selected by name, as opposed to the selection by pid as done by kill(1). By default, it will send a TERM signal to all processes with a real UID identical to the caller of killall that match the name procname. The super-user is allowed to kill any process."}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"The program gets sent a SIGTERM signal. kill -9 sends a SIGKILL signal"}),"\n",(0,i.jsx)(n.li,{children:"CTRL-C"}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"The program gets sent a SIGINT signal. By default that stops the program immediately, but the program can choose to ignore the signal or do something else before quitting"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Is it possible for a program to ignore a SIGKILL signal"}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"Programs can't ignore SIGKILL."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"killall kubectl\nkillall -v kubectl\n\n# forcefully terminate all running processes except login shell, init, and kernel-specific processes.\nkillall5 -9\n"})}),"\n",(0,i.jsx)(n.h2,{id:"log-parsing-commands",children:"Log parsing commands"}),"\n",(0,i.jsx)(n.h3,{id:"grep",children:"Grep"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:'# Search a file for keywords\ngrep \'keyword\' "file"\n\n# Grep regex\nls | grep "metrics-[^su]"\nls | grep "metrics-[^su]" | xargs rm -f\n\n# This prints 10 lines of trailing context after matching lines\ngrep -i -A 10 "my_regex" /var/log/syslog\n\n# If you need to print 10 lines of leading context before matching lines,\ngrep -i -B 10 "my_regex" /var/log/syslog\n\n# And if you need to print 10 lines of leading and trailing output context.\ngrep -i -C 10 "my_regex" /var/log/syslog\n\n# Common Flags\n-c: print a count of matching lines rather than the lines themselves\n-h: do not print the names of files when searching multiple files\n-i: ignore case (e.g., treat "Regression" and "regression" as matches)\n-l: print the names of files that contain matches, not the matches\n-n: print line numbers for matching lines\n-v: invert the match, i.e., only show lines that don\'t match\n grep -v "172.18.0.1"\n-E \'abc|*de\': or with regex\n'})}),"\n",(0,i.jsx)(n.h3,{id:"cut",children:"cut"}),"\n",(0,i.jsx)(n.p,{children:"cut out selected portions of each line of a file"}),"\n",(0,i.jsxs)(n.p,{children:["Can use ",(0,i.jsx)(n.strong,{children:"awk"})," instead of cut for better results"]}),"\n",(0,i.jsx)(n.h3,{id:"sed",children:"sed"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"sed -i '' 's+telegraf:.*+telegraf:x:0:0::/etc/telegraf:/bin/false+g' passwd #on macos\nsed -i 's+telegraf:.*+telegraf:x:0:0::/etc/telegraf:/bin/false+g' passwd #on unix\n\nfind ./ ! -name 'config.yaml' -type f -exec sed -i \"s~${ecr_name}.*$~${ecr_name}\\\\/${app_name}\\\\/${env_name}:${app_name}-${env_name}-${timestamp}-${build_no}~\" {} \\;\n\nfind ./ ! -name 'config.yaml' -type f -exec sed -i \"s~\n331916247734.dkr.ecr.ap-south-1.amazonaws.com/loan-tape-etl/prod:loan-tape-etl-prod-2020-08-07-20-10\n$~331916247734.dkr.ecr.ap-south-1.amazonaws.com/loan-tape-etl/prod:loan-tape-etl-prod-test~\" {} \\;\n"})}),"\n",(0,i.jsx)(n.h3,{id:"finding-duplicates-with-uniq",children:"Finding duplicates with uniq"}),"\n",(0,i.jsx)(n.p,{children:"With the uniq command you can find adjacent repeated lines in a file. uniq takes several flags, the more useful ones being:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"uniq -c: which adds the repetition count to each line;"}),"\n",(0,i.jsx)(n.li,{children:"uniq -d: which only outputs duplicate lines; And"}),"\n",(0,i.jsx)(n.li,{children:"uniq -u: which only outputs unique lines."}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"However, uniq is not a smart command. Repeated lines will not be detected if they are not adjacent. Which means that you first need the sort the file. This command counts the number of duplicated lines in adult.csv."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"sort adult.csv | uniq -d | wc -l"})}),"\n",(0,i.jsx)(n.p,{children:"23"}),"\n",(0,i.jsx)(n.p,{children:"and shows that there are 23 duplicates. The next command takes the output of all lines with added repetition counts, sorts in reverse and outputs the first 3 duplicates:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"sort adult.csv | uniq -c | sort -r | head -n 3\n3 25, Private, 195994, 1st-4th, 2, Never-married, ...\n2 90, Private, 52386, Some-college, 10, Never-married, ...\n2 49, Self-emp-not-inc, 43479, Some-college, 10, Married-civ-spouse, ...\n"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.img,{alt:"Log Parsing Commands",src:s(829466).Z+"",width:"1557",height:"2048"})}),"\n",(0,i.jsx)(n.h2,{id:"openssl",children:"openssl"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:'openssl rand -hex 16\nopenssl rand -hex 32\nopenssl rand -base64 32 #base64 encoded password generation\nopenssl base64 -in samhi.log -out samhi1_64.log\n\n# creating a self-signed certificate\nopenssl req -x509 -newkey rsa:4096 -sha256 -nodes -keyout tls.key -out tls.crt -subj "/CN=example.com" -days 365\n\nopenssl genrsa -out ca.key 2048\n\nopenssl req -x509 -new -nodes -key ca.key -sha256 -subj "/CN=sampleissuer.local" -days 1024 -out ca.crt -extensions v3_ca -config openssl-with-ca.cnf\n'})}),"\n",(0,i.jsx)(n.h3,{id:"encrypt-decrypt-a-file-or-folder",children:"Encrypt decrypt a file or folder"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"# encrypt a folder\ntar czvf folder.tar.gz /path/to/folder\nopenssl enc -aes-256-cbc -salt -pbkdf2 -in folder.tar.gz -out folder.tar.gz.enc\nrm -rf folder.tar.gz\nrm -rf /path/to/folder\n\n# decrypt a folder\nopenssl enc -d -aes-256-cbc -salt -pbkdf2 -in folder.tar.gz.enc -out folder.tar.gz\ntar xzvf folder.tar.gz\nrm -rf folder.tar.gz.enc\nrm -rf folder.tar.gz\n\n\nalias folder_encrypt='tar czvf test_folder.tar.gz test_folder && openssl enc -aes-256-cbc -salt -pbkdf2 -in test_folder.tar.gz -out test_folder.tar.gz.enc && rm -rf test_folder.tar.gz && rm -rf test_folder'\n\nalias folder_decrypt='openssl enc -d -aes-256-cbc -salt -pbkdf2 -in test_folder.tar.gz.enc -out test_folder.tar.gz && tar xzvf test_folder.tar.gz && rm -rf test_folder.tar.gz.enc && rm -rf test_folder.tar.gz'\n"})}),"\n",(0,i.jsx)(n.h3,{id:"public-private-key-pair",children:"public private key pair"}),"\n",(0,i.jsx)(n.p,{children:"You can generate a public-private keypair with thegenrsacontext (the last number is the keylength in bits):"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"openssl genrsa -out key.pem 2048\n\n# To extract the public part, use the rsa context:\nopenssl rsa -in keypair.pem -out publickey.crt -pubout\nopenssl rsa -in key.pem -out key.pub -pubout\n\n# Finally, convert the original keypair to PKCS#8 format with the pkcs8 context:\nopenssl pkcs8 -topk8 -inform PEM -outform PEM -nocrypt -in keypair.pem -out pkcs8.key\n\n# Encrypt and Decrypt a file (using public key to encrypt)\necho --pass-- > pass.txt\nopenssl rsautl -in pass.txt -out pass.enc -pubin -inkey key.pub -encrypt\nopenssl rsautl -in pass.enc -out pass.dec -inkey key.pem -decrypt\ncat pass.dec\n\n# Compress, Encrypt, Decyrpt, Uncompress a file (using password in pass.txt)\necho content > file.txt # overwrite file with content\necho content >> file.txt # append content to file.txt\ngzip file.txt\nopenssl bf -in file.txt.gz -out file.enc -pass file:pass.txt -e\nopenssl bf -in file.enc -out file.dec.gz -pass file:pass.dec -d\ngzip -d file.dec.gz\ncat file.dec\n"})}),"\n",(0,i.jsx)(n.h3,{id:"ts",children:"ts"}),"\n",(0,i.jsx)(n.p,{children:"openssl-ts, ts - Time Stamping Authority tool (client/server)"}),"\n",(0,i.jsx)(n.p,{children:"The ts command is a basic Time Stamping Authority (TSA) client and server application as specified in RFC 3161 (Time-Stamp Protocol, TSP). A TSA can be part of a PKI deployment and its role is to provide long term proof of the existence of a certain datum before a particular time."}),"\n",(0,i.jsxs)(n.p,{children:["A convenient tool is the ",(0,i.jsx)(n.strong,{children:"ts (timestamp)"})," tool which is available on many systems. If the trace output is piped to this command each line is prefixed with a timestamp."]}),"\n",(0,i.jsx)(n.h3,{id:"ps",children:"ps"}),"\n",(0,i.jsx)(n.p,{children:"report a snapshot of the current processes."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"# get minor page fault, major page fault\nps -eo min_flt,maj_flt,cmd\n\nps -eaf\n\nps aux / auxf (tree view)\nps aux --sort=-%mem\n - The a option tells ps the display the processes of all users, with except those processes that not associated with a terminal and processes of group leaders.\n - The u stands for a user-oriented format which provides detailed information about the processes.\n - The x option will case ps to list the processes without a controlling terminal. Those are mainly processes that are started on boot time and running in the background.\n\n - PID - The process ID. In most situations when running the ps command the most important information the user is looking for is the process PID. Knowing the PID allows you to kill a malfunctioning process.\n - TTY - The name of the controlling terminal for the process.\n - TIME - The cumulative CPU time of the process, shown in minutes and seconds.\n - CMD - The name of the command that was used to start the process.\n - USER - The user who runs the process.\n - %CPU - The process cpu utilization.\n - %MEM - The percentage of the process\u2019s resident set size to the physical memory on the machine.\n - VSZ - Virtual memory size of the process in KiB.\n - RSS - The size of the physical memory that the process is using.\n - STAT - The the process state code, which can be Z (zombie), S (sleeping), R(running) ..etc\n - START - The time when the command started.\n\nps $$\nOutput the shell that is running\n"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://linuxize.com/post/ps-command-in-linux",children:"https://linuxize.com/post/ps-command-in-linux"})}),"\n",(0,i.jsx)(n.h3,{id:"tree",children:"tree"}),"\n",(0,i.jsx)(n.p,{children:"list contents of directories in a tree-like format"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"tree -L 2"})}),"\n",(0,i.jsx)(n.h3,{id:"usrbintime",children:"/usr/bin/time"}),"\n",(0,i.jsx)(n.p,{children:"run programs and summarize system resource usage"}),"\n",(0,i.jsx)(n.h3,{id:"time",children:"time"}),"\n",(0,i.jsx)(n.p,{children:"Shell command for given shell statistics"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"real"}),": The actual time spent in running the process from start to finish, as if it was measured by a human with a stopwatch"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"user"}),": The cumulative time spent by all the CPUs during the computation"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"sys"}),": The cumulative time spent by all the CPUs during system-related tasks such as memory allocation."]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"compression",children:"Compression"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"tar -czvf all.tar.gz error.log.* (gzip all files together in a directory)\ntar -xzvf all.tar.gz -C /tmp (unzip all files to particular location)\n\ntar -xzvf all.tar.gz (unzip all files at current location)\ntar -c -xvf all.tar.gz\ntar -xvf all.tar.xz (unzip xz files)\ngzip -d .gz #unzip gz file\n\n!tar --exclude='*.csv' --exclude='__pycache__' --exclude='.ipynb_checkpoints' --exclude='*.json' --exclude='*.xml' --exclude='*.pdf' --exclude='*.pkl' -zcvf backup.tar.gz *\n!find . -name \"*.ipynb\" -o -name \"*.py\" | tar -zcvf backup.tar.gz -T -\n\n!find . -name \"*.ipynb\" -o -name \"*.py\" | tar -zcvf backup-ipynb-$(date +%Y-%m-%d).tar.gz -T -\ntar -zcvf backup-ipynb-$(date +%Y-%m-%d).tar.gz folder_to_zip\n\ntar -zcf backup-ipynb-$(date +%Y-%m-%d).tar.gz folder_to_zip # no output - without v\n\nbrew install rar\n unrar x.rar\n"})}),"\n",(0,i.jsx)(n.h3,{id:"df---report-file-system-disk-space-usage",children:"df - report file system disk space usage"}),"\n",(0,i.jsx)(n.p,{children:"There might come a situation while using Linux when you want to know the amount of space consumed by a particular file system on your LINUX system or how much space is available on a particular file system."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"df -h, --human-readable"})}),"\n",(0,i.jsx)(n.h3,{id:"du-disk-usage---estimate-file-space-usage",children:"du (disk usage) - estimate file space usage"}),"\n",(0,i.jsx)(n.p,{children:"The du command can be used to track the files and directories which are consuming excessive amount of space on hard disk drive."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"du -h, --human-readable\n\n# depth = 1\ndu -h -d 1\n\nTo list the largest directories from the current directory in human readable format, with retricting number of rows\ndu -sh * | sort -hr | head -n10\n\ndu -sh file_path\nExplanation\n - du (disc usage) command estimates file_path space usage\n - The options -sh are (from man du):\n-s, --summarize\n display only a total for each argument\n\n-h, --human-readable\n print sizes in human readable format (e.g., 1K 234M 2G)\n\nTo check more than one directory and see the total, use du -sch:\n-c, --total\n produce a grand total\n"})}),"\n",(0,i.jsx)(n.h3,{id:"lsblk",children:"lsblk"}),"\n",(0,i.jsxs)(n.p,{children:["The\xa0",(0,i.jsx)(n.code,{children:"lsblk"}),"\xa0command, short for \u201clist block devices,\u201d is a powerful tool that provides detailed information about block devices such as hard drives, solid-state drives, and other storage-related devices."]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"lsblk -a # To display empty block devices as well.\nlsblk -t # tree view\n"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://www.geeksforgeeks.org/lsblk-command-in-linux-with-examples/",children:"How to List All Block Devices in Linux | lsblk Command - GeeksforGeeks"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://man7.org/linux/man-pages/man8/lsblk.8.html",children:"lsblk(8) - Linux manual page"})}),"\n",(0,i.jsx)(n.h2,{id:"netcat-nc",children:"NetCat (NC)"}),"\n",(0,i.jsx)(n.p,{children:"The nc (or netcat) utility is used for just about anything under the sun involving TCP or UDP. It can open TCP connections, send UDP packets, listen on arbitrary TCP and UDP ports, do port scanning, and deal with both IPv4 and IPv6. Unlike telnet(1), nc scripts nicely, and separates error messages onto standard error instead of sending them to standard output, as telnet(1) does with some."}),"\n",(0,i.jsx)(n.p,{children:"Common uses include:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"simple TCP proxies"}),"\n",(0,i.jsx)(n.li,{children:"shell-script based HTTP clients and servers"}),"\n",(0,i.jsx)(n.li,{children:"network daemon testing"}),"\n",(0,i.jsx)(n.li,{children:"a SOCKS or HTTP ProxyCommand for ssh(1)"}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"nc -l 8000 -u"})}),"\n",(0,i.jsx)(n.h2,{id:"strace",children:"strace"}),"\n",(0,i.jsx)(n.p,{children:"trace system calls and signals"}),"\n",(0,i.jsx)(n.p,{children:"In the simplest casestraceruns the specifiedcommanduntil it exits. It intercepts and records the system calls which are called by a process and the signals which are received by a process. The name of each system call, its arguments and its return value are printed on standard error or to the file specified with the-ooption."}),"\n",(0,i.jsx)(n.p,{children:"straceis a useful diagnostic, instructional, and debugging tool. System administrators, diagnosticians and trouble-shooters will find it invaluable for solving problems with programs for which the source is not readily available since they do not need to be recompiled in order to trace them. Students, hackers and the overly-curious will find that a great deal can be learned about a system and its system calls by tracing even ordinary programs. And programmers will find that since system calls and signals are events that happen at the user/kernel interface, a close examination of this boundary is very useful for bug isolation, sanity checking and attempting to capture race conditions."}),"\n",(0,i.jsx)(n.p,{children:"MacOS - dtrace"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://linux.die.net/man/1/strace",children:"https://linux.die.net/man/1/strace"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://8thlight.com/blog/colin-jones/2015/11/06/dtrace-even-better-than-strace-for-osx.html",children:"https://8thlight.com/blog/colin-jones/2015/11/06/dtrace-even-better-than-strace-for-osx.html"})}),"\n",(0,i.jsx)(n.h2,{id:"nicerenice",children:"nice/renice"}),"\n",(0,i.jsx)(n.p,{children:"While the nice command lets you execute a program/process with modified scheduling priority, the renice command allows you to change the scheduling priority of an already running process. Following is the generic syntax forboth these commands:"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"nice [OPTION] [COMMAND [ARG]...]"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"renice [-n] priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]"})}),"\n",(0,i.jsx)(n.h3,{id:"nice",children:"Nice"}),"\n",(0,i.jsx)(n.p,{children:"Run COMMAND with an adjusted niceness, which affects process scheduling. With no COMMAND, print the current niceness. Niceness values range from -20 (most favorable to the process) to 19 (least favorable to the process)."}),"\n",(0,i.jsx)(n.h3,{id:"renice",children:"Renice"}),"\n",(0,i.jsx)(n.p,{children:"Renice alters the scheduling priority of one or more running processes. The following who parameters are interpreted as process ID's, process group ID's, or user names. Renice'ing a process group causes all processes in the process group to have their scheduling priority altered. Renice'ing a user causes all processes owned by the user to have their scheduling priority altered. By default, the processes to be affected are specified by their process ID's."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://www.howtoforge.com/linux-nice-command",children:"https://www.howtoforge.com/linux-nice-command"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://www.youtube.com/watch?v=GsF8R6DBxSg",children:"how greedy are your processes? | Linux niceness - YouTube"})}),"\n",(0,i.jsx)(n.h2,{id:"nohup",children:"nohup"}),"\n",(0,i.jsx)(n.p,{children:"The nohup utility invokes utility with its arguments and at this time sets the signal SIGHUP to be ignored. If the standard output is a terminal, the standard output is appended to the file nohup.out in the current directory. If standard error is a terminal, it is directed to the same place as the standard output."}),"\n",(0,i.jsx)(n.p,{children:"If you use the nohup command, you can continue processing even if you log out of the terminal."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"nohup jupyter notebook &"})}),"\n",(0,i.jsx)(n.h3,{id:"screen",children:"Screen"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"screen --version\n\nsudo apt install screen\n\n# Starting Named Session\nscreen -S session_name\n\nCtrl+a\xa0d\n\n# To resume your screen session\nscreen -r\n\n# To attach to specific session\nscreen -r session_name\n\n# list the current running screen sessions\nscreen -ls\n\n# delete the screen session\nscreen -X -S quit\n"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://linuxize.com/post/how-to-use-linux-screen/",children:"How To Use Linux Screen | Linuxize"})}),"\n",(0,i.jsx)(n.h2,{id:"sample",children:"sample"}),"\n",(0,i.jsx)(n.p,{children:"Profile a process during a time interval"}),"\n",(0,i.jsx)(n.p,{children:"sample is a command-line tool for gathering data about the running behavior of a process. It suspends the process at specified intervals (by default, every 1 millisecond), records the call stacks of all threads in the process at that time, then resumes the process. The analysis done by sample is called ``sampling'' because it only checks the state of the program at the sampling points. The analysis may miss execution of some functions that are not executing during one of the samples, but sample still provides useful data about commonly executing functions."}),"\n",(0,i.jsx)(n.p,{children:"At the end of the sampling duration, sample produces a report showing which functions were executing during the sampling. The data is condensed into a call tree, showing the functions seen on the stack and how they were called. (This tree is a subset of the actual call tree for the execution, since some functions may not have been executing during any of the sampling events.) The tree is displayed textually, with called functions indented one level to the right of the callee."}),"\n",(0,i.jsx)(n.p,{children:"In the call tree, if a function calls more than one function then a vertical line is printed to visually connect those separate children functions, making it easier to see which functions are at the same level. The characters used to draw those lines, such as + | : ! are arbitrary and have no specific meaning."}),"\n",(0,i.jsx)(n.h2,{id:"others",children:"Others"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:'1. !! / sudo !! (repeat last command with sudo)\n2. pwd (Print working Directory)\n3. xrandr -o normal (Screen rotation)\n4. sudo shred -n 1 -v -z /dev/sd (format full hard disk, first write random bits, than with zeros, to every address)\n5. bash install-missing.sh (running set of bash commands from a file)\n6. wc "file" //count number of lines/words/characters in file\n7. banner #prints a banner for \n8 file [path] #to check the type of file\n'})}),"\n",(0,i.jsx)(n.h2,{id:"taskset",children:"taskset"}),"\n",(0,i.jsx)(n.p,{children:'tasksetis used to set or retrieve the CPU affinity of a running process given its PID or to launch a new COMMAND with a given CPU affinity. CPU affinity is a scheduler property that "bonds" a process to a given set of CPUs on the system. The Linux scheduler will honor the given CPU affinity and the process will not run on any other CPUs. Note that the Linux scheduler also supports natural CPU affinity: the scheduler attempts to keep processes on the same CPU as long as practical for performance reasons. Therefore, forcing a specific CPU affinity is useful only in certain applications.'}),"\n",(0,i.jsx)(n.p,{children:"The CPU affinity is represented as a bitmask, with the lowest order bit corresponding to the first logical CPU and the highest order bit corresponding to the last logical CPU. Not all CPUs may exist on a given system but a mask may specify more CPUs than are present. A retrieved mask will reflect only the bits that correspond to CPUs physically on the system. If an invalid mask is given (i.e., one that corresponds to no valid CPUs on the current system) an error is returned. The masks are typically given in hexadecimal. For example,"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://linux.die.net/man/1/taskset",children:"https://linux.die.net/man/1/taskset"})}),"\n",(0,i.jsx)(n.h2,{id:"references",children:"References"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://dev.to/awwsmm/101-bash-commands-and-tips-for-beginners-to-experts-30je",children:"https://dev.to/awwsmm/101-bash-commands-and-tips-for-beginners-to-experts-30je"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://www.toptal.com/linux/tips-and-practices",children:"https://www.toptal.com/linux/tips-and-practices"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://www.freecodecamp.org/news/the-linux-commands-handbook",children:"https://www.freecodecamp.org/news/the-linux-commands-handbook"})})]})}function h(e={}){const{wrapper:n}={...(0,t.a)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},829466:(e,n,s)=>{s.d(n,{Z:()=>i});const i=s.p+"assets/images/Pasted image 20240620022249-82573284c9bee20723c9e3ff2504fc46.png"},511151:(e,n,s)=>{s.d(n,{Z:()=>l,a:()=>a});var i=s(667294);const t={},r=i.createContext(t);function a(e){const n=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:a(e.components),i.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[28607],{282651:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>o,contentTitle:()=>a,default:()=>h,frontMatter:()=>r,metadata:()=>l,toc:()=>d});var i=s(785893),t=s(511151);const r={},a="(1) Linux General / Unix / Linux Commands",l={id:"devops/terminal-bash/1-linux-general-unix-linux-commands",title:"(1) Linux General / Unix / Linux Commands",description:"Display",source:"@site/docs/devops/terminal-bash/1-linux-general-unix-linux-commands.md",sourceDirName:"devops/terminal-bash",slug:"/devops/terminal-bash/1-linux-general-unix-linux-commands",permalink:"/devops/terminal-bash/1-linux-general-unix-linux-commands",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/devops/terminal-bash/1-linux-general-unix-linux-commands.md",tags:[],version:"current",lastUpdatedAt:1732901510,formattedLastUpdatedAt:"Nov 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Terminal Bash",permalink:"/devops/terminal-bash/"},next:{title:"(2) System Calls",permalink:"/devops/terminal-bash/2-system-calls"}},o={},d=[{value:"Display",id:"display",level:2},{value:"ssh to server",id:"ssh-to-server",level:2},{value:"Having different ssh keys for different github accounts",id:"having-different-ssh-keys-for-different-github-accounts",level:3},{value:"SSH Agent Forwarding",id:"ssh-agent-forwarding",level:3},{value:"SCP from server (Copy a file from server to local, from local machine)",id:"scp-from-server-copy-a-file-from-server-to-local-from-local-machine",level:3},{value:"SCP to server (Copy a file from local to server, from local machine)",id:"scp-to-server-copy-a-file-from-local-to-server-from-local-machine",level:3},{value:"SCP directory (use -r option)",id:"scp-directory-use--r-option",level:3},{value:"Directory and user permissions",id:"directory-and-user-permissions",level:2},{value:"Redirection and Pipes",id:"redirection-and-pipes",level:2},{value:"Wildcards and Help",id:"wildcards-and-help",level:3},{value:"rm command",id:"rm-command",level:3},{value:"date",id:"date",level:3},{value:"history",id:"history",level:3},{value:"List directory contents",id:"list-directory-contents",level:3},{value:"lsof",id:"lsof",level:2},{value:"Count",id:"count",level:2},{value:"Head (Show the top 2 lines in the file)",id:"head-show-the-top-2-lines-in-the-file",level:3},{value:"Tail (Show the last lines in the file)",id:"tail-show-the-last-lines-in-the-file",level:3},{value:"Hexdump",id:"hexdump",level:3},{value:"Source",id:"source",level:2},{value:"Make",id:"make",level:2},{value:"BitBake",id:"bitbake",level:3},{value:"Add new user",id:"add-new-user",level:3},{value:"Change current user",id:"change-current-user",level:3},{value:"See current user",id:"see-current-user",level:3},{value:"Seq command",id:"seq-command",level:2},{value:"Netstat command (list open ports)",id:"netstat-command-list-open-ports",level:2},{value:"nslookup command",id:"nslookup-command",level:2},{value:"dig command",id:"dig-command",level:2},{value:"uptime",id:"uptime",level:3},{value:"w",id:"w",level:3},{value:"sort",id:"sort",level:3},{value:"alias <alias_command_name>",id:"alias-alias_command_name",level:3},{value:"paste",id:"paste",level:3},{value:"ln (Create links)",id:"ln-create-links",level:3},{value:"hard vs symbolic links",id:"hard-vs-symbolic-links",level:4},{value:"find",id:"find",level:3},{value:"hostname",id:"hostname",level:3},{value:"environments",id:"environments",level:3},{value:"tr (translate characters)",id:"tr-translate-characters",level:3},{value:"tcpdump (wireshark)",id:"tcpdump-wireshark",level:3},{value:"killall",id:"killall",level:3},{value:"Log parsing commands",id:"log-parsing-commands",level:2},{value:"Grep",id:"grep",level:3},{value:"cut",id:"cut",level:3},{value:"sed",id:"sed",level:3},{value:"Finding duplicates with uniq",id:"finding-duplicates-with-uniq",level:3},{value:"openssl",id:"openssl",level:2},{value:"Encrypt decrypt a file or folder",id:"encrypt-decrypt-a-file-or-folder",level:3},{value:"public private key pair",id:"public-private-key-pair",level:3},{value:"ts",id:"ts",level:3},{value:"ps",id:"ps",level:3},{value:"tree",id:"tree",level:3},{value:"/usr/bin/time",id:"usrbintime",level:3},{value:"time",id:"time",level:3},{value:"Compression",id:"compression",level:3},{value:"df - report file system disk space usage",id:"df---report-file-system-disk-space-usage",level:3},{value:"du (disk usage) - estimate file space usage",id:"du-disk-usage---estimate-file-space-usage",level:3},{value:"lsblk",id:"lsblk",level:3},{value:"NetCat (NC)",id:"netcat-nc",level:2},{value:"strace",id:"strace",level:2},{value:"nice/renice",id:"nicerenice",level:2},{value:"Nice",id:"nice",level:3},{value:"Renice",id:"renice",level:3},{value:"nohup",id:"nohup",level:2},{value:"Screen",id:"screen",level:3},{value:"sample",id:"sample",level:2},{value:"Others",id:"others",level:2},{value:"taskset",id:"taskset",level:2},{value:"References",id:"references",level:2}];function c(e){const n={a:"a",code:"code",em:"em",h1:"h1",h2:"h2",h3:"h3",h4:"h4",img:"img",li:"li",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,t.a)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"1-linux-general--unix--linux-commands",children:"(1) Linux General / Unix / Linux Commands"}),"\n",(0,i.jsx)(n.h2,{id:"display",children:"Display"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:'cat "file" //display a file\nless "file" //display a file a page at a time\nhead "file" //display the first few lines of a file\ntail "file" //display the last few lines of a file\n tail -F #to follow log-rotated files\nhead\nless ( spacebar - forward, b - backward, q - quit)\n\n# Copy / Move\ncp "file1" "file2" //copy file1 and call it file2\nmv "file1" "file2" //move or rename file1 to file2\n\n# move all types of files from all directory to single directory\nmv **/*.jpg media/\n'})}),"\n",(0,i.jsx)(n.h2,{id:"ssh-to-server",children:"ssh to server"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:'chmod 400 devec2.pem\nssh -i devec2.pem ec2-user@18.237.184.186\n\nssh ubuntu@energy.abc.com (simple ssh)\n\nssh -L 8889:localhost:8888 ubuntu@bepemis.abc.com (port forwarding from server to local)\n\nssh -L 27017:localhost:27017 -i strawhat-core-key ubuntu@3.108.70.26\n\nssh -i private.pem ubuntu@energy.abc.com (using key)\n\nssh -i id_rsa ubuntu@openvpn.abc.com\n\n# Other\nssh-add\nssh-copy-id\nssh-keygen\nssh-keyscan\nssh-old\nsshd\nssh-agent\nssh-import-id\n\n# SSH KeyGen\nssh-keygen -t rsa -b 4096 -C "deepaksood619@gmail.com"\nssh-keygen -t rsa -b 4096 -C "deepak.sood@opstree.com"\nssh-keygen -t rsa -b 4096 -C "deepak.sood@stashfin.com"\nssh-keygen -t rsa -b 4096 -C "deepak.sood@careers360.in"\n\nssh-keygen -R energy.abc.com # reset the saved key of server\n\nssh-keygen -t ecdsa -b 521 -C "deepaksood619@gmail.com"\n\nssh config (man ssh_config - OpenSSH SSH client configuration files)\n Add all the details for a server ssh to ~/.ssh/config file\n Host dev\n HostName dev.abc.com\n Port 1234\n User ubuntu\n ForwardAgent yes\n IdentityFile ~/.ssh/dev.key\n LocalForward 8888 0.0.0.0:8888\n\n Host git-codecommit.*.amazonaws.com\n User XXXAU2R6AAK3AIIGFXXX\n IdentityFile ~/.ssh/id_rsa\n\n Without LocalForward ssh - ssh dev\n For using LocalForward ssh - ssh -f -N dev\n'})}),"\n",(0,i.jsx)(n.h3,{id:"having-different-ssh-keys-for-different-github-accounts",children:"Having different ssh keys for different github accounts"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:'ssh-keygen -t ecdsa -b 521 -C "deepaksood619@gmail.com"\n\nssh-keygen -t rsa -b 4096 -C "personal_email@example.com" -f ~/.ssh/id_rsa_personal\n\nssh-keygen -t rsa -b 4096 -C "work_email@example.com" -f ~/.ssh/id_rsa_work\n\nvim ~/.ssh/config\n'})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-text",metastring:'title="~/.ssh/config"',children:"# Default SSH key\nHost github.com\n User git\n IdentityFile ~/.ssh/id_rsa\n\n# Personal GitHub account\nHost github-personal\n HostName github.com\n User git\n IdentityFile ~/.ssh/id_rsa_personal\n\n# Work GitHub account\nHost github-work\n HostName github.com\n User git\n IdentityFile ~/.ssh/id_rsa_work\n"})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"# test the ssh connection\nssh -T git@github.com\nssh -T git@github-personal\nssh -T git@github-work\n"})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"# These will use the specified keys for the respective aliases.\ngit clone git@github.com:username/repository.git\ngit clone git@github-personal:username/repository.git\ngit clone git@github-work:username/repository.git\n"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://chatgpt.com/share/674227b5-5480-8008-a0cc-f7b0b5af143a",children:"ChatGPT - Git SSH Key Setup"})}),"\n",(0,i.jsx)(n.h3,{id:"ssh-agent-forwarding",children:"SSH Agent Forwarding"}),"\n",(0,i.jsx)(n.p,{children:"It allows you to use your local SSH keys instead of leaving keys (without passphrases!) sitting on your server."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://dev.to/levivm/how-to-use-ssh-and-ssh-agent-forwarding-more-secure-ssh-2c32",children:"https://dev.to/levivm/how-to-use-ssh-and-ssh-agent-forwarding-more-secure-ssh-2c32"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://www.ssh.com/ssh/config",children:"https://www.ssh.com/ssh/config"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://nerderati.com/2011/03/17/simplify-your-life-with-an-ssh-config-file",children:"https://nerderati.com/2011/03/17/simplify-your-life-with-an-ssh-config-file"})}),"\n",(0,i.jsx)(n.h3,{id:"scp-from-server-copy-a-file-from-server-to-local-from-local-machine",children:"SCP from server (Copy a file from server to local, from local machine)"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"scp username@remoteHost:/remote/dir/file.txt /local/dir/\n\nscp -i ../ec2_ssh_key.pem ubuntu@15.206.94.125:/home/ubuntu/workspace/cred-stuff .\n\n-r # for recursive copying a directory\n"})}),"\n",(0,i.jsx)(n.h3,{id:"scp-to-server-copy-a-file-from-local-to-server-from-local-machine",children:"SCP to server (Copy a file from local to server, from local machine)"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"scp /local/dir/ username@remoteHost:/remote/dir/file.txt"})}),"\n",(0,i.jsx)(n.h3,{id:"scp-directory-use--r-option",children:"SCP directory (use -r option)"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"scp -r ubuntu@energy.example.com:/home/ubuntu/sources/example/media /home/ubuntu/sources/example/media"})}),"\n",(0,i.jsx)(n.h2,{id:"directory-and-user-permissions",children:"Directory and user permissions"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"# Change current directory permissions for user\nchown -R test:test .\n\n# Change current file permission\nsudo chmod +r /var/log/electric_meter.log\n\n# Give sudo access to user\nsudo usermod -a -G adm telegraf\nsudo usermod -a -G root telegraf\n"})}),"\n",(0,i.jsx)(n.h2,{id:"redirection-and-pipes",children:"Redirection and Pipes"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"program_command 2>&1 | tee -a outfile.log"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command > output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"The standard output stream will be redirected to the file only, it will not be visible in the terminal. If the file already exists, it gets overwritten."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command >> output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"The standard output stream will be redirected to the file only, it will not be visible in the terminal. If the file already exists, the new data will get appended to the end of the file."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command 2> output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"The standard error stream will be redirected to the file only, it will not be visible in the terminal. If the file already exists, it gets overwritten."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command 2>> output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"The standard error stream will be redirected to the file only, it will not be visible in the terminal. If the file already exists, the new data will get appended to the end of the file."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command &> output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"Both the standard output and standard error stream will be redirected to the file only, nothing will be visible in the terminal. If the file already exists, it gets overwritten."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command &>> output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"Both the standard output and standard error stream will be redirected to the file only, nothing will be visible in the terminal. If the file already exists, the new data will get appended to the end of the file.."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command | tee output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"The standard output stream will be copied to the file, it will still be visible in the terminal. If the file already exists, it gets overwritten."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command | tee -a output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"The standard output stream will be copied to the file, it will still be visible in the terminal. If the file already exists, the new data will get appended to the end of the file."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"command |& tee output.txt"})}),"\n",(0,i.jsx)(n.p,{children:"Both the standard output and standard error streams will be copied to the file while still being visible in the terminal. If the file already exists, it gets overwritten."}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"command |& tee -a output.txt"}),"\nBoth the standard output and standard error streams will be copied to the file while still being visible in the terminal. If the file already exists, the new data will get appended to the end of the file."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:'"command" < "file"'})," //redirect standard input from a file"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:'"command1" | "command2"'})," //pipe the output of command1 to the input of command2"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:'cat "file1" "file2" > "file0"'})," //concatenate file1 and file2 to file0"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"sort"})," //sort data"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"who"})," //list users currently logged in"]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{children:"Syntax"}),(0,i.jsx)(n.th,{children:"visible in terminal - StdOut"}),(0,i.jsx)(n.th,{children:"visible in terminal - StdErr"}),(0,i.jsx)(n.th,{children:"visible in file - StdOut"}),(0,i.jsx)(n.th,{children:"visible in file - StdErr"}),(0,i.jsx)(n.th,{children:"existing file"})]})}),(0,i.jsxs)(n.tbody,{children:[(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:">"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"overwrite"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:">>"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"append"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"2>"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"overwrite"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"2>>"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"append"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"&>"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"overwrite"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"&>>"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"append"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"tee"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"overwrite"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"tee -a"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"append"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"n.e. (*)"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"overwrite"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"n.e. (*)"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"no"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"append"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"& tee"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"overwrite"})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"& tee -a"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"yes"}),(0,i.jsx)(n.td,{children:"append"})]})]})]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"http://www.tldp.org/LDP/abs/html/io-redirection.html",children:"http://www.tldp.org/LDP/abs/html/io-redirection.html"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Example"})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"vmq-admin trace client client-id=/Samhi-42 >> trace.log 2>&1 &\n\npython test_de_script.py de_run_final.csv 2>&1 | tee -a outfile.log\n\n30 0 * * * aws autoscaling update-auto-scaling-group --auto-scaling-group-name eks-application-node-group --max-size 80 >> /var/log/autoscaling_asg.log 2>&1\n"})}),"\n",(0,i.jsx)(n.h3,{id:"wildcards-and-help",children:"Wildcards and Help"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"*"})," //match any number of characters"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"?"})," //match one character"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:'man "command"'})," //read the online manual page for a command"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:'whatis "command"'})," //brief description of a command"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:'apropos "keyword"'})," //match commands with keyword in their man pages","\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"apropos compress"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"rm-command",children:"rm command"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"rm -Rdf #remove directory\nsudo rm -rvf * #delete everything\nrmdir #remove an empty directory\nrm #remove a file\n"})}),"\n",(0,i.jsx)(n.h3,{id:"date",children:"date"}),"\n",(0,i.jsx)(n.p,{children:"display or set date and time"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"echo $(($(date +%s%N)/1000000)) # using nanoseconds"})}),"\n",(0,i.jsx)(n.h3,{id:"history",children:"history"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"history\n\n# clear all terminal history\nhistory -c && history -w\n"})}),"\n",(0,i.jsx)(n.h3,{id:"list-directory-contents",children:"List directory contents"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"ls #listing\nls -laf\nls -alst\nls -R #Show contents of directory recursively\nls -l # long listing format\n-rwxrw-r-- 1 root root 2048 Jan 13 07:11 afile.exe\n - file permissions,\n - number of links,\n - owner name,\n - owner group,\n - file size,\n - time of last modification, and\n - file/directory name\nFile permissions is displayed as following;\n - first character is - or l or d, d indicates a directory, a line represents a file, l is a symlink (or soft link) - special type of file\n - three sets of characters, three times, indicating permissions for owner, group and other:\n r = readable\n w = writable\n x = executable\n"})}),"\n",(0,i.jsx)(n.h2,{id:"lsof",children:"lsof"}),"\n",(0,i.jsxs)(n.p,{children:['lsof is a command meaning "list open files", which is used in many ',(0,i.jsx)(n.a,{href:"https://en.m.wikipedia.org/wiki/Unix-like",children:"Unix-like"})," systems to report a list of all open files and the processes that opened them"]}),"\n",(0,i.jsxs)(n.p,{children:["Open files in the system include disk files, ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Named_pipe",children:"named pipes"}),", network ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Internet_socket",children:"sockets"})," and devices opened by all processes. One use for this command is when a disk cannot be unmounted because (unspecified) files are in use. The listing of open files can be consulted (suitably filtered if necessary) to identify the process that is using the files."]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"see open ports"})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"sudo lsof -i -P -n | grep LISTEN\nsudo lsof -i:22 #see a specific port such as 22\nlsof -a -i -s TCP:SYN_RECV\n[lsof - Wikipedia](https://en.wikipedia.org/wiki/Lsof)\n"})}),"\n",(0,i.jsx)(n.h2,{id:"count",children:"Count"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"ls -l | wc -l (Count number of files in a directory)\nfind . -type f | wc -l (Count number of files in a directory recursively)\nwc - l file.txt (lines)\nwc -w file.txt (words)\n"})}),"\n",(0,i.jsx)(n.h3,{id:"head-show-the-top-2-lines-in-the-file",children:"Head (Show the top 2 lines in the file)"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"$ head -n 2 adult.data"})}),"\n",(0,i.jsx)(n.h3,{id:"tail-show-the-last-lines-in-the-file",children:"Tail (Show the last lines in the file)"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"$ tail -n 10 adult.data"})}),"\n",(0,i.jsx)(n.h3,{id:"hexdump",children:"Hexdump"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"$ cat test.txt\nhi\n\n$ hexdump test.txt\n0000000 68 69\n\nHere 68 is 'h' in ASCII and 69 is 'i' in ASCII\n"})}),"\n",(0,i.jsx)(n.h2,{id:"source",children:"Source"}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.a,{href:"http://ss64.com/bash/source.html",children:"source"})," is a bash shell built-in command that executes the content of the file passed as argument, ",(0,i.jsx)(n.em,{children:(0,i.jsx)(n.strong,{children:"in the current shell"})}),". It has a synonym in.(period)."]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"source ~/.bash_profile"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:". ~/.bash_profile"})}),"\n",(0,i.jsx)(n.h2,{id:"make",children:"Make"}),"\n",(0,i.jsx)(n.h3,{id:"bitbake",children:"BitBake"}),"\n",(0,i.jsxs)(n.p,{children:["BitBakeis a ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Make_(software)",children:"make"}),"-like ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Build_tool",children:"build tool"})," with the special focus of ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Linux_distributions",children:"distributions"})," and packages for ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Embedded_Linux",children:"embedded Linux"}),(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Cross_compilation",children:"cross compilation"}),", although it is not limited to that. It is inspired by ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Portage_(software)",children:"Portage"}),", which is the ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Package_management_system",children:"package management system"})," used by the ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Gentoo_Linux",children:"Gentoo Linux"})," distribution. BitBake existed for some time in the ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/OpenEmbedded",children:"OpenEmbedded"})," project until it was separated out into a standalone, maintained, distribution-independent tool. BitBake is co-maintained by the ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Yocto_Project",children:"Yocto Project"})," and the ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/OpenEmbedded",children:"OpenEmbedded"})," project"]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/BitBake",children:"https://en.wikipedia.org/wiki/BitBake"})}),"\n",(0,i.jsx)(n.h3,{id:"add-new-user",children:"Add new user"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"useradd username"})}),"\n",(0,i.jsx)(n.h3,{id:"change-current-user",children:"Change current user"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"su username\nsudo -u telegraf /bin/bash\n"})}),"\n",(0,i.jsx)(n.h3,{id:"see-current-user",children:"See current user"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"whoami"})}),"\n",(0,i.jsx)(n.h2,{id:"seq-command",children:"Seq command"}),"\n",(0,i.jsx)(n.p,{children:"print sequences of number"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"seq [-w] [-f format] [-s string] [-t string] [first [incr]] last"})}),"\n",(0,i.jsx)(n.h2,{id:"netstat-command-list-open-ports",children:"Netstat command (list open ports)"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"netstat -a #list all network ports\nnetstat -at #list all TCP Ports\nnetstat -s #show statistics for all ports\nnetstat -atn # For tcp\nnetstat -aun # For udp\nnetstat -atun # For both\nnetstat -an | grep :9105 | grep -v TIME_WAIT | wc -l\nnetstat -an | grep :9105 | grep ESTABLISHED | wc -l\nsudo netstat -planet | grep 1883 | wc -l\n"})}),"\n",(0,i.jsx)(n.h2,{id:"nslookup-command",children:"nslookup command"}),"\n",(0,i.jsx)(n.p,{children:"A network utility program used to obtain information about internet servers"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"nslookup -query=mx google.com #Query Mail Exchanger Record\nnslookup -type=ns google.com #Query Name Server\nnslookup -type=any google.com #Query DNS Record\nnslookup -type=soa google.com #Query Start of Authority\nnslookup kafka0.abc.com\n"})}),"\n",(0,i.jsx)(n.h2,{id:"dig-command",children:"dig command"}),"\n",(0,i.jsx)(n.p,{children:"A dig is a tool for querying DNS nameservers for information about host addresses, mail exchanges, nameservers and related information"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"dig google.com +nocomments #turn off comment lines\ndig google.com +noauthority #turn off authority section\ndig google.com +noall #disable all section at once\ndig +trace www.google.com\ndig @8.8.8.8 +trace github.com\ndig @ns-421.awsdns-52.com github.com\ndig -x 172.217.167.132 #will do a reverse lookup, doesn't always work -- it depends on there being an accurate PTR record\n"})}),"\n",(0,i.jsx)(n.h3,{id:"uptime",children:"uptime"}),"\n",(0,i.jsx)(n.p,{children:"show how long system has been running"}),"\n",(0,i.jsx)(n.p,{children:"The uptime utility displays the current time, the length of time the system has been up, the number of users, and the load average of the system over the last 1, 5, and 15 minutes."}),"\n",(0,i.jsx)(n.h3,{id:"w",children:"w"}),"\n",(0,i.jsx)(n.p,{children:"Combination of uptime and who commands given one immediately after the other, in that order"}),"\n",(0,i.jsx)(n.h3,{id:"sort",children:"sort"}),"\n",(0,i.jsx)(n.p,{children:"Unix Sort uses an External R-Way merge sorting algorithm. It divides the input up into smaller portions (that fit into memory) and then merges each portion together at the end."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"sort -t $'n' -g -o sorted_large.txt 1.txt"})}),"\n",(0,i.jsx)(n.h3,{id:"alias-alias_command_name",children:(0,i.jsx)(n.code,{children:"alias "})}),"\n",(0,i.jsx)(n.p,{children:"Return the full command for the passed alias_command_name"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"alias dc='docker-compose'"})}),"\n",(0,i.jsx)(n.h3,{id:"paste",children:"paste"}),"\n",(0,i.jsx)(n.p,{children:"merge corresponding or subsequent lines of files"}),"\n",(0,i.jsx)(n.h3,{id:"ln-create-links",children:"ln (Create links)"}),"\n",(0,i.jsx)(n.p,{children:"make links"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"ln test.txt link.txt"})}),"\n",(0,i.jsx)(n.p,{children:"The ln utility creates a new directory entry (linked file) which has the same modes as the original file. It is useful for maintaining multiple copies of a file in many places at once without using up storage for the copies; instead, a link points to the original copy. There are two types of links; hard links and symbolic links. How a link points to a file is one of the differences between a hard and symbolic link."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"ln -s /bin/zsh /usr/local/bin/zsh # create a symbolic link\n\nln -s /path/to/original /path/to/link\n\nln -s myfile.txt my-soft-link\n"})}),"\n",(0,i.jsx)(n.h4,{id:"hard-vs-symbolic-links",children:"hard vs symbolic links"}),"\n",(0,i.jsx)(n.p,{children:"Underneath the file system, files are represented by inodes."}),"\n",(0,i.jsx)(n.p,{children:"A file in the file system is basically a link to an inode."}),"\n",(0,i.jsx)(n.p,{children:"A hard link, then, just creates another file with a link to the same underlying inode."}),"\n",(0,i.jsx)(n.p,{children:"When you delete a file, it removes one link to the underlying inode. The inode is only deleted (or deletable/over-writable) when all links to the inode have been deleted."}),"\n",(0,i.jsx)(n.p,{children:"A symbolic link is a link to another name in the file system."}),"\n",(0,i.jsx)(n.p,{children:"Once a hard link has been made the link is to the inode. Deleting, renaming, or moving the original file will not affect the hard link as it links to the underlying inode. Any changes to the data on the inode is reflected in all files that refer to that inode."}),"\n",(0,i.jsx)(n.p,{children:"Note: Hard links are only valid within the same File System. Symbolic links can span file systems as they are simply the name of another file."}),"\n",(0,i.jsx)(n.h3,{id:"find",children:"find"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:'find . -name "zookeeper*"\n\n# ignore case\nfind . -iname "ipify*"\n\n# find and delete\nfind . -name "*.pyc" -type f\nfind . -name "*.pyc" -type f -delete\n\nfind . -type f -mtime +30 -exec -f {} \\;\n\n# find and replace in shole directory except \'config.yaml\'\nfind ./ ! -name \'config.yaml\' -type f -exec sed -i "s~${ecr_name}.*$~${ecr_name}\\\\/${app_name}\\\\/${env_name}:${app_name}-${env_name}-${timestamp}-${build_no}~" {} \\;\n\nfind -E . -regex \'.*hello[^/]*\' -type f\nfind AI -regex \'.*/[^a-zA-Z].*\'\nfind . -regex \'.*/[^a-zA-Z0-9.].*\' -not -path "*/node_modules/*" -not -path "*/.git/*"\n\nfind . -type f -name \'*outline.md\' -not -path "*/node_modules/*" -not -path "*/.git/*" -exec sh -c \'mv "$1" "${1%/*}/index.md"\' sh {} \\;\n\n# rename file, replace - with -\n# brew install rename\nfind . -name "*---*" -exec rename \'s/---/-/\' {} ";"\nfind . -name "*,*" -exec rename \'s/,//\' {} ";"\n\nfind . -name \'*\' -exec rename x {} +\n\n# rename file extension recursively\nfind content -type f -name \'*\' -print0 | xargs -0 rename \'s/$/x/\'\n\n# rename all files and folders to lowercase\nfind . -name "*" -type f -depth -not -path "*/node_modules/*" -not -path "*/.git/*" | xargs -n 1 rename -f \'s/(.*)\\/([^\\/]*)/$1\\/\\L$2/\' {} \\;\n\n# rename dslr photos to it\'s created date with appended original name\nfor f in *.*; do echo mv -n "$f" "$(stat -f\'%SB\' -t "%Y%m%d_%H%M%S" "$f")_${f%.*}.${f##*.}"; done\n\n# final command to rename DSLR photos\nfor f in *.*; do eval "mv -n \\"$f\\" \\"\\$(stat -f \'%SB\' -t \\"%Y%m%d_%H%M%S\\" \\"$f\\")_${f%.*}.${f##*.}\\""; done\n\n# rename dslr photos to it\'s created date without appended original name\nfor f in *.*; do echo mv -n "$f" "$(stat -f\'%SB\' -t "%Y%m%d_%H%M%S%fff" "$f").${f##*.}"; done\n'})}),"\n",(0,i.jsx)(n.h3,{id:"hostname",children:"hostname"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"hostname -- set or print name of current host system\nhostname -i #server\nhostname #mac\n"})}),"\n",(0,i.jsx)(n.h3,{id:"environments",children:"environments"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"printenv | less #print all loaded environment variables\necho $ #print value for environment variable\necho $? #print last call execution return value\nenv #print all environments loaded in current session\n"})}),"\n",(0,i.jsx)(n.h3,{id:"tr-translate-characters",children:"tr (translate characters)"}),"\n",(0,i.jsx)(n.p,{children:"The tr utility copies the standard input to the standard output with substitution or deletion of selected characters."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"cat domains.txt | tr [:lower:] [:upper:]\ncat linux.txt | tr [a-z] [A-Z]\n"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://www.tecmint.com/tr-command-examples-in-linux",children:"https://www.tecmint.com/tr-command-examples-in-linux"})}),"\n",(0,i.jsx)(n.h3,{id:"tcpdump-wireshark",children:"tcpdump (wireshark)"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"sudo tcpdump -i any port 9101 -w tcpdump"})}),"\n",(0,i.jsx)(n.h3,{id:"killall",children:"killall"}),"\n",(0,i.jsx)(n.p,{children:"kill processes by name"}),"\n",(0,i.jsx)(n.p,{children:"The killall utility kills processes selected by name, as opposed to the selection by pid as done by kill(1). By default, it will send a TERM signal to all processes with a real UID identical to the caller of killall that match the name procname. The super-user is allowed to kill any process."}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"The program gets sent a SIGTERM signal. kill -9 sends a SIGKILL signal"}),"\n",(0,i.jsx)(n.li,{children:"CTRL-C"}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"The program gets sent a SIGINT signal. By default that stops the program immediately, but the program can choose to ignore the signal or do something else before quitting"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Is it possible for a program to ignore a SIGKILL signal"}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"Programs can't ignore SIGKILL."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"killall kubectl\nkillall -v kubectl\n\n# forcefully terminate all running processes except login shell, init, and kernel-specific processes.\nkillall5 -9\n"})}),"\n",(0,i.jsx)(n.h2,{id:"log-parsing-commands",children:"Log parsing commands"}),"\n",(0,i.jsx)(n.h3,{id:"grep",children:"Grep"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:'# Search a file for keywords\ngrep \'keyword\' "file"\n\n# Grep regex\nls | grep "metrics-[^su]"\nls | grep "metrics-[^su]" | xargs rm -f\n\n# This prints 10 lines of trailing context after matching lines\ngrep -i -A 10 "my_regex" /var/log/syslog\n\n# If you need to print 10 lines of leading context before matching lines,\ngrep -i -B 10 "my_regex" /var/log/syslog\n\n# And if you need to print 10 lines of leading and trailing output context.\ngrep -i -C 10 "my_regex" /var/log/syslog\n\n# Common Flags\n-c: print a count of matching lines rather than the lines themselves\n-h: do not print the names of files when searching multiple files\n-i: ignore case (e.g., treat "Regression" and "regression" as matches)\n-l: print the names of files that contain matches, not the matches\n-n: print line numbers for matching lines\n-v: invert the match, i.e., only show lines that don\'t match\n grep -v "172.18.0.1"\n-E \'abc|*de\': or with regex\n'})}),"\n",(0,i.jsx)(n.h3,{id:"cut",children:"cut"}),"\n",(0,i.jsx)(n.p,{children:"cut out selected portions of each line of a file"}),"\n",(0,i.jsxs)(n.p,{children:["Can use ",(0,i.jsx)(n.strong,{children:"awk"})," instead of cut for better results"]}),"\n",(0,i.jsx)(n.h3,{id:"sed",children:"sed"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"sed -i '' 's+telegraf:.*+telegraf:x:0:0::/etc/telegraf:/bin/false+g' passwd #on macos\nsed -i 's+telegraf:.*+telegraf:x:0:0::/etc/telegraf:/bin/false+g' passwd #on unix\n\nfind ./ ! -name 'config.yaml' -type f -exec sed -i \"s~${ecr_name}.*$~${ecr_name}\\\\/${app_name}\\\\/${env_name}:${app_name}-${env_name}-${timestamp}-${build_no}~\" {} \\;\n\nfind ./ ! -name 'config.yaml' -type f -exec sed -i \"s~\n331916247734.dkr.ecr.ap-south-1.amazonaws.com/loan-tape-etl/prod:loan-tape-etl-prod-2020-08-07-20-10\n$~331916247734.dkr.ecr.ap-south-1.amazonaws.com/loan-tape-etl/prod:loan-tape-etl-prod-test~\" {} \\;\n"})}),"\n",(0,i.jsx)(n.h3,{id:"finding-duplicates-with-uniq",children:"Finding duplicates with uniq"}),"\n",(0,i.jsx)(n.p,{children:"With the uniq command you can find adjacent repeated lines in a file. uniq takes several flags, the more useful ones being:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"uniq -c: which adds the repetition count to each line;"}),"\n",(0,i.jsx)(n.li,{children:"uniq -d: which only outputs duplicate lines; And"}),"\n",(0,i.jsx)(n.li,{children:"uniq -u: which only outputs unique lines."}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"However, uniq is not a smart command. Repeated lines will not be detected if they are not adjacent. Which means that you first need the sort the file. This command counts the number of duplicated lines in adult.csv."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"sort adult.csv | uniq -d | wc -l"})}),"\n",(0,i.jsx)(n.p,{children:"23"}),"\n",(0,i.jsx)(n.p,{children:"and shows that there are 23 duplicates. The next command takes the output of all lines with added repetition counts, sorts in reverse and outputs the first 3 duplicates:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"sort adult.csv | uniq -c | sort -r | head -n 3\n3 25, Private, 195994, 1st-4th, 2, Never-married, ...\n2 90, Private, 52386, Some-college, 10, Never-married, ...\n2 49, Self-emp-not-inc, 43479, Some-college, 10, Married-civ-spouse, ...\n"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.img,{alt:"Log Parsing Commands",src:s(829466).Z+"",width:"1557",height:"2048"})}),"\n",(0,i.jsx)(n.h2,{id:"openssl",children:"openssl"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:'openssl rand -hex 16\nopenssl rand -hex 32\nopenssl rand -base64 32 #base64 encoded password generation\nopenssl base64 -in samhi.log -out samhi1_64.log\n\n# creating a self-signed certificate\nopenssl req -x509 -newkey rsa:4096 -sha256 -nodes -keyout tls.key -out tls.crt -subj "/CN=example.com" -days 365\n\nopenssl genrsa -out ca.key 2048\n\nopenssl req -x509 -new -nodes -key ca.key -sha256 -subj "/CN=sampleissuer.local" -days 1024 -out ca.crt -extensions v3_ca -config openssl-with-ca.cnf\n'})}),"\n",(0,i.jsx)(n.h3,{id:"encrypt-decrypt-a-file-or-folder",children:"Encrypt decrypt a file or folder"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"# encrypt a folder\ntar czvf folder.tar.gz /path/to/folder\nopenssl enc -aes-256-cbc -salt -pbkdf2 -in folder.tar.gz -out folder.tar.gz.enc\nrm -rf folder.tar.gz\nrm -rf /path/to/folder\n\n# decrypt a folder\nopenssl enc -d -aes-256-cbc -salt -pbkdf2 -in folder.tar.gz.enc -out folder.tar.gz\ntar xzvf folder.tar.gz\nrm -rf folder.tar.gz.enc\nrm -rf folder.tar.gz\n\n\nalias folder_encrypt='tar czvf test_folder.tar.gz test_folder && openssl enc -aes-256-cbc -salt -pbkdf2 -in test_folder.tar.gz -out test_folder.tar.gz.enc && rm -rf test_folder.tar.gz && rm -rf test_folder'\n\nalias folder_decrypt='openssl enc -d -aes-256-cbc -salt -pbkdf2 -in test_folder.tar.gz.enc -out test_folder.tar.gz && tar xzvf test_folder.tar.gz && rm -rf test_folder.tar.gz.enc && rm -rf test_folder.tar.gz'\n"})}),"\n",(0,i.jsx)(n.h3,{id:"public-private-key-pair",children:"public private key pair"}),"\n",(0,i.jsx)(n.p,{children:"You can generate a public-private keypair with thegenrsacontext (the last number is the keylength in bits):"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"openssl genrsa -out key.pem 2048\n\n# To extract the public part, use the rsa context:\nopenssl rsa -in keypair.pem -out publickey.crt -pubout\nopenssl rsa -in key.pem -out key.pub -pubout\n\n# Finally, convert the original keypair to PKCS#8 format with the pkcs8 context:\nopenssl pkcs8 -topk8 -inform PEM -outform PEM -nocrypt -in keypair.pem -out pkcs8.key\n\n# Encrypt and Decrypt a file (using public key to encrypt)\necho --pass-- > pass.txt\nopenssl rsautl -in pass.txt -out pass.enc -pubin -inkey key.pub -encrypt\nopenssl rsautl -in pass.enc -out pass.dec -inkey key.pem -decrypt\ncat pass.dec\n\n# Compress, Encrypt, Decyrpt, Uncompress a file (using password in pass.txt)\necho content > file.txt # overwrite file with content\necho content >> file.txt # append content to file.txt\ngzip file.txt\nopenssl bf -in file.txt.gz -out file.enc -pass file:pass.txt -e\nopenssl bf -in file.enc -out file.dec.gz -pass file:pass.dec -d\ngzip -d file.dec.gz\ncat file.dec\n"})}),"\n",(0,i.jsx)(n.h3,{id:"ts",children:"ts"}),"\n",(0,i.jsx)(n.p,{children:"openssl-ts, ts - Time Stamping Authority tool (client/server)"}),"\n",(0,i.jsx)(n.p,{children:"The ts command is a basic Time Stamping Authority (TSA) client and server application as specified in RFC 3161 (Time-Stamp Protocol, TSP). A TSA can be part of a PKI deployment and its role is to provide long term proof of the existence of a certain datum before a particular time."}),"\n",(0,i.jsxs)(n.p,{children:["A convenient tool is the ",(0,i.jsx)(n.strong,{children:"ts (timestamp)"})," tool which is available on many systems. If the trace output is piped to this command each line is prefixed with a timestamp."]}),"\n",(0,i.jsx)(n.h3,{id:"ps",children:"ps"}),"\n",(0,i.jsx)(n.p,{children:"report a snapshot of the current processes."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"# get minor page fault, major page fault\nps -eo min_flt,maj_flt,cmd\n\nps -eaf\n\nps aux / auxf (tree view)\nps aux --sort=-%mem\n - The a option tells ps the display the processes of all users, with except those processes that not associated with a terminal and processes of group leaders.\n - The u stands for a user-oriented format which provides detailed information about the processes.\n - The x option will case ps to list the processes without a controlling terminal. Those are mainly processes that are started on boot time and running in the background.\n\n - PID - The process ID. In most situations when running the ps command the most important information the user is looking for is the process PID. Knowing the PID allows you to kill a malfunctioning process.\n - TTY - The name of the controlling terminal for the process.\n - TIME - The cumulative CPU time of the process, shown in minutes and seconds.\n - CMD - The name of the command that was used to start the process.\n - USER - The user who runs the process.\n - %CPU - The process cpu utilization.\n - %MEM - The percentage of the process\u2019s resident set size to the physical memory on the machine.\n - VSZ - Virtual memory size of the process in KiB.\n - RSS - The size of the physical memory that the process is using.\n - STAT - The the process state code, which can be Z (zombie), S (sleeping), R(running) ..etc\n - START - The time when the command started.\n\nps $$\nOutput the shell that is running\n"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://linuxize.com/post/ps-command-in-linux",children:"https://linuxize.com/post/ps-command-in-linux"})}),"\n",(0,i.jsx)(n.h3,{id:"tree",children:"tree"}),"\n",(0,i.jsx)(n.p,{children:"list contents of directories in a tree-like format"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"tree -L 2"})}),"\n",(0,i.jsx)(n.h3,{id:"usrbintime",children:"/usr/bin/time"}),"\n",(0,i.jsx)(n.p,{children:"run programs and summarize system resource usage"}),"\n",(0,i.jsx)(n.h3,{id:"time",children:"time"}),"\n",(0,i.jsx)(n.p,{children:"Shell command for given shell statistics"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"real"}),": The actual time spent in running the process from start to finish, as if it was measured by a human with a stopwatch"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"user"}),": The cumulative time spent by all the CPUs during the computation"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"sys"}),": The cumulative time spent by all the CPUs during system-related tasks such as memory allocation."]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"compression",children:"Compression"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"tar -czvf all.tar.gz error.log.* (gzip all files together in a directory)\ntar -xzvf all.tar.gz -C /tmp (unzip all files to particular location)\n\ntar -xzvf all.tar.gz (unzip all files at current location)\ntar -c -xvf all.tar.gz\ntar -xvf all.tar.xz (unzip xz files)\ngzip -d .gz #unzip gz file\n\n!tar --exclude='*.csv' --exclude='__pycache__' --exclude='.ipynb_checkpoints' --exclude='*.json' --exclude='*.xml' --exclude='*.pdf' --exclude='*.pkl' -zcvf backup.tar.gz *\n!find . -name \"*.ipynb\" -o -name \"*.py\" | tar -zcvf backup.tar.gz -T -\n\n!find . -name \"*.ipynb\" -o -name \"*.py\" | tar -zcvf backup-ipynb-$(date +%Y-%m-%d).tar.gz -T -\ntar -zcvf backup-ipynb-$(date +%Y-%m-%d).tar.gz folder_to_zip\n\ntar -zcf backup-ipynb-$(date +%Y-%m-%d).tar.gz folder_to_zip # no output - without v\n\nbrew install rar\n unrar x.rar\n"})}),"\n",(0,i.jsx)(n.h3,{id:"df---report-file-system-disk-space-usage",children:"df - report file system disk space usage"}),"\n",(0,i.jsx)(n.p,{children:"There might come a situation while using Linux when you want to know the amount of space consumed by a particular file system on your LINUX system or how much space is available on a particular file system."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"df -h, --human-readable"})}),"\n",(0,i.jsx)(n.h3,{id:"du-disk-usage---estimate-file-space-usage",children:"du (disk usage) - estimate file space usage"}),"\n",(0,i.jsx)(n.p,{children:"The du command can be used to track the files and directories which are consuming excessive amount of space on hard disk drive."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"du -h, --human-readable\n\n# depth = 1\ndu -h -d 1\n\nTo list the largest directories from the current directory in human readable format, with retricting number of rows\ndu -sh * | sort -hr | head -n10\n\ndu -sh file_path\nExplanation\n - du (disc usage) command estimates file_path space usage\n - The options -sh are (from man du):\n-s, --summarize\n display only a total for each argument\n\n-h, --human-readable\n print sizes in human readable format (e.g., 1K 234M 2G)\n\nTo check more than one directory and see the total, use du -sch:\n-c, --total\n produce a grand total\n"})}),"\n",(0,i.jsx)(n.h3,{id:"lsblk",children:"lsblk"}),"\n",(0,i.jsxs)(n.p,{children:["The\xa0",(0,i.jsx)(n.code,{children:"lsblk"}),"\xa0command, short for \u201clist block devices,\u201d is a powerful tool that provides detailed information about block devices such as hard drives, solid-state drives, and other storage-related devices."]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"lsblk -a # To display empty block devices as well.\nlsblk -t # tree view\n"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://www.geeksforgeeks.org/lsblk-command-in-linux-with-examples/",children:"How to List All Block Devices in Linux | lsblk Command - GeeksforGeeks"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://man7.org/linux/man-pages/man8/lsblk.8.html",children:"lsblk(8) - Linux manual page"})}),"\n",(0,i.jsx)(n.h2,{id:"netcat-nc",children:"NetCat (NC)"}),"\n",(0,i.jsx)(n.p,{children:"The nc (or netcat) utility is used for just about anything under the sun involving TCP or UDP. It can open TCP connections, send UDP packets, listen on arbitrary TCP and UDP ports, do port scanning, and deal with both IPv4 and IPv6. Unlike telnet(1), nc scripts nicely, and separates error messages onto standard error instead of sending them to standard output, as telnet(1) does with some."}),"\n",(0,i.jsx)(n.p,{children:"Common uses include:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"simple TCP proxies"}),"\n",(0,i.jsx)(n.li,{children:"shell-script based HTTP clients and servers"}),"\n",(0,i.jsx)(n.li,{children:"network daemon testing"}),"\n",(0,i.jsx)(n.li,{children:"a SOCKS or HTTP ProxyCommand for ssh(1)"}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"nc -l 8000 -u"})}),"\n",(0,i.jsx)(n.h2,{id:"strace",children:"strace"}),"\n",(0,i.jsx)(n.p,{children:"trace system calls and signals"}),"\n",(0,i.jsx)(n.p,{children:"In the simplest casestraceruns the specifiedcommanduntil it exits. It intercepts and records the system calls which are called by a process and the signals which are received by a process. The name of each system call, its arguments and its return value are printed on standard error or to the file specified with the-ooption."}),"\n",(0,i.jsx)(n.p,{children:"straceis a useful diagnostic, instructional, and debugging tool. System administrators, diagnosticians and trouble-shooters will find it invaluable for solving problems with programs for which the source is not readily available since they do not need to be recompiled in order to trace them. Students, hackers and the overly-curious will find that a great deal can be learned about a system and its system calls by tracing even ordinary programs. And programmers will find that since system calls and signals are events that happen at the user/kernel interface, a close examination of this boundary is very useful for bug isolation, sanity checking and attempting to capture race conditions."}),"\n",(0,i.jsx)(n.p,{children:"MacOS - dtrace"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://linux.die.net/man/1/strace",children:"https://linux.die.net/man/1/strace"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://8thlight.com/blog/colin-jones/2015/11/06/dtrace-even-better-than-strace-for-osx.html",children:"https://8thlight.com/blog/colin-jones/2015/11/06/dtrace-even-better-than-strace-for-osx.html"})}),"\n",(0,i.jsx)(n.h2,{id:"nicerenice",children:"nice/renice"}),"\n",(0,i.jsx)(n.p,{children:"While the nice command lets you execute a program/process with modified scheduling priority, the renice command allows you to change the scheduling priority of an already running process. Following is the generic syntax forboth these commands:"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"nice [OPTION] [COMMAND [ARG]...]"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"renice [-n] priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]"})}),"\n",(0,i.jsx)(n.h3,{id:"nice",children:"Nice"}),"\n",(0,i.jsx)(n.p,{children:"Run COMMAND with an adjusted niceness, which affects process scheduling. With no COMMAND, print the current niceness. Niceness values range from -20 (most favorable to the process) to 19 (least favorable to the process)."}),"\n",(0,i.jsx)(n.h3,{id:"renice",children:"Renice"}),"\n",(0,i.jsx)(n.p,{children:"Renice alters the scheduling priority of one or more running processes. The following who parameters are interpreted as process ID's, process group ID's, or user names. Renice'ing a process group causes all processes in the process group to have their scheduling priority altered. Renice'ing a user causes all processes owned by the user to have their scheduling priority altered. By default, the processes to be affected are specified by their process ID's."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://www.howtoforge.com/linux-nice-command",children:"https://www.howtoforge.com/linux-nice-command"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://www.youtube.com/watch?v=GsF8R6DBxSg",children:"how greedy are your processes? | Linux niceness - YouTube"})}),"\n",(0,i.jsx)(n.h2,{id:"nohup",children:"nohup"}),"\n",(0,i.jsx)(n.p,{children:"The nohup utility invokes utility with its arguments and at this time sets the signal SIGHUP to be ignored. If the standard output is a terminal, the standard output is appended to the file nohup.out in the current directory. If standard error is a terminal, it is directed to the same place as the standard output."}),"\n",(0,i.jsx)(n.p,{children:"If you use the nohup command, you can continue processing even if you log out of the terminal."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"nohup jupyter notebook &"})}),"\n",(0,i.jsx)(n.h3,{id:"screen",children:"Screen"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"screen --version\n\nsudo apt install screen\n\n# Starting Named Session\nscreen -S session_name\n\nCtrl+a\xa0d\n\n# To resume your screen session\nscreen -r\n\n# To attach to specific session\nscreen -r session_name\n\n# attach to an already attached session (detach from old terminal and attach to new terminal)\nscreen -r -d 30608\n\n# scroll in a session\nctrl + A > ESC > up and down to scroll\n\n# list the current running screen sessions\nscreen -ls\n\n# delete the screen session\nscreen -X -S quit\n"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://linuxize.com/post/how-to-use-linux-screen/",children:"How To Use Linux Screen | Linuxize"})}),"\n",(0,i.jsx)(n.h2,{id:"sample",children:"sample"}),"\n",(0,i.jsx)(n.p,{children:"Profile a process during a time interval"}),"\n",(0,i.jsx)(n.p,{children:"sample is a command-line tool for gathering data about the running behavior of a process. It suspends the process at specified intervals (by default, every 1 millisecond), records the call stacks of all threads in the process at that time, then resumes the process. The analysis done by sample is called ``sampling'' because it only checks the state of the program at the sampling points. The analysis may miss execution of some functions that are not executing during one of the samples, but sample still provides useful data about commonly executing functions."}),"\n",(0,i.jsx)(n.p,{children:"At the end of the sampling duration, sample produces a report showing which functions were executing during the sampling. The data is condensed into a call tree, showing the functions seen on the stack and how they were called. (This tree is a subset of the actual call tree for the execution, since some functions may not have been executing during any of the sampling events.) The tree is displayed textually, with called functions indented one level to the right of the callee."}),"\n",(0,i.jsx)(n.p,{children:"In the call tree, if a function calls more than one function then a vertical line is printed to visually connect those separate children functions, making it easier to see which functions are at the same level. The characters used to draw those lines, such as + | : ! are arbitrary and have no specific meaning."}),"\n",(0,i.jsx)(n.h2,{id:"others",children:"Others"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:'1. !! / sudo !! (repeat last command with sudo)\n2. pwd (Print working Directory)\n3. xrandr -o normal (Screen rotation)\n4. sudo shred -n 1 -v -z /dev/sd (format full hard disk, first write random bits, than with zeros, to every address)\n5. bash install-missing.sh (running set of bash commands from a file)\n6. wc "file" //count number of lines/words/characters in file\n7. banner #prints a banner for \n8 file [path] #to check the type of file\n'})}),"\n",(0,i.jsx)(n.h2,{id:"taskset",children:"taskset"}),"\n",(0,i.jsx)(n.p,{children:'tasksetis used to set or retrieve the CPU affinity of a running process given its PID or to launch a new COMMAND with a given CPU affinity. CPU affinity is a scheduler property that "bonds" a process to a given set of CPUs on the system. The Linux scheduler will honor the given CPU affinity and the process will not run on any other CPUs. Note that the Linux scheduler also supports natural CPU affinity: the scheduler attempts to keep processes on the same CPU as long as practical for performance reasons. Therefore, forcing a specific CPU affinity is useful only in certain applications.'}),"\n",(0,i.jsx)(n.p,{children:"The CPU affinity is represented as a bitmask, with the lowest order bit corresponding to the first logical CPU and the highest order bit corresponding to the last logical CPU. Not all CPUs may exist on a given system but a mask may specify more CPUs than are present. A retrieved mask will reflect only the bits that correspond to CPUs physically on the system. If an invalid mask is given (i.e., one that corresponds to no valid CPUs on the current system) an error is returned. The masks are typically given in hexadecimal. For example,"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://linux.die.net/man/1/taskset",children:"https://linux.die.net/man/1/taskset"})}),"\n",(0,i.jsx)(n.h2,{id:"references",children:"References"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://dev.to/awwsmm/101-bash-commands-and-tips-for-beginners-to-experts-30je",children:"https://dev.to/awwsmm/101-bash-commands-and-tips-for-beginners-to-experts-30je"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://www.toptal.com/linux/tips-and-practices",children:"https://www.toptal.com/linux/tips-and-practices"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://www.freecodecamp.org/news/the-linux-commands-handbook",children:"https://www.freecodecamp.org/news/the-linux-commands-handbook"})})]})}function h(e={}){const{wrapper:n}={...(0,t.a)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},829466:(e,n,s)=>{s.d(n,{Z:()=>i});const i=s.p+"assets/images/Pasted image 20240620022249-82573284c9bee20723c9e3ff2504fc46.png"},511151:(e,n,s)=>{s.d(n,{Z:()=>l,a:()=>a});var i=s(667294);const t={},r=i.createContext(t);function a(e){const n=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:a(e.components),i.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/bb1c90a8.6112917e.js b/assets/js/bb1c90a8.6112917e.js new file mode 100644 index 00000000000..027f956b0e7 --- /dev/null +++ b/assets/js/bb1c90a8.6112917e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[94511],{593184:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>h,frontMatter:()=>r,metadata:()=>l,toc:()=>d});var s=n(785893),i=n(511151);const r={},a="Getting Started",l={id:"technologies/elasticsearch/getting-started",title:"Getting Started",description:"Points",source:"@site/docs/technologies/elasticsearch/getting-started.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/getting-started",permalink:"/technologies/elasticsearch/getting-started",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/getting-started.md",tags:[],version:"current",lastUpdatedAt:1732901510,formattedLastUpdatedAt:"Nov 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Full Text Searches",permalink:"/technologies/elasticsearch/full-text-searches"},next:{title:"Information Retrieval",permalink:"/technologies/elasticsearch/information-retrieval"}},c={},d=[{value:"Points",id:"points",level:2},{value:"Java API",id:"java-api",level:2},{value:"Node client",id:"node-client",level:4},{value:"Transport client",id:"transport-client",level:4},{value:"Document Oriented",id:"document-oriented",level:2},{value:"JSON",id:"json",level:2},{value:"Documents",id:"documents",level:2},{value:"Index",id:"index",level:2},{value:"Index (noun)",id:"index-noun",level:3},{value:"Index (verb)",id:"index-verb",level:3},{value:"Inverted index",id:"inverted-index",level:3},{value:"Query",id:"query",level:2},{value:"Leaf query clauses",id:"leaf-query-clauses",level:2},{value:"Compound query clauses",id:"compound-query-clauses",level:2},{value:"Relevance Score",id:"relevance-score",level:2},{value:"Distributed Nature",id:"distributed-nature",level:2},{value:"Search",id:"search",level:2},{value:"Exact Values vs Full Text",id:"exact-values-vs-full-text",level:2}];function o(e){const t={a:"a",code:"code",em:"em",h1:"h1",h2:"h2",h3:"h3",h4:"h4",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,i.a)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(t.h1,{id:"getting-started",children:"Getting Started"}),"\n",(0,s.jsx)(t.h2,{id:"points",children:"Points"}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsx)(t.li,{children:"Uses Optimisitic Concurrency Control"}),"\n"]}),"\n",(0,s.jsx)(t.p,{children:"Used by Elasticsearch, this approach assumes that conflicts are unlikely to happen and doesn't block operations from being attempted. However, if the underlying data has been modified between reading and writing, the update will fail. It is then up to the application to decide how it should resolve the conflict. For instance, it could reattempt the update, using the fresh data, or it could report the situation to the user."}),"\n",(0,s.jsx)(t.h2,{id:"java-api",children:"Java API"}),"\n",(0,s.jsx)(t.p,{children:"If you are using Java, Elasticsearch comes with two built-in clients that you can use in your code:"}),"\n",(0,s.jsx)(t.h4,{id:"node-client",children:"Node client"}),"\n",(0,s.jsx)(t.p,{children:"The node clientjoins a local cluster as anon data node. In other words, it doesn't hold any data itself, but it knows what data lives on which node in the cluster, and can forward requests directly to the correct node."}),"\n",(0,s.jsx)(t.h4,{id:"transport-client",children:"Transport client"}),"\n",(0,s.jsx)(t.p,{children:"The lighter-weighttransport client can be used to send requests to a remote cluster. It doesn't join the cluster itself, but simply forwards requests to a node in the cluster."}),"\n",(0,s.jsx)(t.p,{children:"Both Java clients talk to the cluster over port9300, usingthe native Elasticsearch transport protocol. The nodes in the cluster also communicate with each other over port 9300. If this port is not open, your nodes will not be able to form a cluster."}),"\n",(0,s.jsx)(t.h2,{id:"document-oriented",children:"Document Oriented"}),"\n",(0,s.jsxs)(t.p,{children:["Elasticsearch is ",(0,s.jsx)(t.em,{children:"document oriented"}),", meaningthat it stores entire objects or ",(0,s.jsx)(t.em,{children:"documents"}),". It not only stores them, but also ",(0,s.jsx)(t.em,{children:"indexes"})," the contents of each document in order to make them searchable. In Elasticsearch, you index, search, sort, and filter documents - not rows of columnar data. This is a fundamentally different way of thinking about data and is one of the reasons Elasticsearch can perform complex full-text search."]}),"\n",(0,s.jsx)(t.h2,{id:"json",children:"JSON"}),"\n",(0,s.jsxs)(t.p,{children:["Elasticsearch uses JavaScript Object Notation, or ",(0,s.jsx)(t.a,{href:"http://en.wikipedia.org/wiki/Json",children:(0,s.jsx)(t.em,{children:"JSON"})}),", asthe serialization format for documents."]}),"\n",(0,s.jsx)(t.h2,{id:"documents",children:"Documents"}),"\n",(0,s.jsxs)(t.p,{children:["The act of storing data in Elasticsearch is called ",(0,s.jsx)(t.em,{children:"indexing"}),", but before we can index a document, we need to decide ",(0,s.jsx)(t.em,{children:"where"}),"to store it."]}),"\n",(0,s.jsxs)(t.p,{children:["An Elasticsearch cluster cancontain multiple ",(0,s.jsx)(t.em,{children:"indices"}),", which in turn contain multiple ",(0,s.jsx)(t.em,{children:"types"}),".These types hold multiple ",(0,s.jsx)(t.em,{children:"documents"}),", and each document hasmultiple ",(0,s.jsx)(t.em,{children:"fields"}),"."]}),"\n",(0,s.jsx)(t.p,{children:"Elasticsearch doesn't delete documents -"}),"\n",(0,s.jsx)(t.p,{children:"Internally, Elasticsearch has marked the old document as deleted and added an entirely new document."}),"\n",(0,s.jsx)(t.p,{children:"Update api"}),"\n",(0,s.jsxs)(t.ol,{children:["\n",(0,s.jsx)(t.li,{children:"Retrieve the JSON from the old document"}),"\n",(0,s.jsx)(t.li,{children:"Change it"}),"\n",(0,s.jsx)(t.li,{children:"Delete the old document"}),"\n",(0,s.jsx)(t.li,{children:"Index a new document"}),"\n"]}),"\n",(0,s.jsx)(t.p,{children:"The only difference is that theupdateAPI achieves this through a single client request, instead of requiring separategetandindexrequests."}),"\n",(0,s.jsx)(t.h2,{id:"index",children:"Index"}),"\n",(0,s.jsx)(t.h3,{id:"index-noun",children:"Index (noun)"}),"\n",(0,s.jsxs)(t.p,{children:["As explained previously, an ",(0,s.jsx)(t.em,{children:"index"})," is like a ",(0,s.jsx)(t.em,{children:"database"})," in a traditional relational database. It is the place to store related documents. The plural of ",(0,s.jsx)(t.em,{children:"index"})," is ",(0,s.jsx)(t.em,{children:"indices"})," or ",(0,s.jsx)(t.em,{children:"indexes"}),"."]}),"\n",(0,s.jsx)(t.h3,{id:"index-verb",children:"Index (verb)"}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.em,{children:"To index a document"})," is to store a document in an ",(0,s.jsx)(t.em,{children:"index (noun)"})," so that it can be retrieved and queried. It is much like the ",(0,s.jsx)(t.code,{children:"INSERT"})," keyword in SQL except that, if the document already exists, the new document would replace the old."]}),"\n",(0,s.jsx)(t.h3,{id:"inverted-index",children:"Inverted index"}),"\n",(0,s.jsxs)(t.p,{children:["Relational databases add an ",(0,s.jsx)(t.em,{children:"index"}),", such as a B-tree index, to specific columns in order to improve the speed of data retrieval. Elasticsearch and Lucene use a structure called an ",(0,s.jsx)(t.em,{children:"inverted index"})," for exactly the same purpose."]}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.strong,{children:"By default, every field in a document is indexed (has an inverted index) and thus is searchable. A field without an inverted index is not searchable"})}),"\n",(0,s.jsx)(t.h2,{id:"query",children:"Query"}),"\n",(0,s.jsxs)(t.p,{children:["Elasticsearch provides a rich, flexible, query language called the ",(0,s.jsx)(t.em,{children:"query DSL"}),", which allows us to build much more complicated, robust queries."]}),"\n",(0,s.jsxs)(t.p,{children:["The ",(0,s.jsx)(t.em,{children:"domain-specific language"})," (DSL) is specified using a JSON request body."]}),"\n",(0,s.jsx)(t.p,{children:"Think of the Query DSL as an AST (Abstract Syntax Tree) of queries, consisting of two types of clauses:"}),"\n",(0,s.jsx)(t.h2,{id:"leaf-query-clauses",children:"Leaf query clauses"}),"\n",(0,s.jsxs)(t.p,{children:["Leaf query clauses look for a particular value in a particular field, such as the ",(0,s.jsx)(t.a,{href:"https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-match-query.html",children:"match"}),", ",(0,s.jsx)(t.a,{href:"https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-term-query.html",children:"term"})," or ",(0,s.jsx)(t.a,{href:"https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-range-query.html",children:"range"})," queries. These queries can be used by themselves."]}),"\n",(0,s.jsx)(t.h2,{id:"compound-query-clauses",children:"Compound query clauses"}),"\n",(0,s.jsxs)(t.p,{children:["Compound query clauses wrap other leaf or compound queries and are used to combine multiple queries in a logical fashion (such as the ",(0,s.jsx)(t.a,{href:"https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-bool-query.html",children:"bool"})," or ",(0,s.jsx)(t.a,{href:"https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-dis-max-query.html",children:"dis_max"})," query), or to alter their behaviour (such as the ",(0,s.jsx)(t.a,{href:"https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-constant-score-query.html",children:"constant_score"})," query)."]}),"\n",(0,s.jsx)(t.h2,{id:"relevance-score",children:"Relevance Score"}),"\n",(0,s.jsx)(t.p,{children:'By default, Elasticsearch sortsmatching results by their relevance score, that is, by how well each document matches the query. The first and highest-scoring result is obvious: John Smith\'sabout field clearly says "rock climbing" in it.'}),"\n",(0,s.jsx)(t.h2,{id:"distributed-nature",children:"Distributed Nature"}),"\n",(0,s.jsx)(t.p,{children:"Elasticsearch tries hard to hide the complexity of distributed systems. Here are some of the operations happening automatically under the hood:"}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsx)(t.li,{children:"Partitioning your documents into different containersorshards, which can be stored on a single node or on multiple nodes"}),"\n",(0,s.jsx)(t.li,{children:"Balancing these shards across the nodes in your cluster to spread the indexing and search load"}),"\n",(0,s.jsx)(t.li,{children:"Duplicating each shard to provide redundant copies of your data, to prevent data loss in case of hardware failure"}),"\n",(0,s.jsx)(t.li,{children:"Routing requests from any node in the cluster to the nodes that hold the data you're interested in"}),"\n",(0,s.jsx)(t.li,{children:"Seamlessly integrating new nodes as your cluster grows or redistributing shards to recover from node loss"}),"\n"]}),"\n",(0,s.jsx)(t.h2,{id:"search",children:"Search"}),"\n",(0,s.jsxs)(t.p,{children:["A ",(0,s.jsx)(t.em,{children:"search"})," can be any of the following:"]}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsx)(t.li,{children:"A structured query on concrete fieldslikegenderorage, sorted by a field likejoin_date, similar to the type of query that you could construct in SQL"}),"\n",(0,s.jsxs)(t.li,{children:["A full-text query, which finds all documents matching the search keywords, and returns them sorted by ",(0,s.jsx)(t.em,{children:"relevance"})]}),"\n",(0,s.jsx)(t.li,{children:"A combination of the two"}),"\n"]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.em,{children:"Mapping -"})," How the data in each field is interpreted"]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.em,{children:"Analysis -"})," How full text is processed to make it searchable"]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.em,{children:"Query DSL -"})," The flexible, powerful query language used by Elasticsearch"]}),"\n",(0,s.jsx)(t.h2,{id:"exact-values-vs-full-text",children:"Exact Values vs Full Text"}),"\n",(0,s.jsx)(t.p,{children:"Data in Elasticsearch can be broadly divided into two types: exact values and full text."}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.em,{children:"Exact values"})," are exactly what they sound like.Examples are a date or a user ID, but can also include exact strings such as a username or an email address. The exact value Foo is not the same as the exact value foo. The exact value 2014 is not the same as the exact value 2014-09-15."]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.em,{children:"Full text"}),", on the other hand, refers to textual data - usually written in some human language\u2009---\u2009like the text of a tweet or the body of an email."]})]})}function h(e={}){const{wrapper:t}={...(0,i.a)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(o,{...e})}):o(e)}},511151:(e,t,n)=>{n.d(t,{Z:()=>l,a:()=>a});var s=n(667294);const i={},r=s.createContext(i);function a(e){const t=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function l(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:a(e.components),s.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/bb1c90a8.a372557b.js b/assets/js/bb1c90a8.a372557b.js deleted file mode 100644 index 4ac9fb0d362..00000000000 --- a/assets/js/bb1c90a8.a372557b.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[94511],{593184:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>h,frontMatter:()=>r,metadata:()=>l,toc:()=>o});var s=n(785893),i=n(511151);const r={},a="Getting Started",l={id:"technologies/elasticsearch/getting-started",title:"Getting Started",description:"Points",source:"@site/docs/technologies/elasticsearch/getting-started.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/getting-started",permalink:"/technologies/elasticsearch/getting-started",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/getting-started.md",tags:[],version:"current",lastUpdatedAt:1688975990,formattedLastUpdatedAt:"Jul 10, 2023",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Full Text Searches",permalink:"/technologies/elasticsearch/full-text-searches"},next:{title:"Information Retrieval",permalink:"/technologies/elasticsearch/information-retrieval"}},c={},o=[{value:"Points",id:"points",level:2},{value:"Java API",id:"java-api",level:2},{value:"Node client",id:"node-client",level:4},{value:"Transport client",id:"transport-client",level:4},{value:"Document Oriented",id:"document-oriented",level:2},{value:"JSON",id:"json",level:2},{value:"Documents",id:"documents",level:2},{value:"Index",id:"index",level:2},{value:"Query",id:"query",level:2},{value:"Leaf query clauses",id:"leaf-query-clauses",level:2},{value:"Compound query clauses",id:"compound-query-clauses",level:2},{value:"Relevance Score",id:"relevance-score",level:2},{value:"Distributed Nature",id:"distributed-nature",level:2},{value:"Search",id:"search",level:2},{value:"Exact Values vs Full Text",id:"exact-values-vs-full-text",level:2}];function d(e){const t={a:"a",em:"em",h1:"h1",h2:"h2",h4:"h4",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,i.a)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(t.h1,{id:"getting-started",children:"Getting Started"}),"\n",(0,s.jsx)(t.h2,{id:"points",children:"Points"}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsx)(t.li,{children:"Uses Optimisitic Concurrency Control"}),"\n"]}),"\n",(0,s.jsx)(t.p,{children:"Used by Elasticsearch, this approach assumes that conflicts are unlikely to happen and doesn't block operations from being attempted. However, if the underlying data has been modified between reading and writing, the update will fail. It is then up to the application to decide how it should resolve the conflict. For instance, it could reattempt the update, using the fresh data, or it could report the situation to the user."}),"\n",(0,s.jsx)(t.h2,{id:"java-api",children:"Java API"}),"\n",(0,s.jsx)(t.p,{children:"If you are using Java, Elasticsearch comes with two built-in clients that you can use in your code:"}),"\n",(0,s.jsx)(t.h4,{id:"node-client",children:"Node client"}),"\n",(0,s.jsx)(t.p,{children:"The node clientjoins a local cluster as anon data node. In other words, it doesn't hold any data itself, but it knows what data lives on which node in the cluster, and can forward requests directly to the correct node."}),"\n",(0,s.jsx)(t.h4,{id:"transport-client",children:"Transport client"}),"\n",(0,s.jsx)(t.p,{children:"The lighter-weighttransport client can be used to send requests to a remote cluster. It doesn't join the cluster itself, but simply forwards requests to a node in the cluster."}),"\n",(0,s.jsx)(t.p,{children:"Both Java clients talk to the cluster over port9300, usingthe native Elasticsearch transport protocol. The nodes in the cluster also communicate with each other over port 9300. If this port is not open, your nodes will not be able to form a cluster."}),"\n",(0,s.jsx)(t.h2,{id:"document-oriented",children:"Document Oriented"}),"\n",(0,s.jsxs)(t.p,{children:["Elasticsearch is ",(0,s.jsx)(t.em,{children:"document oriented"}),", meaningthat it stores entire objects or ",(0,s.jsx)(t.em,{children:"documents"}),". It not only stores them, but also ",(0,s.jsx)(t.em,{children:"indexes"})," the contents of each document in order to make them searchable. In Elasticsearch, you index, search, sort, and filter documents - not rows of columnar data. This is a fundamentally different way of thinking about data and is one of the reasons Elasticsearch can perform complex full-text search."]}),"\n",(0,s.jsx)(t.h2,{id:"json",children:"JSON"}),"\n",(0,s.jsxs)(t.p,{children:["Elasticsearch uses JavaScript Object Notation, or ",(0,s.jsx)(t.a,{href:"http://en.wikipedia.org/wiki/Json",children:(0,s.jsx)(t.em,{children:"JSON"})}),", asthe serialization format for documents."]}),"\n",(0,s.jsx)(t.h2,{id:"documents",children:"Documents"}),"\n",(0,s.jsxs)(t.p,{children:["The act of storing data in Elasticsearch is called ",(0,s.jsx)(t.em,{children:"indexing"}),", but before we can index a document, we need to decide ",(0,s.jsx)(t.em,{children:"where"}),"to store it."]}),"\n",(0,s.jsxs)(t.p,{children:["An Elasticsearch cluster cancontain multiple ",(0,s.jsx)(t.em,{children:"indices"}),", which in turn contain multiple ",(0,s.jsx)(t.em,{children:"types"}),".These types hold multiple ",(0,s.jsx)(t.em,{children:"documents"}),", and each document hasmultiple ",(0,s.jsx)(t.em,{children:"fields"}),"."]}),"\n",(0,s.jsx)(t.p,{children:"Elasticsearch doesn't delete documents -"}),"\n",(0,s.jsx)(t.p,{children:"Internally, Elasticsearch has marked the old document as deleted and added an entirely new document."}),"\n",(0,s.jsx)(t.p,{children:"Update api"}),"\n",(0,s.jsxs)(t.ol,{children:["\n",(0,s.jsx)(t.li,{children:"Retrieve the JSON from the old document"}),"\n",(0,s.jsx)(t.li,{children:"Change it"}),"\n",(0,s.jsx)(t.li,{children:"Delete the old document"}),"\n",(0,s.jsx)(t.li,{children:"Index a new document"}),"\n"]}),"\n",(0,s.jsx)(t.p,{children:"The only difference is that theupdateAPI achieves this through a single client request, instead of requiring separategetandindexrequests."}),"\n",(0,s.jsx)(t.h2,{id:"index",children:"Index"}),"\n",(0,s.jsx)(t.p,{children:"Index (noun)"}),"\n",(0,s.jsxs)(t.p,{children:["As explained previously, an ",(0,s.jsx)(t.em,{children:"index"})," is like a ",(0,s.jsx)(t.em,{children:"database"})," in a traditional relational database. It is the place to store related documents. The plural of ",(0,s.jsx)(t.em,{children:"index"}),"is ",(0,s.jsx)(t.em,{children:"indices"}),"or ",(0,s.jsx)(t.em,{children:"indexes"}),"."]}),"\n",(0,s.jsx)(t.p,{children:"Index (verb)"}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.em,{children:"To index a document"}),"is to store a document in an*index (noun)*so that it can be retrieved and queried. It is much like theINSERTkeyword in SQL except that, if the document already exists, the new document would replace the old."]}),"\n",(0,s.jsx)(t.p,{children:"Inverted index"}),"\n",(0,s.jsxs)(t.p,{children:["Relational databases add an ",(0,s.jsx)(t.em,{children:"index"}),", such as a B-tree index, to specific columns in order to improve the speed of data retrieval. Elasticsearch and Lucene use a structure calledan",(0,s.jsx)(t.em,{children:"inverted index"}),"for exactly the same purpose."]}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.strong,{children:"By default, every field in a document is indexed (has an inverted index) and thus is searchable. A field without an inverted index is not searchable"})}),"\n",(0,s.jsx)(t.h2,{id:"query",children:"Query"}),"\n",(0,s.jsxs)(t.p,{children:["Elasticsearch provides a rich, flexible, query language called the",(0,s.jsx)(t.em,{children:"query DSL"}),", whichallows us to build much more complicated, robust queries."]}),"\n",(0,s.jsxs)(t.p,{children:["The ",(0,s.jsx)(t.em,{children:"domain-specific language"})," (DSL) is specified using a JSON request body."]}),"\n",(0,s.jsx)(t.p,{children:"Think of the Query DSL as an AST (Abstract Syntax Tree) of queries, consisting of two types of clauses:"}),"\n",(0,s.jsx)(t.h2,{id:"leaf-query-clauses",children:"Leaf query clauses"}),"\n",(0,s.jsxs)(t.p,{children:["Leaf query clauses look for a particular value in a particular field, such as the ",(0,s.jsx)(t.a,{href:"https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-match-query.html",children:"match"}),", ",(0,s.jsx)(t.a,{href:"https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-term-query.html",children:"term"})," or ",(0,s.jsx)(t.a,{href:"https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-range-query.html",children:"range"})," queries. These queries can be used by themselves."]}),"\n",(0,s.jsx)(t.h2,{id:"compound-query-clauses",children:"Compound query clauses"}),"\n",(0,s.jsxs)(t.p,{children:["Compound query clauses wrap other leaforcompound queries and are used to combine multiple queries in a logical fashion (such as the ",(0,s.jsx)(t.a,{href:"https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-bool-query.html",children:"bool"})," or ",(0,s.jsx)(t.a,{href:"https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-dis-max-query.html",children:"dis_max"})," query), or to alter their behaviour (such as the ",(0,s.jsx)(t.a,{href:"https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-constant-score-query.html",children:"constant_score"})," query)."]}),"\n",(0,s.jsx)(t.h2,{id:"relevance-score",children:"Relevance Score"}),"\n",(0,s.jsx)(t.p,{children:'By default, Elasticsearch sortsmatching results by their relevance score, that is, by how well each document matches the query. The first and highest-scoring result is obvious: John Smith\'sabout field clearly says "rock climbing" in it.'}),"\n",(0,s.jsx)(t.h2,{id:"distributed-nature",children:"Distributed Nature"}),"\n",(0,s.jsx)(t.p,{children:"Elasticsearch tries hard to hide the complexity of distributed systems. Here are some of the operations happening automatically under the hood:"}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsx)(t.li,{children:"Partitioning your documents into different containersorshards, which can be stored on a single node or on multiple nodes"}),"\n",(0,s.jsx)(t.li,{children:"Balancing these shards across the nodes in your cluster to spread the indexing and search load"}),"\n",(0,s.jsx)(t.li,{children:"Duplicating each shard to provide redundant copies of your data, to prevent data loss in case of hardware failure"}),"\n",(0,s.jsx)(t.li,{children:"Routing requests from any node in the cluster to the nodes that hold the data you're interested in"}),"\n",(0,s.jsx)(t.li,{children:"Seamlessly integrating new nodes as your cluster grows or redistributing shards to recover from node loss"}),"\n"]}),"\n",(0,s.jsx)(t.h2,{id:"search",children:"Search"}),"\n",(0,s.jsxs)(t.p,{children:["A ",(0,s.jsx)(t.em,{children:"search"})," can be any of the following:"]}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsx)(t.li,{children:"A structured query on concrete fieldslikegenderorage, sorted by a field likejoin_date, similar to the type of query that you could construct in SQL"}),"\n",(0,s.jsxs)(t.li,{children:["A full-text query, which finds all documents matching the search keywords, and returns them sorted by ",(0,s.jsx)(t.em,{children:"relevance"})]}),"\n",(0,s.jsx)(t.li,{children:"A combination of the two"}),"\n"]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.em,{children:"Mapping -"})," How the data in each field is interpreted"]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.em,{children:"Analysis -"})," How full text is processed to make it searchable"]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.em,{children:"Query DSL -"})," The flexible, powerful query language used by Elasticsearch"]}),"\n",(0,s.jsx)(t.h2,{id:"exact-values-vs-full-text",children:"Exact Values vs Full Text"}),"\n",(0,s.jsx)(t.p,{children:"Data in Elasticsearch can be broadly divided into two types: exact values and full text."}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.em,{children:"Exact values"}),"are exactly what they sound like.Examples are a date or a user ID, but can also include exact strings such as a username or an email address. The exact valueFoois not the same as the exact valuefoo. The exact value2014is not the same as the exact value2014-09-15."]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.em,{children:"Full text"}),", on the other hand, refersto textual data - usually written in some human language\u2009---\u2009like the text of a tweet or the body of an email."]})]})}function h(e={}){const{wrapper:t}={...(0,i.a)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}},511151:(e,t,n)=>{n.d(t,{Z:()=>l,a:()=>a});var s=n(667294);const i={},r=s.createContext(i);function a(e){const t=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function l(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:a(e.components),s.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/c2f7a6ea.3039f89a.js b/assets/js/c2f7a6ea.3039f89a.js new file mode 100644 index 00000000000..07aeca3001a --- /dev/null +++ b/assets/js/c2f7a6ea.3039f89a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[85430],{604465:(e,s,t)=>{t.r(s),t.d(s,{assets:()=>c,contentTitle:()=>o,default:()=>h,frontMatter:()=>i,metadata:()=>a,toc:()=>d});var n=t(785893),r=t(511151);const i={},o="Internal Working",a={id:"technologies/elasticsearch/internal-working",title:"Internal Working",description:"Here is the sequence of steps necessary to successfully create, index, or delete a document on both the primary and any replica shards:",source:"@site/docs/technologies/elasticsearch/internal-working.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/internal-working",permalink:"/technologies/elasticsearch/internal-working",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/internal-working.md",tags:[],version:"current",lastUpdatedAt:1732901510,formattedLastUpdatedAt:"Nov 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Information Retrieval",permalink:"/technologies/elasticsearch/information-retrieval"},next:{title:"Others",permalink:"/technologies/elasticsearch/others"}},c={},d=[{value:"Links",id:"links",level:2}];function l(e){const s={a:"a",code:"code",h1:"h1",h2:"h2",img:"img",li:"li",ol:"ol",p:"p",ul:"ul",...(0,r.a)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.h1,{id:"internal-working",children:"Internal Working"}),"\n",(0,n.jsx)(s.p,{children:"Here is the sequence of steps necessary to successfully create, index, or delete a document on both the primary and any replica shards:"}),"\n",(0,n.jsxs)(s.ol,{children:["\n",(0,n.jsx)(s.li,{children:"The client sends a create, index, or delete request to Node 1."}),"\n",(0,n.jsxs)(s.li,{children:["The node uses the document's ",(0,n.jsx)(s.code,{children:"_id"})," to determine that the document belongs to shard0. It forwards the request to Node 3, where the primary copy of shard0is currently allocated."]}),"\n",(0,n.jsx)(s.li,{children:"Node 3 executes the request on the primary shard. If it is successful, it forwards the request in parallel to the replica shards onNode 1 and Node 2. Once all of the replica shards report success, Node 3 reports success to the coordinating node, which reports success to the client."}),"\n"]}),"\n",(0,n.jsx)(s.p,{children:"By the time the client receives a successful response, the document change has been executed on the primary shard and on all replica shards. Your change is safe."}),"\n",(0,n.jsx)(s.p,{children:(0,n.jsx)(s.img,{alt:"image",src:t(771017).Z+"",width:"750",height:"337"})}),"\n",(0,n.jsx)(s.p,{children:"Here is the sequence of steps to retrieve a document from either a primary or replica shard:"}),"\n",(0,n.jsxs)(s.ol,{children:["\n",(0,n.jsx)(s.li,{children:"The client sends a get request to Node 1."}),"\n",(0,n.jsxs)(s.li,{children:["The node uses the document's ",(0,n.jsx)(s.code,{children:"_id"})," to determine that the document belongs to shard0. Copies of shard0exist on all three nodes. On this occasion, it forwards the request to Node 2."]}),"\n",(0,n.jsx)(s.li,{children:"Node 2 returns the document to Node 1, which returns the document to the client."}),"\n"]}),"\n",(0,n.jsx)(s.p,{children:(0,n.jsx)(s.img,{alt:"image",src:t(538074).Z+"",width:"750",height:"271"})}),"\n",(0,n.jsx)(s.p,{children:"Here is the sequence of steps used to perform a partial update on a document:"}),"\n",(0,n.jsxs)(s.ol,{children:["\n",(0,n.jsxs)(s.li,{children:["\n",(0,n.jsx)(s.p,{children:"The client sends an update request to Node 1."}),"\n"]}),"\n",(0,n.jsxs)(s.li,{children:["\n",(0,n.jsx)(s.p,{children:"It forwards the request to Node 3, where the primary shard is allocated."}),"\n"]}),"\n",(0,n.jsxs)(s.li,{children:["\n",(0,n.jsxs)(s.p,{children:["Node 3 retrieves the document from the primary shard, changes the JSON in the ",(0,n.jsx)(s.code,{children:"_source"})," field, and tries to reindex the document on the primary shard. If the document has already been changed by another process, it retries step 3 up to retry_on_conflict times, before giving up."]}),"\n"]}),"\n",(0,n.jsxs)(s.li,{children:["\n",(0,n.jsx)(s.p,{children:"If Node 3 has managed to update the document successfully, it forwards the new version of the document in parallel to the replica shards on Node 1 and Node 2 to be reindexed. Once all replica shards report success, Node 3 reports success to the coordinating node, which reports success to the client."}),"\n"]}),"\n"]}),"\n",(0,n.jsx)(s.p,{children:(0,n.jsx)(s.img,{alt:"image",src:t(617176).Z+"",width:"750",height:"321"})}),"\n",(0,n.jsx)(s.p,{children:"Here is the sequence of steps necessary to retrieve multiple documents with a single mget request:"}),"\n",(0,n.jsxs)(s.ol,{children:["\n",(0,n.jsxs)(s.li,{children:["The client sends an ",(0,n.jsx)(s.code,{children:"mget"})," request to Node 1."]}),"\n",(0,n.jsx)(s.li,{children:"Node 1 builds a multi-get request per shard, and forwards these requests in parallel to the nodes hosting each required primary or replica shard. Once all replies have been received, Node 1 builds the response and returns it to the client."}),"\n"]}),"\n",(0,n.jsx)(s.p,{children:(0,n.jsx)(s.img,{alt:"image",src:t(242474).Z+"",width:"750",height:"271"})}),"\n",(0,n.jsx)(s.p,{children:"The sequence of steps followed by the bulkAPI are as follows:"}),"\n",(0,n.jsxs)(s.ol,{children:["\n",(0,n.jsxs)(s.li,{children:["\n",(0,n.jsx)(s.p,{children:"The client sends a bulk request to Node 1."}),"\n"]}),"\n",(0,n.jsxs)(s.li,{children:["\n",(0,n.jsx)(s.p,{children:"Node 1 builds a bulk request per shard, and forwards these requests in parallel to the nodes hosting each involved primary shard."}),"\n"]}),"\n",(0,n.jsxs)(s.li,{children:["\n",(0,n.jsx)(s.p,{children:"The primary shard executes each action serially, one after another. As each action succeeds, the primary forwards the new document (or deletion) to its replica shards in parallel, and then moves on to the next action. Once all replica shards report success for all actions, the node reports success to the coordinating node, which collates the responses and returns them to the client."}),"\n"]}),"\n"]}),"\n",(0,n.jsx)(s.p,{children:(0,n.jsx)(s.img,{alt:"image",src:t(348595).Z+"",width:"750",height:"337"})}),"\n",(0,n.jsx)(s.h2,{id:"links",children:"Links"}),"\n",(0,n.jsxs)(s.ul,{children:["\n",(0,n.jsx)(s.li,{children:(0,n.jsx)(s.a,{href:"/databases/indexing/inverted-index",children:"Inverted Index"})}),"\n"]})]})}function h(e={}){const{wrapper:s}={...(0,r.a)(),...e.components};return s?(0,n.jsx)(s,{...e,children:(0,n.jsx)(l,{...e})}):l(e)}},771017:(e,s,t)=>{t.d(s,{Z:()=>n});const n=t.p+"assets/images/Technologies-Elasticsearch-Internal-Working-image1-7993bcadf900661f7482ebd54f4baf8f.jpg"},538074:(e,s,t)=>{t.d(s,{Z:()=>n});const n=t.p+"assets/images/Technologies-Elasticsearch-Internal-Working-image2-e09b0da84333eaaf788fd72ac25b99e4.jpg"},617176:(e,s,t)=>{t.d(s,{Z:()=>n});const n=t.p+"assets/images/Technologies-Elasticsearch-Internal-Working-image3-341cf3ecc1637511a13d5ed0d0df3261.jpg"},242474:(e,s,t)=>{t.d(s,{Z:()=>n});const n=t.p+"assets/images/Technologies-Elasticsearch-Internal-Working-image4-b8d74d0e7f88b3a2e4ba9500c3688142.jpg"},348595:(e,s,t)=>{t.d(s,{Z:()=>n});const n=t.p+"assets/images/Technologies-Elasticsearch-Internal-Working-image5-a775c35053514e081b97ab6273c55347.jpg"},511151:(e,s,t)=>{t.d(s,{Z:()=>a,a:()=>o});var n=t(667294);const r={},i=n.createContext(r);function o(e){const s=n.useContext(i);return n.useMemo((function(){return"function"==typeof e?e(s):{...s,...e}}),[s,e])}function a(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),n.createElement(i.Provider,{value:s},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/c2f7a6ea.bccb6ef6.js b/assets/js/c2f7a6ea.bccb6ef6.js deleted file mode 100644 index 04cc7a98529..00000000000 --- a/assets/js/c2f7a6ea.bccb6ef6.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[85430],{604465:(e,s,n)=>{n.r(s),n.d(s,{assets:()=>c,contentTitle:()=>o,default:()=>h,frontMatter:()=>i,metadata:()=>a,toc:()=>l});var t=n(785893),r=n(511151);const i={},o="Internal Working",a={id:"technologies/elasticsearch/internal-working",title:"Internal Working",description:"Here is the sequence of steps necessary to successfully create, index, or delete a document on both the primary and any replica shards:",source:"@site/docs/technologies/elasticsearch/internal-working.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/internal-working",permalink:"/technologies/elasticsearch/internal-working",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/internal-working.md",tags:[],version:"current",lastUpdatedAt:1722285222,formattedLastUpdatedAt:"Jul 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Information Retrieval",permalink:"/technologies/elasticsearch/information-retrieval"},next:{title:"Others",permalink:"/technologies/elasticsearch/others"}},c={},l=[{value:"Links",id:"links",level:2}];function d(e){const s={a:"a",code:"code",h1:"h1",h2:"h2",img:"img",li:"li",ol:"ol",p:"p",ul:"ul",...(0,r.a)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(s.h1,{id:"internal-working",children:"Internal Working"}),"\n",(0,t.jsx)(s.p,{children:"Here is the sequence of steps necessary to successfully create, index, or delete a document on both the primary and any replica shards:"}),"\n",(0,t.jsxs)(s.ol,{children:["\n",(0,t.jsxs)(s.li,{children:["\n",(0,t.jsx)(s.p,{children:"The client sends a create, index, or delete request toNode 1."}),"\n"]}),"\n",(0,t.jsxs)(s.li,{children:["\n",(0,t.jsxs)(s.p,{children:["The node uses the document's ",(0,t.jsx)(s.code,{children:"_id"})," to determine that the document belongs to shard0. It forwards the request to Node 3, where the primary copy of shard0is currently allocated."]}),"\n"]}),"\n",(0,t.jsxs)(s.li,{children:["\n",(0,t.jsx)(s.p,{children:"Node 3 executes the request on the primary shard. If it is successful, it forwards the request in parallel to the replica shards onNode 1 and Node 2. Once all of the replica shards report success, Node 3 reports success to the coordinating node, which reports success to the client."}),"\n"]}),"\n"]}),"\n",(0,t.jsx)(s.p,{children:"By the time the client receives a successful response, the document change has been executed on the primary shard and on all replica shards. Your change is safe."}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.img,{alt:"image",src:n(771017).Z+"",width:"750",height:"337"})}),"\n",(0,t.jsx)(s.p,{children:"Here is the sequence of steps to retrieve a document from either a primary or replica shard:"}),"\n",(0,t.jsxs)(s.ol,{children:["\n",(0,t.jsxs)(s.li,{children:["\n",(0,t.jsx)(s.p,{children:"The client sends a get request toNode 1."}),"\n"]}),"\n",(0,t.jsxs)(s.li,{children:["\n",(0,t.jsx)(s.p,{children:"The node uses the document's_idto determine that the document belongs to shard0. Copies of shard0exist on all three nodes. On this occasion, it forwards the request toNode 2."}),"\n"]}),"\n",(0,t.jsxs)(s.li,{children:["\n",(0,t.jsx)(s.p,{children:"Node 2returns the document toNode 1, which returns the document to the client."}),"\n"]}),"\n"]}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.img,{alt:"image",src:n(538074).Z+"",width:"750",height:"271"})}),"\n",(0,t.jsx)(s.p,{children:"Here is the sequence of steps used to perform a partial update on a document:"}),"\n",(0,t.jsxs)(s.ol,{children:["\n",(0,t.jsxs)(s.li,{children:["\n",(0,t.jsx)(s.p,{children:"The client sends an update request toNode 1."}),"\n"]}),"\n",(0,t.jsxs)(s.li,{children:["\n",(0,t.jsx)(s.p,{children:"It forwards the request toNode 3, where the primary shard is allocated."}),"\n"]}),"\n",(0,t.jsxs)(s.li,{children:["\n",(0,t.jsx)(s.p,{children:"Node 3retrieves the document from the primary shard, changes the JSON in the_sourcefield, and tries to reindex the document on the primary shard. If the document has already been changed by another process, it retries step 3 up toretry_on_conflicttimes, before giving up."}),"\n"]}),"\n",(0,t.jsxs)(s.li,{children:["\n",(0,t.jsx)(s.p,{children:"IfNode 3has managed to update the document successfully, it forwards the new version of the document in parallel to the replica shards onNode 1andNode 2to be reindexed. Once all replica shards report success, Node 3reports success to the coordinating node, which reports success to the client."}),"\n"]}),"\n"]}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.img,{alt:"image",src:n(617176).Z+"",width:"750",height:"321"})}),"\n",(0,t.jsx)(s.p,{children:"Here is the sequence of steps necessary to retrieve multiple documents with a singlemgetrequest:"}),"\n",(0,t.jsxs)(s.ol,{children:["\n",(0,t.jsxs)(s.li,{children:["\n",(0,t.jsx)(s.p,{children:"The client sends anmgetrequest toNode 1."}),"\n"]}),"\n",(0,t.jsxs)(s.li,{children:["\n",(0,t.jsx)(s.p,{children:"Node 1builds a multi-get request per shard, and forwards these requests in parallel to the nodes hosting each required primary or replica shard. Once all replies have been received, Node 1builds the response and returns it to the client."}),"\n"]}),"\n"]}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.img,{alt:"image",src:n(242474).Z+"",width:"750",height:"271"})}),"\n",(0,t.jsx)(s.p,{children:"The sequence of stepsfollowed by thebulkAPI are as follows:"}),"\n",(0,t.jsxs)(s.ol,{children:["\n",(0,t.jsxs)(s.li,{children:["\n",(0,t.jsx)(s.p,{children:"The client sends abulkrequest toNode 1."}),"\n"]}),"\n",(0,t.jsxs)(s.li,{children:["\n",(0,t.jsx)(s.p,{children:"Node 1builds a bulk request per shard, and forwards these requests in parallel to the nodes hosting each involved primary shard."}),"\n"]}),"\n",(0,t.jsxs)(s.li,{children:["\n",(0,t.jsx)(s.p,{children:"The primary shard executes each action serially, one after another. As each action succeeds, the primary forwards the new document (or deletion) to its replica shards in parallel, and then moves on to the next action. Once all replica shards report success for all actions, the node reports success to the coordinating node, which collates the responses and returns them to the client."}),"\n"]}),"\n"]}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.img,{alt:"image",src:n(348595).Z+"",width:"750",height:"337"})}),"\n",(0,t.jsx)(s.h2,{id:"links",children:"Links"}),"\n",(0,t.jsxs)(s.ul,{children:["\n",(0,t.jsx)(s.li,{children:(0,t.jsx)(s.a,{href:"/databases/indexing/inverted-index",children:"Inverted Index"})}),"\n"]})]})}function h(e={}){const{wrapper:s}={...(0,r.a)(),...e.components};return s?(0,t.jsx)(s,{...e,children:(0,t.jsx)(d,{...e})}):d(e)}},771017:(e,s,n)=>{n.d(s,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Internal-Working-image1-7993bcadf900661f7482ebd54f4baf8f.jpg"},538074:(e,s,n)=>{n.d(s,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Internal-Working-image2-e09b0da84333eaaf788fd72ac25b99e4.jpg"},617176:(e,s,n)=>{n.d(s,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Internal-Working-image3-341cf3ecc1637511a13d5ed0d0df3261.jpg"},242474:(e,s,n)=>{n.d(s,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Internal-Working-image4-b8d74d0e7f88b3a2e4ba9500c3688142.jpg"},348595:(e,s,n)=>{n.d(s,{Z:()=>t});const t=n.p+"assets/images/Technologies-Elasticsearch-Internal-Working-image5-a775c35053514e081b97ab6273c55347.jpg"},511151:(e,s,n)=>{n.d(s,{Z:()=>a,a:()=>o});var t=n(667294);const r={},i=t.createContext(r);function o(e){const s=t.useContext(i);return t.useMemo((function(){return"function"==typeof e?e(s):{...s,...e}}),[s,e])}function a(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),t.createElement(i.Provider,{value:s},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/d3c17cf8.7692cbc9.js b/assets/js/d3c17cf8.7692cbc9.js deleted file mode 100644 index 9583fbe2ee1..00000000000 --- a/assets/js/d3c17cf8.7692cbc9.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[45418],{170727:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>d,contentTitle:()=>o,default:()=>c,frontMatter:()=>t,metadata:()=>l,toc:()=>a});var r=s(785893),i=s(511151);const t={},o="Wordpress",l={id:"frontend/frontend-intro/wordpress",title:"Wordpress",description:"https://wordpress.com/home/deepaksood619.wordpress.com",source:"@site/docs/frontend/frontend-intro/wordpress.md",sourceDirName:"frontend/frontend-intro",slug:"/frontend/frontend-intro/wordpress",permalink:"/frontend/frontend-intro/wordpress",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/frontend/frontend-intro/wordpress.md",tags:[],version:"current",lastUpdatedAt:1707138374,formattedLastUpdatedAt:"Feb 5, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Web Vitals",permalink:"/frontend/frontend-intro/web-vitals"},next:{title:"HTML-CSS",permalink:"/frontend/html-css/"}},d={},a=[{value:"wp-admin",id:"wp-admin",level:2},{value:"Themes",id:"themes",level:2},{value:"Plugins",id:"plugins",level:2},{value:"Tools",id:"tools",level:2},{value:"Commands",id:"commands",level:2},{value:"Config",id:"config",level:2},{value:"Questions",id:"questions",level:2},{value:"1. Actions Hook",id:"1-actions-hook",level:3},{value:"2. Filters Hook",id:"2-filters-hook",level:3},{value:"Others",id:"others",level:2}];function h(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",img:"img",li:"li",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,i.a)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h1,{id:"wordpress",children:"Wordpress"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://wordpress.com/home/deepaksood619.wordpress.com",children:"https://wordpress.com/home/deepaksood619.wordpress.com"})}),"\n",(0,r.jsx)(n.p,{children:"WordPress is a content management system that powers 34% of all websites on the internet and 60% of websites that run on CMS. The power of WordPress is in the ecosystem - there are a lot of different plugins and themes. Anyone without any special programming knowledge can build a website, but a working knowledge of WordPress intricacies is a boon to any developer or designer resume."}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://www.advancedcustomfields.com",children:"https://www.advancedcustomfields.com"})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://www.youtube.com/watch?v=jmqu4HC3zmo",children:"Overview of WordPress (Beginners Guide 2020)"})}),"\n",(0,r.jsx)(n.h2,{id:"wp-admin",children:"wp-admin"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://www.youtube.com/watch?v=Ov_zUmMyJnQ",children:"WordPress Admin Dashboard Tutorial 2020 - Step By Step For Beginners In WP-ADMIN!"})}),"\n",(0,r.jsx)(n.p,{children:"Posts - That are part of blogs"}),"\n",(0,r.jsx)(n.p,{children:"Pages - That are not part of blog, and are standalone pages like about us, contact us, etc"}),"\n",(0,r.jsx)(n.h2,{id:"themes",children:"Themes"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://generatepress.com",children:"https://generatepress.com"})}),"\n",(0,r.jsxs)(n.li,{children:["Divi Theme - ",(0,r.jsx)(n.a,{href:"https://www.elegantthemes.com",children:"https://www.elegantthemes.com"})," ",(0,r.jsx)(n.a,{href:"https://www.elegantthemesdemo.com",children:"https://www.elegantthemesdemo.com"})]}),"\n",(0,r.jsx)(n.li,{children:"Astra"}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://www.isitwp.com/top-wordpress-themes",children:"https://www.isitwp.com/top-wordpress-themes"})}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://rishitheme.com",children:"https://rishitheme.com"})}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"plugins",children:"Plugins"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://wp-rocket.me",children:"https://wp-rocket.me"})}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"W3 Total Cache"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"WP Super Cache"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Kinsta Cache"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Contact Form 7 by Takayuki Miyoshi"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:"Yoast SEO by Team Yoast"})}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:"Page Builder - Gutenberg editor"})}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:"Page Builder - Elementor Website Builder by Elementor.com"})}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.strong,{children:"Page Builder -"})," Classic Editor by WordPress Contributors"]}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Akismet Spam Protection by Automattic"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"jonRadio multiple themes"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"All-in-One WP Migration by ServMask"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Accordian plugin"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://wordpress.org/support/article/managing-plugins",children:"https://wordpress.org/support/article/managing-plugins"})}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"tools",children:"Tools"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"WP-Cli"}),"\n"]}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"https://wp-cli.org/",children:"WP-Cli"})," lets you work with WordPress using the command line. With this great tool you can upgrade and downgrade WordPress in seconds, as well as update plugins. Notably, when you find yourself migrating to a different server, the built in search-replace command will take care of all the url changes for you, and it's worth installing it simply because of that."]}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"Advanced Database Cleaner"}),"\n"]}),"\n",(0,r.jsxs)(n.p,{children:["The ",(0,r.jsx)(n.a,{href:"https://wordpress.org/plugins/advanced-database-cleaner/",children:"Advanced Database Cleaner"})," plugin cleans out spam comments, built in revisions, and transients. You can even set up tasks to run automatically."]}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"Query Monitor"}),"\n"]}),"\n",(0,r.jsxs)(n.p,{children:["When things are running slowly and you're not sure what to blame, ",(0,r.jsx)(n.a,{href:"https://wordpress.org/plugins/query-monitor/",children:"Query Monitor"})," lets you see what queries are taking too long to execute, as well as show you PHP warnings and errors."]}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://themeisle.com/blog/wordpress-version-control",children:"https://themeisle.com/blog/wordpress-version-control"})}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.a,{href:"https://kinsta.com/blog/wordpress-version-control",children:"https://kinsta.com/blog/wordpress-version-control"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.a,{href:"https://wppusher.com/",children:"WP Pusher"}),"-- lets you deploy themes and plugins from any Git repository. Note that this one focuses specifically on themes and plugins."]}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.a,{href:"https://wordpress.org/plugins/revisr/",children:"Revisr"}),"-- offers a much more comprehensive approach to using Git with WordPress. You can track your entire site, including your database, in a Git repository. You can also commit changes from inside your WordPress dashboard, revert files, and push/pull changes to a remote repository (like Bitbucket or GitHub)."]}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.a,{href:"https://versionpress.com/",children:"VersionPress"}),' is an open source project that aims to "bring the full power of Git to WordPress" by version-controlling both your site\'s files and database. Though it also relies on Git, VersionPress gets its own section because it does things a little differently than the methods above.']}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"commands",children:"Commands"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-sql",children:"drop database wordpress;\n\ncreate database wordpress;\n\nselect * from wordpress.wp_options;\n\nupdate wp_options set option_value='http://localhost:8080' where option_name='siteurl';\n"})}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-yaml",children:"services:\nwordpress:\nimage: wordpress\nrestart: always\n\nports:\n- 8083:80\n\nenvironment:\nWORDPRESS_DB_HOST: db\nWORDPRESS_DB_USER: exampleuser\nWORDPRESS_DB_PASSWORD: examplepass\nWORDPRESS_DB_NAME: exampledb\n\nvolumes:\n- wordpress:/var/www/html\n\ndb:\nimage: mysql:5.7\nrestart: always\n\nenvironment:\nMYSQL_DATABASE: exampledb\nMYSQL_USER: exampleuser\nMYSQL_PASSWORD: examplepass\nMYSQL_RANDOM_ROOT_PASSWORD: '1'\n\nvolumes:\n- db:/var/lib/mysql\n\nvolumes:\nwordpress:\ndb:\n"})}),"\n",(0,r.jsx)(n.h2,{id:"config",children:"Config"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://wordpress.org/support/article/editing-wp-config-php",children:"https://wordpress.org/support/article/editing-wp-config-php"})}),"\n",(0,r.jsx)(n.h2,{id:"questions",children:"Questions"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"What is the latest version of wordpress?"}),"\n",(0,r.jsxs)(n.li,{children:["Why WordPress Is So Popular?","\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"Simplicity and Flexibility"}),"\n",(0,r.jsx)(n.li,{children:"In-corporate with publishing tools"}),"\n",(0,r.jsx)(n.li,{children:"User Management"}),"\n",(0,r.jsx)(n.li,{children:"Media Management"}),"\n",(0,r.jsx)(n.li,{children:"Full Standards Compliance"}),"\n",(0,r.jsx)(n.li,{children:"Ease Theme System"}),"\n",(0,r.jsx)(n.li,{children:"Extend with Plugins"}),"\n",(0,r.jsx)(n.li,{children:"Built-in Comments"}),"\n",(0,r.jsx)(n.li,{children:"Search Engine Optimized & Multilingual"}),"\n",(0,r.jsx)(n.li,{children:"Open Source"}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.li,{children:"What are WordPress hooks?"}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"It is provided by WordPress to allow your plugin to ' hook into' the whole WordPress; that is, to call functions in the plugin at particular times according to your need and thereby set your plugin in motion."}),"\n",(0,r.jsx)(n.p,{children:"There are two kinds of hooks:"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Actions hook"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Filters hook"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"What are the difference between action hook and filter hook in WordPress?"}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h3,{id:"1-actions-hook",children:"1. Actions Hook"}),"\n",(0,r.jsxs)(n.p,{children:["Actions Hook are triggered by particular events that take place in WordPress such as changing themes, publishing a post, or displaying an administration screen. It is a custom ",(0,r.jsx)(n.a,{href:"https://www.bestinterviewquestion.com/core-php-interview-questions",children:"PHP"})," function defined in your plugin and hooked, i.e., set to respond, to some of these events."]}),"\n",(0,r.jsx)(n.p,{children:"Actions often do one or more of the following things"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"Modify database data"}),"\n",(0,r.jsx)(n.li,{children:"Send an email message"}),"\n",(0,r.jsx)(n.li,{children:"Modify the generated administration screen or front end page sent to a user web browser"}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"Here are some Actions Functions listed"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"has_action()"}),"\n",(0,r.jsx)(n.li,{children:"do_action()"}),"\n",(0,r.jsx)(n.li,{children:"add_action()"}),"\n",(0,r.jsx)(n.li,{children:"remove_action()"}),"\n"]}),"\n",(0,r.jsx)(n.h3,{id:"2-filters-hook",children:"2. Filters Hook"}),"\n",(0,r.jsx)(n.p,{children:"Filters Hook are functions that WordPress passes data through, at certain points in execution, just before taking some action with the data. It sits between the database and the browser and between the browser and the database; all most all input and output in WordPress pass through at least one filter hook."}),"\n",(0,r.jsx)(n.p,{children:"The necessary steps to add your filters to WordPress are listed:"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"Create the PHP function that filters the data"}),"\n",(0,r.jsx)(n.li,{children:"Hook to the screen in WordPress, by calling add_filter()"}),"\n",(0,r.jsx)(n.li,{children:"Put your PHP function in a plugin file and activate it."}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"Here are some Filters Functions listed"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"has_filter()"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"doing_filter()"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"add_filter()"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"remove_filter() etc"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"How many default tables are in WordPress?"}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"There are altogether 12 tables by default in WordPress."}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_options"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_users"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_links"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_commentmeta"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_term_relationships"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_postmeta"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_posts"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_termmeta"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_term_taxonomy"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_usermeta"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_terms"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_comments"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"How many types of users Role in WordPress? Explain"}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"We can make many types of user types of role."}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Administrator Role"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Author Role"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Editor Role"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Subscriber Role"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Contributor Role"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"What is plugin? list some important WordPress plugin?"}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"WordPress plugins are a type of apps that allows you to add more functionality and features to your WordPress website just like the same way as apps do for your smartphone. Plugins allow you to create any type of the site with WordPress, not just blogs. Nowadays plugins are very popular."}),"\n",(0,r.jsx)(n.p,{children:"There are lots of plugins are available that listed below"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"Yoast SEO Plugin (This plugins are used for SEO purpose.)"}),"\n",(0,r.jsx)(n.li,{children:"Contact Form 7 (This plugins is used to make web forms with any code)"}),"\n",(0,r.jsx)(n.li,{children:"Sitemap & URLs Plugins"}),"\n",(0,r.jsx)(n.li,{children:"All In One WP Security & Firewall etc"}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"Advantages of WordPress Plugins"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Helps in SEO"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Ease Of Use and Quick Installation Process"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"It helps in to Keep Secure"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Strong Community Support"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Helps to use advanced features of WordPress"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"What are the difference between post and page in WordPress?"}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"In WordPress, Posts is a dynamic entity that has a published or updated date and is displayed on the blog page."}),"\n",(0,r.jsx)(n.p,{children:"Example: news, events etc"}),"\n",(0,r.jsx)(n.p,{children:"Pages do not have published or updated date. Hence there are useful for the static and timeless type of content."}),"\n",(0,r.jsx)(n.p,{children:'Example, the "About Us" or "Contact Us"'}),"\n",(0,r.jsx)(n.p,{children:"The difference between pages and posts is that the WordPress page is a static entity and post is a dynamic entity."}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"What is Category in WordPress?"}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:'A category is one of the predefined taxonomies in WordPress, and it is used to sort and group content into different sections. In new WordPress installation, "Uncategorized" is the default category. We can change the default category from Settings -> Writing screen. In WordPress post can be filed under many categories and can have both tags and categories.'}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"What is Tag in WordPress? Explain"}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"A tag is one of the pre-defined taxonomy in WordPress. You can add tags to posts along with categories in WordPress. Tags are smaller in scope and focused on specific topics."}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"What are the difference between Tag & Category in WordPress?"}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.img,{alt:"image",src:s(970689).Z+"",width:"645",height:"314"})}),"\n",(0,r.jsx)(n.p,{children:"In WordPress categories are hierarchical which means terms can have a relationship with each other like child and parent."}),"\n",(0,r.jsx)(n.p,{children:"Example: You could have a Category called India, and under India, you could have categories called Delhi, Haryana, and U.P. Categories means for broad grouping of posts."}),"\n",(0,r.jsx)(n.p,{children:"But Tags are NOT hierarchical which means no relationship between them. Tags means to describe specific details posts."}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"Where do I insert Google Analytics code in WordPress?"}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"While there are different ways to add Google Analytics your WordPress site, here are the 3 most common ones:"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"Through MonsterInsights"}),"\n",(0,r.jsx)(n.li,{children:"By inserting plugins for Headers and Footers"}),"\n",(0,r.jsx)(n.li,{children:"By installing Google Analytics in the WordPress Theme"}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"others",children:"Others"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://www.wpbeginner.com/wp-themes/how-to-use-multiple-themes-for-pages-in-wordpress",children:"https://www.wpbeginner.com/wp-themes/how-to-use-multiple-themes-for-pages-in-wordpress"})}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://www.toptal.com/wordpress/tips-and-practices",children:"https://www.toptal.com/wordpress/tips-and-practices"})}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://www.toptal.com/wordpress/interview-questions",children:"https://www.toptal.com/wordpress/interview-questions"})}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://www.freecodecamp.org/news/how-to-create-an-ecommere-website-using-woocomerce",children:"https://www.freecodecamp.org/news/how-to-create-an-ecommere-website-using-woocomerce"})}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://www.freecodecamp.org/news/easily-create-a-website-using-elementor-and-wordpress",children:"https://www.freecodecamp.org/news/easily-create-a-website-using-elementor-and-wordpress"})}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://www.toptal.com/wordpress/power-of-wordpress-hooks-actions-and-filters",children:"Harness WordPress: Hooks, Actions and Filters | Toptal"})}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://www.freecodecamp.org/news/the-ultimate-guide-to-high-performance-wordpress/",children:"The Ultimate Guide to High Performance WordPress"})}),"\n"]})]})}function c(e={}){const{wrapper:n}={...(0,i.a)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(h,{...e})}):h(e)}},970689:(e,n,s)=>{s.d(n,{Z:()=>r});const r=s.p+"assets/images/Wordpress-image1-9e0b8f097f7b4a1a222616ca99b2a22a.jpg"},511151:(e,n,s)=>{s.d(n,{Z:()=>l,a:()=>o});var r=s(667294);const i={},t=r.createContext(i);function o(e){const n=r.useContext(t);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:o(e.components),r.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/d3c17cf8.ac9a01fd.js b/assets/js/d3c17cf8.ac9a01fd.js new file mode 100644 index 00000000000..b2df00743aa --- /dev/null +++ b/assets/js/d3c17cf8.ac9a01fd.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[45418],{170727:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>d,contentTitle:()=>o,default:()=>c,frontMatter:()=>t,metadata:()=>l,toc:()=>a});var r=s(785893),i=s(511151);const t={},o="Wordpress",l={id:"frontend/frontend-intro/wordpress",title:"Wordpress",description:"https://wordpress.com/home/deepaksood619.wordpress.com",source:"@site/docs/frontend/frontend-intro/wordpress.md",sourceDirName:"frontend/frontend-intro",slug:"/frontend/frontend-intro/wordpress",permalink:"/frontend/frontend-intro/wordpress",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/frontend/frontend-intro/wordpress.md",tags:[],version:"current",lastUpdatedAt:1732901510,formattedLastUpdatedAt:"Nov 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Web Vitals",permalink:"/frontend/frontend-intro/web-vitals"},next:{title:"HTML-CSS",permalink:"/frontend/html-css/"}},d={},a=[{value:"Biggest Wordpress Users",id:"biggest-wordpress-users",level:2},{value:"wp-admin",id:"wp-admin",level:2},{value:"Themes",id:"themes",level:2},{value:"Plugins",id:"plugins",level:2},{value:"Tools",id:"tools",level:2},{value:"Commands",id:"commands",level:2},{value:"Config",id:"config",level:2},{value:"Questions",id:"questions",level:2},{value:"1. Actions Hook",id:"1-actions-hook",level:3},{value:"2. Filters Hook",id:"2-filters-hook",level:3},{value:"Others",id:"others",level:2}];function h(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",img:"img",li:"li",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,i.a)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h1,{id:"wordpress",children:"Wordpress"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://wordpress.com/home/deepaksood619.wordpress.com",children:"https://wordpress.com/home/deepaksood619.wordpress.com"})}),"\n",(0,r.jsx)(n.p,{children:"WordPress is a content management system that powers 34% of all websites on the internet and 60% of websites that run on CMS. The power of WordPress is in the ecosystem - there are a lot of different plugins and themes. Anyone without any special programming knowledge can build a website, but a working knowledge of WordPress intricacies is a boon to any developer or designer resume."}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://www.advancedcustomfields.com",children:"https://www.advancedcustomfields.com"})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://www.youtube.com/watch?v=jmqu4HC3zmo",children:"Overview of WordPress (Beginners Guide 2020)"})}),"\n",(0,r.jsx)(n.h2,{id:"biggest-wordpress-users",children:"Biggest Wordpress Users"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"WordPress.com"}),"\n",(0,r.jsx)(n.li,{children:"IBM Jobs"}),"\n",(0,r.jsx)(n.li,{children:"Microsoft News"}),"\n",(0,r.jsx)(n.li,{children:"Facebook Newsroom"}),"\n",(0,r.jsx)(n.li,{children:"Mercedes-Benz"}),"\n",(0,r.jsx)(n.li,{children:"BBC America"}),"\n",(0,r.jsx)(n.li,{children:"Forbes Blogs"}),"\n",(0,r.jsx)(n.li,{children:"Time Magazine"}),"\n",(0,r.jsx)(n.li,{children:"CNN Press Room"}),"\n",(0,r.jsx)(n.li,{children:"Quartz"}),"\n",(0,r.jsx)(n.li,{children:"The White House"}),"\n",(0,r.jsx)(n.li,{children:"Usain Bolt"}),"\n",(0,r.jsx)(n.li,{children:"Katty Perry"}),"\n",(0,r.jsx)(n.li,{children:"Brian Smith"}),"\n",(0,r.jsx)(n.li,{children:"Boing Boing"}),"\n",(0,r.jsx)(n.li,{children:"The Bloggess"}),"\n",(0,r.jsx)(n.li,{children:"FiveThirtyEight"}),"\n",(0,r.jsx)(n.li,{children:"The Herald Sun"}),"\n",(0,r.jsx)(n.li,{children:"Flickr Blog"}),"\n",(0,r.jsx)(n.li,{children:"TechCrunch"}),"\n",(0,r.jsx)(n.li,{children:"Sony Music"}),"\n",(0,r.jsx)(n.li,{children:"Bata"}),"\n",(0,r.jsx)(n.li,{children:"Bloomberg Professional"}),"\n",(0,r.jsx)(n.li,{children:"Yelp Blog"}),"\n",(0,r.jsx)(n.li,{children:"The New York Observer"}),"\n",(0,r.jsx)(n.li,{children:"PlayStation Blog"}),"\n",(0,r.jsx)(n.li,{children:"Rolling Stones"}),"\n",(0,r.jsx)(n.li,{children:"Spotify Newsroom"}),"\n",(0,r.jsx)(n.li,{children:"Disney Books"}),"\n",(0,r.jsx)(n.li,{children:"Etsy Journal"}),"\n",(0,r.jsx)(n.li,{children:"TED Blog"}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://wedevs.com/blog/103311/top-brands-using-wordpress/",children:"30+ Examples of Biggest Companies Using WordPress - weDevs"})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://www.reddit.com/r/Wordpress/comments/1dyshjs/largest_user_base_you_have_served/?rdt=42578",children:"Largest user base you have served? : r/Wordpress"})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://www.wpbeginner.com/showcase/40-most-notable-big-name-brands-that-are-using-wordpress/",children:"40+ Most Notable Big Name Brands that are Using WordPress"})}),"\n",(0,r.jsx)(n.h2,{id:"wp-admin",children:"wp-admin"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://www.youtube.com/watch?v=Ov_zUmMyJnQ",children:"WordPress Admin Dashboard Tutorial 2020 - Step By Step For Beginners In WP-ADMIN!"})}),"\n",(0,r.jsx)(n.p,{children:"Posts - That are part of blogs"}),"\n",(0,r.jsx)(n.p,{children:"Pages - That are not part of blog, and are standalone pages like about us, contact us, etc"}),"\n",(0,r.jsx)(n.h2,{id:"themes",children:"Themes"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://generatepress.com",children:"https://generatepress.com"})}),"\n",(0,r.jsxs)(n.li,{children:["Divi Theme - ",(0,r.jsx)(n.a,{href:"https://www.elegantthemes.com",children:"https://www.elegantthemes.com"})," ",(0,r.jsx)(n.a,{href:"https://www.elegantthemesdemo.com",children:"https://www.elegantthemesdemo.com"})]}),"\n",(0,r.jsx)(n.li,{children:"Astra"}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://www.isitwp.com/top-wordpress-themes",children:"https://www.isitwp.com/top-wordpress-themes"})}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://rishitheme.com",children:"https://rishitheme.com"})}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"plugins",children:"Plugins"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://wp-rocket.me",children:"https://wp-rocket.me"})}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"W3 Total Cache"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"WP Super Cache"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Kinsta Cache"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Contact Form 7 by Takayuki Miyoshi"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:"Yoast SEO by Team Yoast"})}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:"Page Builder - Gutenberg editor"})}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:"Page Builder - Elementor Website Builder by Elementor.com"})}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.strong,{children:"Page Builder -"})," Classic Editor by WordPress Contributors"]}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Akismet Spam Protection by Automattic"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"jonRadio multiple themes"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"All-in-One WP Migration by ServMask"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Accordian plugin"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://wordpress.org/support/article/managing-plugins",children:"https://wordpress.org/support/article/managing-plugins"})}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"tools",children:"Tools"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"WP-Cli"}),"\n"]}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"https://wp-cli.org/",children:"WP-Cli"})," lets you work with WordPress using the command line. With this great tool you can upgrade and downgrade WordPress in seconds, as well as update plugins. Notably, when you find yourself migrating to a different server, the built in search-replace command will take care of all the url changes for you, and it's worth installing it simply because of that."]}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"Advanced Database Cleaner"}),"\n"]}),"\n",(0,r.jsxs)(n.p,{children:["The ",(0,r.jsx)(n.a,{href:"https://wordpress.org/plugins/advanced-database-cleaner/",children:"Advanced Database Cleaner"})," plugin cleans out spam comments, built in revisions, and transients. You can even set up tasks to run automatically."]}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"Query Monitor"}),"\n"]}),"\n",(0,r.jsxs)(n.p,{children:["When things are running slowly and you're not sure what to blame, ",(0,r.jsx)(n.a,{href:"https://wordpress.org/plugins/query-monitor/",children:"Query Monitor"})," lets you see what queries are taking too long to execute, as well as show you PHP warnings and errors."]}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://themeisle.com/blog/wordpress-version-control",children:"https://themeisle.com/blog/wordpress-version-control"})}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.a,{href:"https://kinsta.com/blog/wordpress-version-control",children:"https://kinsta.com/blog/wordpress-version-control"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.a,{href:"https://wppusher.com/",children:"WP Pusher"}),"-- lets you deploy themes and plugins from any Git repository. Note that this one focuses specifically on themes and plugins."]}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.a,{href:"https://wordpress.org/plugins/revisr/",children:"Revisr"}),"-- offers a much more comprehensive approach to using Git with WordPress. You can track your entire site, including your database, in a Git repository. You can also commit changes from inside your WordPress dashboard, revert files, and push/pull changes to a remote repository (like Bitbucket or GitHub)."]}),"\n",(0,r.jsxs)(n.li,{children:[(0,r.jsx)(n.a,{href:"https://versionpress.com/",children:"VersionPress"}),' is an open source project that aims to "bring the full power of Git to WordPress" by version-controlling both your site\'s files and database. Though it also relies on Git, VersionPress gets its own section because it does things a little differently than the methods above.']}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"commands",children:"Commands"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-sql",children:"drop database wordpress;\n\ncreate database wordpress;\n\nselect * from wordpress.wp_options;\n\nupdate wp_options set option_value='http://localhost:8080' where option_name='siteurl';\n"})}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-yaml",children:"services:\nwordpress:\nimage: wordpress\nrestart: always\n\nports:\n- 8083:80\n\nenvironment:\nWORDPRESS_DB_HOST: db\nWORDPRESS_DB_USER: exampleuser\nWORDPRESS_DB_PASSWORD: examplepass\nWORDPRESS_DB_NAME: exampledb\n\nvolumes:\n- wordpress:/var/www/html\n\ndb:\nimage: mysql:5.7\nrestart: always\n\nenvironment:\nMYSQL_DATABASE: exampledb\nMYSQL_USER: exampleuser\nMYSQL_PASSWORD: examplepass\nMYSQL_RANDOM_ROOT_PASSWORD: '1'\n\nvolumes:\n- db:/var/lib/mysql\n\nvolumes:\nwordpress:\ndb:\n"})}),"\n",(0,r.jsx)(n.h2,{id:"config",children:"Config"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://wordpress.org/support/article/editing-wp-config-php",children:"https://wordpress.org/support/article/editing-wp-config-php"})}),"\n",(0,r.jsx)(n.h2,{id:"questions",children:"Questions"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"What is the latest version of wordpress?"}),"\n",(0,r.jsxs)(n.li,{children:["Why WordPress Is So Popular?","\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"Simplicity and Flexibility"}),"\n",(0,r.jsx)(n.li,{children:"In-corporate with publishing tools"}),"\n",(0,r.jsx)(n.li,{children:"User Management"}),"\n",(0,r.jsx)(n.li,{children:"Media Management"}),"\n",(0,r.jsx)(n.li,{children:"Full Standards Compliance"}),"\n",(0,r.jsx)(n.li,{children:"Ease Theme System"}),"\n",(0,r.jsx)(n.li,{children:"Extend with Plugins"}),"\n",(0,r.jsx)(n.li,{children:"Built-in Comments"}),"\n",(0,r.jsx)(n.li,{children:"Search Engine Optimized & Multilingual"}),"\n",(0,r.jsx)(n.li,{children:"Open Source"}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.li,{children:"What are WordPress hooks?"}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"It is provided by WordPress to allow your plugin to ' hook into' the whole WordPress; that is, to call functions in the plugin at particular times according to your need and thereby set your plugin in motion."}),"\n",(0,r.jsx)(n.p,{children:"There are two kinds of hooks:"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Actions hook"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Filters hook"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"What are the difference between action hook and filter hook in WordPress?"}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h3,{id:"1-actions-hook",children:"1. Actions Hook"}),"\n",(0,r.jsxs)(n.p,{children:["Actions Hook are triggered by particular events that take place in WordPress such as changing themes, publishing a post, or displaying an administration screen. It is a custom ",(0,r.jsx)(n.a,{href:"https://www.bestinterviewquestion.com/core-php-interview-questions",children:"PHP"})," function defined in your plugin and hooked, i.e., set to respond, to some of these events."]}),"\n",(0,r.jsx)(n.p,{children:"Actions often do one or more of the following things"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"Modify database data"}),"\n",(0,r.jsx)(n.li,{children:"Send an email message"}),"\n",(0,r.jsx)(n.li,{children:"Modify the generated administration screen or front end page sent to a user web browser"}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"Here are some Actions Functions listed"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"has_action()"}),"\n",(0,r.jsx)(n.li,{children:"do_action()"}),"\n",(0,r.jsx)(n.li,{children:"add_action()"}),"\n",(0,r.jsx)(n.li,{children:"remove_action()"}),"\n"]}),"\n",(0,r.jsx)(n.h3,{id:"2-filters-hook",children:"2. Filters Hook"}),"\n",(0,r.jsx)(n.p,{children:"Filters Hook are functions that WordPress passes data through, at certain points in execution, just before taking some action with the data. It sits between the database and the browser and between the browser and the database; all most all input and output in WordPress pass through at least one filter hook."}),"\n",(0,r.jsx)(n.p,{children:"The necessary steps to add your filters to WordPress are listed:"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"Create the PHP function that filters the data"}),"\n",(0,r.jsx)(n.li,{children:"Hook to the screen in WordPress, by calling add_filter()"}),"\n",(0,r.jsx)(n.li,{children:"Put your PHP function in a plugin file and activate it."}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"Here are some Filters Functions listed"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"has_filter()"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"doing_filter()"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"add_filter()"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"remove_filter() etc"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"How many default tables are in WordPress?"}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"There are altogether 12 tables by default in WordPress."}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_options"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_users"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_links"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_commentmeta"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_term_relationships"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_postmeta"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_posts"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_termmeta"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_term_taxonomy"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_usermeta"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_terms"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"wp_comments"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"How many types of users Role in WordPress? Explain"}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"We can make many types of user types of role."}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Administrator Role"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Author Role"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Editor Role"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Subscriber Role"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Contributor Role"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"What is plugin? list some important WordPress plugin?"}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"WordPress plugins are a type of apps that allows you to add more functionality and features to your WordPress website just like the same way as apps do for your smartphone. Plugins allow you to create any type of the site with WordPress, not just blogs. Nowadays plugins are very popular."}),"\n",(0,r.jsx)(n.p,{children:"There are lots of plugins are available that listed below"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"Yoast SEO Plugin (This plugins are used for SEO purpose.)"}),"\n",(0,r.jsx)(n.li,{children:"Contact Form 7 (This plugins is used to make web forms with any code)"}),"\n",(0,r.jsx)(n.li,{children:"Sitemap & URLs Plugins"}),"\n",(0,r.jsx)(n.li,{children:"All In One WP Security & Firewall etc"}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"Advantages of WordPress Plugins"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Helps in SEO"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Ease Of Use and Quick Installation Process"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"It helps in to Keep Secure"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Strong Community Support"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"Helps to use advanced features of WordPress"}),"\n"]}),"\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:"What are the difference between post and page in WordPress?"}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"In WordPress, Posts is a dynamic entity that has a published or updated date and is displayed on the blog page."}),"\n",(0,r.jsx)(n.p,{children:"Example: news, events etc"}),"\n",(0,r.jsx)(n.p,{children:"Pages do not have published or updated date. Hence there are useful for the static and timeless type of content."}),"\n",(0,r.jsx)(n.p,{children:'Example, the "About Us" or "Contact Us"'}),"\n",(0,r.jsx)(n.p,{children:"The difference between pages and posts is that the WordPress page is a static entity and post is a dynamic entity."}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"What is Category in WordPress?"}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:'A category is one of the predefined taxonomies in WordPress, and it is used to sort and group content into different sections. In new WordPress installation, "Uncategorized" is the default category. We can change the default category from Settings -> Writing screen. In WordPress post can be filed under many categories and can have both tags and categories.'}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"What is Tag in WordPress? Explain"}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"A tag is one of the pre-defined taxonomy in WordPress. You can add tags to posts along with categories in WordPress. Tags are smaller in scope and focused on specific topics."}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"What are the difference between Tag & Category in WordPress?"}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.img,{alt:"image",src:s(970689).Z+"",width:"645",height:"314"})}),"\n",(0,r.jsx)(n.p,{children:"In WordPress categories are hierarchical which means terms can have a relationship with each other like child and parent."}),"\n",(0,r.jsx)(n.p,{children:"Example: You could have a Category called India, and under India, you could have categories called Delhi, Haryana, and U.P. Categories means for broad grouping of posts."}),"\n",(0,r.jsx)(n.p,{children:"But Tags are NOT hierarchical which means no relationship between them. Tags means to describe specific details posts."}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"Where do I insert Google Analytics code in WordPress?"}),"\n"]}),"\n",(0,r.jsx)(n.p,{children:"While there are different ways to add Google Analytics your WordPress site, here are the 3 most common ones:"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:"Through MonsterInsights"}),"\n",(0,r.jsx)(n.li,{children:"By inserting plugins for Headers and Footers"}),"\n",(0,r.jsx)(n.li,{children:"By installing Google Analytics in the WordPress Theme"}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"others",children:"Others"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://www.wpbeginner.com/wp-themes/how-to-use-multiple-themes-for-pages-in-wordpress",children:"https://www.wpbeginner.com/wp-themes/how-to-use-multiple-themes-for-pages-in-wordpress"})}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://www.toptal.com/wordpress/tips-and-practices",children:"https://www.toptal.com/wordpress/tips-and-practices"})}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://www.toptal.com/wordpress/interview-questions",children:"https://www.toptal.com/wordpress/interview-questions"})}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://www.freecodecamp.org/news/how-to-create-an-ecommere-website-using-woocomerce",children:"https://www.freecodecamp.org/news/how-to-create-an-ecommere-website-using-woocomerce"})}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://www.freecodecamp.org/news/easily-create-a-website-using-elementor-and-wordpress",children:"https://www.freecodecamp.org/news/easily-create-a-website-using-elementor-and-wordpress"})}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://www.toptal.com/wordpress/power-of-wordpress-hooks-actions-and-filters",children:"Harness WordPress: Hooks, Actions and Filters | Toptal"})}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"https://www.freecodecamp.org/news/the-ultimate-guide-to-high-performance-wordpress/",children:"The Ultimate Guide to High Performance WordPress"})}),"\n"]})]})}function c(e={}){const{wrapper:n}={...(0,i.a)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(h,{...e})}):h(e)}},970689:(e,n,s)=>{s.d(n,{Z:()=>r});const r=s.p+"assets/images/Wordpress-image1-9e0b8f097f7b4a1a222616ca99b2a22a.jpg"},511151:(e,n,s)=>{s.d(n,{Z:()=>l,a:()=>o});var r=s(667294);const i={},t=r.createContext(i);function o(e){const n=r.useContext(t);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:o(e.components),r.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/d98ddacb.15f2787a.js b/assets/js/d98ddacb.15f2787a.js new file mode 100644 index 00000000000..09e8b99c072 --- /dev/null +++ b/assets/js/d98ddacb.15f2787a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[46668],{620372:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>h,frontMatter:()=>r,metadata:()=>o,toc:()=>d});var n=a(785893),s=a(511151);const r={},i="Architecture",o={id:"technologies/elasticsearch/architecture",title:"Architecture",description:"Cluster and Node",source:"@site/docs/technologies/elasticsearch/architecture.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/architecture",permalink:"/technologies/elasticsearch/architecture",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/architecture.md",tags:[],version:"current",lastUpdatedAt:1732901510,formattedLastUpdatedAt:"Nov 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Analysis and Analyzers",permalink:"/technologies/elasticsearch/analysis-and-analyzers"},next:{title:"Commands",permalink:"/technologies/elasticsearch/commands"}},c={},d=[{value:"Cluster and Node",id:"cluster-and-node",level:2},{value:"Index",id:"index",level:2},{value:"Document",id:"document",level:2},{value:"Document Metadata",id:"document-metadata",level:2}];function l(e){const t={a:"a",code:"code",h1:"h1",h2:"h2",li:"li",p:"p",ul:"ul",...(0,s.a)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t.h1,{id:"architecture",children:"Architecture"}),"\n",(0,n.jsx)(t.h2,{id:"cluster-and-node",children:"Cluster and Node"}),"\n",(0,n.jsx)(t.p,{children:"A node is a running instance of Elasticsearch, while a cluster consists of one or more nodes with the same cluster.name that are working together to share their data and workload. As nodes are added to or removed from the cluster, the cluster reorganizes itself to spread the data evenly."}),"\n",(0,n.jsx)(t.p,{children:"One node in the cluster is elected to be the masternode, which is in charge of managing cluster-wide changes like creating or deleting an index, or adding or removing a node from the cluster. The master node does not need to be involved in document-level changes or searches, which means that having just one master node will not become a bottleneck as traffic grows. Any node can become the master. Our example cluster has only one node, so it performs the master role."}),"\n",(0,n.jsx)(t.p,{children:"As users, we can talk to any node in the cluster, including the master node. Every node knows where each document lives and can forward our request directly to the nodes that hold the data we are interested in. Whichever node we talk to manages the process of gathering the response from the node or nodes holding the data and returning the final response to the client. It is all managed transparently by Elasticsearch."}),"\n",(0,n.jsx)(t.h2,{id:"index",children:"Index"}),"\n",(0,n.jsx)(t.p,{children:"To add data to Elasticsearch, we need an index - a place to store related data.In reality, an index is just alogical namespace that points to one or more physical shards."}),"\n",(0,n.jsx)(t.p,{children:"A shard is a low-level worker unit that holds just a slice of all the data in the index. A shard is a single instance of Lucene, and is a complete search engine in its own right. Our documents are stored and indexed in shards, but our applications don't talk to them directly. Instead, they talk to an index."}),"\n",(0,n.jsx)(t.p,{children:"Shards are how Elasticsearch distributes data around your cluster. Think of shards as containers for data. Documents are stored in shards, and shards are allocated to nodes in your cluster. As your cluster grows or shrinks, Elasticsearch will automatically migrate shards between nodes so that the cluster remains balanced."}),"\n",(0,n.jsx)(t.p,{children:"A shard can be either a primary shard or a replica shard. Each document in your index belongs to a single primary shard, so the number of primary shards that you have determines the maximum amount of data that your index can hold."}),"\n",(0,n.jsx)(t.p,{children:"A replica shard is just a copy of a primary shard.Replicas are used to provide redundant copies of your data to protect against hardware failure, and to serve read requests like searching or retrieving a document."}),"\n",(0,n.jsx)(t.p,{children:"The number of primary shards in an index is fixed at the time that an index is created, but the number of replica shards can be changed at any time."}),"\n",(0,n.jsx)(t.p,{children:(0,n.jsx)(t.a,{href:"https://www.elastic.co/blog/implementing-hot-warm-cold-in-elasticsearch-with-index-lifecycle-management",children:"Implementing Hot-Warm-Cold in Elasticsearch with Index Lifecycle Management | Elastic Blog"})}),"\n",(0,n.jsx)(t.p,{children:(0,n.jsx)(t.a,{href:"https://www.elastic.co/guide/en/elasticsearch/reference/current/set-up-lifecycle-policy.html",children:"Configure a lifecycle policy | Elasticsearch Guide [8.14] | Elastic"})}),"\n",(0,n.jsx)(t.p,{children:(0,n.jsx)(t.a,{href:"https://opster.com/guides/elasticsearch/data-architecture/index-lifecycle-policy-management/",children:"Elasticsearch Index Lifecycle Policy and Management - Important Tips"})}),"\n",(0,n.jsx)(t.h2,{id:"document",children:"Document"}),"\n",(0,n.jsx)(t.p,{children:"Most entities or objects in most applications can be serialized into a JSON object, with keys and values. A key is the name of a field or property, and a value can be a string, a number, a Boolean, another object, an array of values, or some other specialized type such as a string representing a date or an object representing a geolocation."}),"\n",(0,n.jsx)(t.p,{children:"Often, we use the terms object and document interchangeably. However, there is a distinction.An object is just a JSON object - similar to what is known as a hash, hashmap, dictionary, or associative array. Objects may contain other objects. In Elasticsearch, the term document has a specific meaning. It refers to the top-level, or root object that is serialized into JSON and stored in Elasticsearch under a unique ID."}),"\n",(0,n.jsx)(t.h2,{id:"document-metadata",children:"Document Metadata"}),"\n",(0,n.jsxs)(t.ul,{children:["\n",(0,n.jsxs)(t.li,{children:[(0,n.jsx)(t.code,{children:"_index"})," - Where the document lives"]}),"\n",(0,n.jsxs)(t.li,{children:[(0,n.jsx)(t.code,{children:"_type"})," - The class of object that the document represents"]}),"\n",(0,n.jsxs)(t.li,{children:[(0,n.jsx)(t.code,{children:"_id"})," - The unique identifier for the document"]}),"\n",(0,n.jsxs)(t.li,{children:[(0,n.jsx)(t.code,{children:"_version"})," - Every time a change is made to a document (including deleting it), the ",(0,n.jsx)(t.code,{children:"_version"})," number is incremented."]}),"\n"]})]})}function h(e={}){const{wrapper:t}={...(0,s.a)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(l,{...e})}):l(e)}},511151:(e,t,a)=>{a.d(t,{Z:()=>o,a:()=>i});var n=a(667294);const s={},r=n.createContext(s);function i(e){const t=n.useContext(r);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function o(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:i(e.components),n.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/d98ddacb.486b3357.js b/assets/js/d98ddacb.486b3357.js deleted file mode 100644 index f62ed0253a6..00000000000 --- a/assets/js/d98ddacb.486b3357.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[46668],{620372:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>h,frontMatter:()=>r,metadata:()=>o,toc:()=>d});var n=a(785893),s=a(511151);const r={},i="Architecture",o={id:"technologies/elasticsearch/architecture",title:"Architecture",description:"Cluster and Node",source:"@site/docs/technologies/elasticsearch/architecture.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/architecture",permalink:"/technologies/elasticsearch/architecture",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/architecture.md",tags:[],version:"current",lastUpdatedAt:1720644398,formattedLastUpdatedAt:"Jul 10, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Analysis and Analyzers",permalink:"/technologies/elasticsearch/analysis-and-analyzers"},next:{title:"Commands",permalink:"/technologies/elasticsearch/commands"}},c={},d=[{value:"Cluster and Node",id:"cluster-and-node",level:2},{value:"Index",id:"index",level:2},{value:"Document",id:"document",level:2},{value:"Document Metadata",id:"document-metadata",level:2}];function l(e){const t={a:"a",code:"code",h1:"h1",h2:"h2",p:"p",...(0,s.a)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t.h1,{id:"architecture",children:"Architecture"}),"\n",(0,n.jsx)(t.h2,{id:"cluster-and-node",children:"Cluster and Node"}),"\n",(0,n.jsx)(t.p,{children:"Anodeis a running instance ofElasticsearch, while aclusterconsists of one or more nodes with the samecluster.namethat are working together to share their data and workload. As nodes are added to or removed from the cluster, the cluster reorganizes itself to spread the data evenly."}),"\n",(0,n.jsx)(t.p,{children:"One node in the cluster is elected to be themasternode, whichis in charge of managing cluster-wide changes like creating or deleting an index, or adding or removing a node from the cluster. The master node does not need to be involved in document-level changes or searches, which means that having just one master node will not become a bottleneck as traffic grows. Any node can become the master. Our example cluster has only one node, so it performs the master role."}),"\n",(0,n.jsx)(t.p,{children:"As users, we can talk toany node in the cluster, including the master node. Every node knows where each document lives and can forward our request directly to the nodes that hold the data we are interested in. Whichever node we talk to manages the process of gathering the response from the node or nodes holding the data and returning the final response to the client. It is all managed transparently by Elasticsearch."}),"\n",(0,n.jsx)(t.h2,{id:"index",children:"Index"}),"\n",(0,n.jsx)(t.p,{children:"To add data to Elasticsearch, we need an index - a place to store related data.In reality, an index is just alogical namespace that points to one or more physical shards."}),"\n",(0,n.jsx)(t.p,{children:"A shard is a low-level worker unit that holds just a slice of all the data in the index. A shard is a single instance of Lucene, and is a complete search engine in its own right. Our documents are stored and indexed in shards, but our applications don't talk to them directly. Instead, they talk to an index."}),"\n",(0,n.jsx)(t.p,{children:"Shards are how Elasticsearch distributes data around your cluster. Think of shards as containers for data. Documents are stored in shards, and shards are allocated to nodes in your cluster. As your cluster grows or shrinks, Elasticsearch will automatically migrate shards between nodes so that the cluster remains balanced."}),"\n",(0,n.jsx)(t.p,{children:"A shard can be either a primary shard or a replica shard. Each document in your index belongs to a single primary shard, so the number of primary shards that you have determines the maximum amount of data that your index can hold."}),"\n",(0,n.jsx)(t.p,{children:"A replica shard is just a copy of a primary shard.Replicas are used to provide redundant copies of your data to protect against hardware failure, and to serve read requests like searching or retrieving a document."}),"\n",(0,n.jsx)(t.p,{children:"The number of primary shards in an index is fixed at the time that an index is created, but the number of replica shards can be changed at any time."}),"\n",(0,n.jsx)(t.p,{children:(0,n.jsx)(t.a,{href:"https://www.elastic.co/blog/implementing-hot-warm-cold-in-elasticsearch-with-index-lifecycle-management",children:"Implementing Hot-Warm-Cold in Elasticsearch with Index Lifecycle Management | Elastic Blog"})}),"\n",(0,n.jsx)(t.p,{children:(0,n.jsx)(t.a,{href:"https://www.elastic.co/guide/en/elasticsearch/reference/current/set-up-lifecycle-policy.html",children:"Configure a lifecycle policy | Elasticsearch Guide [8.14] | Elastic"})}),"\n",(0,n.jsx)(t.p,{children:(0,n.jsx)(t.a,{href:"https://opster.com/guides/elasticsearch/data-architecture/index-lifecycle-policy-management/",children:"Elasticsearch Index Lifecycle Policy and Management - Important Tips"})}),"\n",(0,n.jsx)(t.h2,{id:"document",children:"Document"}),"\n",(0,n.jsx)(t.p,{children:"Most entities or objects in most applications can be serialized into a JSON object, with keys and values. A key is the name of a field or property, and a value can be a string, a number, a Boolean, another object, an array of values, or some other specialized type such as a string representing a date or an object representing a geolocation."}),"\n",(0,n.jsx)(t.p,{children:"Often, we use the terms object and document interchangeably. However, there is a distinction.An object is just a JSON object - similar to what is known as a hash, hashmap, dictionary, or associative array. Objects may contain other objects. In Elasticsearch, the term document has a specific meaning. It refers to the top-level, or root object that is serialized into JSON and stored in Elasticsearch under a unique ID."}),"\n",(0,n.jsx)(t.h2,{id:"document-metadata",children:"Document Metadata"}),"\n",(0,n.jsxs)(t.p,{children:[(0,n.jsx)(t.code,{children:"_index"})," - Where the document lives"]}),"\n",(0,n.jsxs)(t.p,{children:[(0,n.jsx)(t.code,{children:"_type"})," - The class of object that the document represents"]}),"\n",(0,n.jsxs)(t.p,{children:[(0,n.jsx)(t.code,{children:"_id"})," - The unique identifier for the document"]}),"\n",(0,n.jsxs)(t.p,{children:[(0,n.jsx)(t.code,{children:"_version"})," - Every time a change is made to a document (including deleting it), the ",(0,n.jsx)(t.code,{children:"_version"})," number is incremented."]})]})}function h(e={}){const{wrapper:t}={...(0,s.a)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(l,{...e})}):l(e)}},511151:(e,t,a)=>{a.d(t,{Z:()=>o,a:()=>i});var n=a(667294);const s={},r=n.createContext(s);function i(e){const t=n.useContext(r);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function o(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:i(e.components),n.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/dd5e46bd.3266628b.js b/assets/js/dd5e46bd.3266628b.js new file mode 100644 index 00000000000..130177a42b2 --- /dev/null +++ b/assets/js/dd5e46bd.3266628b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[90341],{518104:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>o,contentTitle:()=>r,default:()=>d,frontMatter:()=>a,metadata:()=>l,toc:()=>c});var i=n(785893),s=n(511151);const a={},r="Others",l={id:"technologies/elasticsearch/others",title:"Others",description:"Heartbeat",source:"@site/docs/technologies/elasticsearch/others.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/others",permalink:"/technologies/elasticsearch/others",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/others.md",tags:[],version:"current",lastUpdatedAt:1732901510,formattedLastUpdatedAt:"Nov 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Internal Working",permalink:"/technologies/elasticsearch/internal-working"},next:{title:"Git",permalink:"/technologies/git/"}},o={},c=[{value:"Heartbeat",id:"heartbeat",level:2},{value:"FluentBit",id:"fluentbit",level:2},{value:"Fluentd",id:"fluentd",level:2},{value:"Unified Logging with JSON",id:"unified-logging-with-json",level:3},{value:"Pluggable Architecture",id:"pluggable-architecture",level:3},{value:"Minimum Resources Required",id:"minimum-resources-required",level:3},{value:"Built-in Reliability",id:"built-in-reliability",level:3},{value:"Splunk",id:"splunk",level:2},{value:"Eland",id:"eland",level:2},{value:"Application Performance Monitoring (APM)",id:"application-performance-monitoring-apm",level:2},{value:"Others",id:"others-1",level:3},{value:"Flask",id:"flask",level:2},{value:"OpenSearch",id:"opensearch",level:2},{value:"Elasticsearch vs Amazon OpenSearch",id:"elasticsearch-vs-amazon-opensearch",level:3}];function h(e){const t={a:"a",em:"em",h1:"h1",h2:"h2",h3:"h3",img:"img",li:"li",p:"p",ul:"ul",...(0,s.a)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.h1,{id:"others",children:"Others"}),"\n",(0,i.jsx)(t.h2,{id:"heartbeat",children:"Heartbeat"}),"\n",(0,i.jsxs)(t.p,{children:["Heartbeat is a lightweight daemon that you install on a remote server to periodically check the status of your services and determine whether they are available. Unlike ",(0,i.jsx)(t.a,{href:"https://www.elastic.co/guide/en/beats/metricbeat/7.1/index.html",children:"Metricbeat"}),", which only tells you if your servers are up or down, Heartbeat tells you whether your services are reachable."]}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.a,{href:"https://www.elastic.co/guide/en/beats/heartbeat/current/heartbeat-overview.html",children:"https://www.elastic.co/guide/en/beats/heartbeat/current/heartbeat-overview.html"})}),"\n",(0,i.jsx)(t.h2,{id:"fluentbit",children:"FluentBit"}),"\n",(0,i.jsxs)(t.p,{children:["Fluent Bit is an open source and multi-platformLog Processor and Forwarderwhich allows you to collect data/logs from different sources, unify and send them to multiple destinations. It's fully compatible with Docker and ",(0,i.jsx)(t.a,{href:"https://fluentbit.io/kubernetes/",children:"Kubernetes"})," environments."]}),"\n",(0,i.jsx)(t.p,{children:"Fluent Bit is written inC, have a pluggable architecture supporting around 30 extensions. It's fast and lightweight and provide the required security for network operations through TLS."}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.a,{href:"https://fluentbit.io",children:"https://fluentbit.io"})}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.a,{href:"https://github.com/fluent/fluent-bit",children:"https://github.com/fluent/fluent-bit"})}),"\n",(0,i.jsx)(t.h2,{id:"fluentd",children:"Fluentd"}),"\n",(0,i.jsx)(t.p,{children:"Fluentd is an open source data collector for unified logging layer."}),"\n",(0,i.jsx)(t.h3,{id:"unified-logging-with-json",children:"Unified Logging with JSON"}),"\n",(0,i.jsxs)(t.p,{children:["Fluentd tries to structure data as JSON as much as possible: this allows Fluentd to unify all facets of processing log data: collecting, filtering, buffering, and outputting logs across multiple sources and destinations(",(0,i.jsx)(t.a,{href:"http://www.fluentd.org/blog/unified-logging-layer",children:"Unified Logging Layer"}),"). The downstream data processing is much easier with JSON, since it has enough structure to be accessible while retaining flexible schemas."]}),"\n",(0,i.jsx)(t.h3,{id:"pluggable-architecture",children:"Pluggable Architecture"}),"\n",(0,i.jsxs)(t.p,{children:["Fluentd has a flexible plugin system that allows the community to extend its functionality. Our 500+ community-contributed plugins connect dozens of ",(0,i.jsx)(t.a,{href:"https://www.fluentd.org/datasources",children:"data sources"})," and ",(0,i.jsx)(t.a,{href:"https://www.fluentd.org/dataoutputs",children:"data outputs"}),". By leveraging the plugins, you can start making better use of your logs right away."]}),"\n",(0,i.jsx)(t.h3,{id:"minimum-resources-required",children:"Minimum Resources Required"}),"\n",(0,i.jsxs)(t.p,{children:["Fluentd is written in a combination of C language and Ruby, and requires very little system resource. The vanilla instance runs on 30-40MB of memory and can process 13,000 events/second/core. If you have tighter memory requirements (-450kb), check out ",(0,i.jsx)(t.a,{href:"http://fluentbit.io/",children:"Fluent Bit"}),", the lightweight forwarder for Fluentd."]}),"\n",(0,i.jsx)(t.h3,{id:"built-in-reliability",children:"Built-in Reliability"}),"\n",(0,i.jsxs)(t.p,{children:["Fluentd supports memory- and file-based buffering to prevent inter-node data loss. Fluentd also supports robust failover and can be set up for high availability. ",(0,i.jsx)(t.a,{href:"https://www.fluentd.org/testimonials",children:"2,000+ data-driven companies"})," rely on Fluentd to differentiate their products and services through a better use and understanding of their log data."]}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.img,{alt:"image",src:n(38074).Z+"",width:"892",height:"560"})}),"\n",(0,i.jsxs)(t.p,{children:["An event consists of ",(0,i.jsx)(t.em,{children:"tag"}),", ",(0,i.jsx)(t.em,{children:"time"})," and",(0,i.jsx)(t.em,{children:"record"}),". Tag is a string separated with '.' (e.g. myapp.access). It is used to categorize events. Time is a UNIX time recorded at occurrence of an event. Record is a JSON object."]}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.a,{href:"https://www.fluentd.org",children:"https://www.fluentd.org"})}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.a,{href:"https://github.com/fluent/fluentd",children:"https://github.com/fluent/fluentd"})}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.a,{href:"https://www.youtube.com/watch?v=Gp0-7oVOtPw&ab_channel=ThatDevOpsGuy",children:"https://www.youtube.com/watch?v=Gp0-7oVOtPw&ab_channel=ThatDevOpsGuy"})}),"\n",(0,i.jsx)(t.h2,{id:"splunk",children:"Splunk"}),"\n",(0,i.jsx)(t.p,{children:"Splunk is a software technology which is used for monitoring, searching, analyzing and visualizing the machine generated data in real time. It can monitor and read different type of log files and stores data as events in indexers. This tool allows you to visualize data in various forms of dashboards."}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.a,{href:"https://www.guru99.com/splunk-tutorial.html",children:"https://www.guru99.com/splunk-tutorial.html"})}),"\n",(0,i.jsx)(t.h2,{id:"eland",children:"Eland"}),"\n",(0,i.jsx)(t.p,{children:"Eland is a Python Elasticsearch client for exploring and analyzing data residing in Elasticsearch with a familiar Pandas-compatible API."}),"\n",(0,i.jsx)(t.p,{children:"Where possible the package uses existing Python APIs and data structures to make it easy to switch between numpy, pandas, scikit-learn to their Elasticsearch powered equivalents. In general, the data resides in Elasticsearch and not in memory, which allows Eland to access large datasets stored in Elasticsearch."}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.a,{href:"https://towardsdatascience.com/elasticsearch-for-data-science-just-got-way-easier-95912d724636",children:"https://towardsdatascience.com/elasticsearch-for-data-science-just-got-way-easier-95912d724636"})}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.a,{href:"https://github.com/elastic/eland",children:"https://github.com/elastic/eland"})}),"\n",(0,i.jsx)(t.h2,{id:"application-performance-monitoring-apm",children:"Application Performance Monitoring (APM)"}),"\n",(0,i.jsx)(t.p,{children:"Application Performance Monitoring (APM) collects in-depth performance metrics and errors from inside your application. It allows you to monitor the performance of thousands of applications in real time."}),"\n",(0,i.jsx)(t.h3,{id:"others-1",children:"Others"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsx)(t.li,{children:"Dynatrace"}),"\n",(0,i.jsx)(t.li,{children:"Newrelic"}),"\n",(0,i.jsx)(t.li,{children:"Elasticsearch APM / Elastic APM"}),"\n",(0,i.jsx)(t.li,{children:"Pingdom"}),"\n",(0,i.jsx)(t.li,{children:"Pagerduty"}),"\n",(0,i.jsxs)(t.li,{children:["CubeAPM - ",(0,i.jsx)(t.a,{href:"https://docs.cubeapm.com/",children:"CubeAPM"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsx)(t.li,{children:"CubeAPM is an Application Performance Monitoring (APM) platform. It collects telemetry data from applications and infrastructure, and provides a UI for users to visualize and query the data. It also provides the ability to set up alerts based on the telemetry data, and sending notifications to users over various channels like Email, Slack, PagerDuty, Google Chat, etc."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(t.h2,{id:"flask",children:"Flask"}),"\n",(0,i.jsxs)(t.p,{children:["Please note that errors and transactions will only be sent to the APM Server if your app isnotin ",(0,i.jsx)(t.a,{href:"http://flask.pocoo.org/docs/0.12/quickstart/#debug-mode",children:"debug mode"}),"."]}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.a,{href:"https://www.elastic.co/guide/en/apm/agent/python/current/flask-support.html",children:"https://www.elastic.co/guide/en/apm/agent/python/current/flask-support.html"})}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.a,{href:"https://toptechtips.github.io/2019-07-08-add_python_code_to_apm",children:"https://toptechtips.github.io/2019-07-08-add_python_code_to_apm"})}),"\n",(0,i.jsx)(t.h2,{id:"opensearch",children:"OpenSearch"}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.a,{href:"https://github.com/opensearch-project/OpenSearch",children:"https://github.com/opensearch-project/OpenSearch"})}),"\n",(0,i.jsx)(t.h3,{id:"elasticsearch-vs-amazon-opensearch",children:"Elasticsearch vs Amazon OpenSearch"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsx)(t.li,{children:(0,i.jsx)(t.a,{href:"https://www.elastic.co/amazon-opensearch-service",children:"Amazon OpenSearch vs. Elasticsearch | Elastic"})}),"\n",(0,i.jsx)(t.li,{children:(0,i.jsx)(t.a,{href:"https://www.elastic.co/blog/elasticsearch-opensearch-performance-gap",children:"Elasticsearch vs. OpenSearch: Performance and resource utilization analysis | Elastic Blog"})}),"\n"]})]})}function d(e={}){const{wrapper:t}={...(0,s.a)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(h,{...e})}):h(e)}},38074:(e,t,n)=>{n.d(t,{Z:()=>i});const i=n.p+"assets/images/Technologies-Elasticsearch-Others-image1-1eeb8cc166748a0fdfc8a5a1797509d8.jpg"},511151:(e,t,n)=>{n.d(t,{Z:()=>l,a:()=>r});var i=n(667294);const s={},a=i.createContext(s);function r(e){const t=i.useContext(a);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function l(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:r(e.components),i.createElement(a.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/dd5e46bd.e679168f.js b/assets/js/dd5e46bd.e679168f.js deleted file mode 100644 index 700e612d0d1..00000000000 --- a/assets/js/dd5e46bd.e679168f.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[90341],{518104:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>o,contentTitle:()=>r,default:()=>d,frontMatter:()=>a,metadata:()=>l,toc:()=>c});var s=n(785893),i=n(511151);const a={},r="Others",l={id:"technologies/elasticsearch/others",title:"Others",description:"Heartbeat",source:"@site/docs/technologies/elasticsearch/others.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/others",permalink:"/technologies/elasticsearch/others",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/others.md",tags:[],version:"current",lastUpdatedAt:1725480022,formattedLastUpdatedAt:"Sep 4, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Internal Working",permalink:"/technologies/elasticsearch/internal-working"},next:{title:"Git",permalink:"/technologies/git/"}},o={},c=[{value:"Heartbeat",id:"heartbeat",level:2},{value:"FluentBit",id:"fluentbit",level:2},{value:"Fluentd",id:"fluentd",level:2},{value:"Splunk",id:"splunk",level:2},{value:"Eland",id:"eland",level:2},{value:"Application Performance Monitoring (APM)",id:"application-performance-monitoring-apm",level:2},{value:"Others",id:"others-1",level:3},{value:"Flask",id:"flask",level:2},{value:"Opensearch",id:"opensearch",level:2}];function h(e){const t={a:"a",em:"em",h1:"h1",h2:"h2",h3:"h3",img:"img",li:"li",p:"p",strong:"strong",ul:"ul",...(0,i.a)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(t.h1,{id:"others",children:"Others"}),"\n",(0,s.jsx)(t.h2,{id:"heartbeat",children:"Heartbeat"}),"\n",(0,s.jsxs)(t.p,{children:["Heartbeat is a lightweight daemon that you install on a remote server to periodically check the status of your services and determine whether they are available. Unlike ",(0,s.jsx)(t.a,{href:"https://www.elastic.co/guide/en/beats/metricbeat/7.1/index.html",children:"Metricbeat"}),", which only tells you if your servers are up or down, Heartbeat tells you whether your services are reachable."]}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.a,{href:"https://www.elastic.co/guide/en/beats/heartbeat/current/heartbeat-overview.html",children:"https://www.elastic.co/guide/en/beats/heartbeat/current/heartbeat-overview.html"})}),"\n",(0,s.jsx)(t.h2,{id:"fluentbit",children:"FluentBit"}),"\n",(0,s.jsxs)(t.p,{children:["Fluent Bit is an open source and multi-platformLog Processor and Forwarderwhich allows you to collect data/logs from different sources, unify and send them to multiple destinations. It's fully compatible with Docker and ",(0,s.jsx)(t.a,{href:"https://fluentbit.io/kubernetes/",children:"Kubernetes"})," environments."]}),"\n",(0,s.jsx)(t.p,{children:"Fluent Bit is written inC, have a pluggable architecture supporting around 30 extensions. It's fast and lightweight and provide the required security for network operations through TLS."}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.a,{href:"https://fluentbit.io",children:"https://fluentbit.io"})}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.a,{href:"https://github.com/fluent/fluent-bit",children:"https://github.com/fluent/fluent-bit"})}),"\n",(0,s.jsx)(t.h2,{id:"fluentd",children:"Fluentd"}),"\n",(0,s.jsx)(t.p,{children:"Fluentd is an open source data collector for unified logging layer."}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsx)(t.li,{children:(0,s.jsx)(t.strong,{children:"Unified Logging with JSON"})}),"\n"]}),"\n",(0,s.jsxs)(t.p,{children:["Fluentd tries to structure data as JSON as much as possible: this allows Fluentd tounifyall facets of processing log data: collecting, filtering, buffering, and outputting logs acrossmultiple sources and destinations(",(0,s.jsx)(t.a,{href:"http://www.fluentd.org/blog/unified-logging-layer",children:"Unified Logging Layer"}),"). The downstream data processing is much easier with JSON, since it has enough structure to be accessible while retaining flexible schemas."]}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsx)(t.li,{children:(0,s.jsx)(t.strong,{children:"Pluggable Architecture"})}),"\n"]}),"\n",(0,s.jsxs)(t.p,{children:["Fluentd has a flexible plugin system that allows the community to extend its functionality. Our 500+ community-contributed plugins connect dozens of ",(0,s.jsx)(t.a,{href:"https://www.fluentd.org/datasources",children:"data sources"})," and ",(0,s.jsx)(t.a,{href:"https://www.fluentd.org/dataoutputs",children:"data outputs"}),". By leveraging the plugins, you can start making better use of your logs right away."]}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsx)(t.li,{children:(0,s.jsx)(t.strong,{children:"Minimum Resources Required"})}),"\n"]}),"\n",(0,s.jsxs)(t.p,{children:["Fluentd is written in a combination of C language and Ruby, and requires very little system resource. The vanilla instance runs on 30-40MB of memory and can process 13,000 events/second/core. If you have tighter memory requirements (-450kb), check out ",(0,s.jsx)(t.a,{href:"http://fluentbit.io/",children:"Fluent Bit"}),", the lightweight forwarder for Fluentd."]}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsx)(t.li,{children:(0,s.jsx)(t.strong,{children:"Built-in Reliability"})}),"\n"]}),"\n",(0,s.jsxs)(t.p,{children:["Fluentd supports memory- and file-based buffering to prevent inter-node data loss. Fluentd also supports robust failover and can be set up for high availability.",(0,s.jsx)(t.a,{href:"https://www.fluentd.org/testimonials",children:"2,000+ data-driven companies"})," rely on Fluentd to differentiate their products and services through a better use and understanding of their log data."]}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.img,{alt:"image",src:n(38074).Z+"",width:"892",height:"560"})}),"\n",(0,s.jsxs)(t.p,{children:["An event consists of ",(0,s.jsx)(t.em,{children:"tag"}),", ",(0,s.jsx)(t.em,{children:"time"})," and",(0,s.jsx)(t.em,{children:"record"}),". Tag is a string separated with '.' (e.g. myapp.access). It is used to categorize events. Time is a UNIX time recorded at occurrence of an event. Record is a JSON object."]}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.a,{href:"https://www.fluentd.org",children:"https://www.fluentd.org"})}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.a,{href:"https://github.com/fluent/fluentd",children:"https://github.com/fluent/fluentd"})}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.a,{href:"https://www.youtube.com/watch?v=Gp0-7oVOtPw&ab_channel=ThatDevOpsGuy",children:"https://www.youtube.com/watch?v=Gp0-7oVOtPw&ab_channel=ThatDevOpsGuy"})}),"\n",(0,s.jsx)(t.h2,{id:"splunk",children:"Splunk"}),"\n",(0,s.jsx)(t.p,{children:"Splunk is a software technology which is used for monitoring, searching, analyzing and visualizing the machine generated data in real time. It can monitor and read different type of log files and stores data as events in indexers. This tool allows you to visualize data in various forms of dashboards."}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.a,{href:"https://www.guru99.com/splunk-tutorial.html",children:"https://www.guru99.com/splunk-tutorial.html"})}),"\n",(0,s.jsx)(t.h2,{id:"eland",children:"Eland"}),"\n",(0,s.jsx)(t.p,{children:"Eland is a Python Elasticsearch client for exploring and analyzing data residing in Elasticsearch with a familiar Pandas-compatible API."}),"\n",(0,s.jsx)(t.p,{children:"Where possible the package uses existing Python APIs and data structures to make it easy to switch between numpy, pandas, scikit-learn to their Elasticsearch powered equivalents. In general, the data resides in Elasticsearch and not in memory, which allows Eland to access large datasets stored in Elasticsearch."}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.a,{href:"https://towardsdatascience.com/elasticsearch-for-data-science-just-got-way-easier-95912d724636",children:"https://towardsdatascience.com/elasticsearch-for-data-science-just-got-way-easier-95912d724636"})}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.a,{href:"https://github.com/elastic/eland",children:"https://github.com/elastic/eland"})}),"\n",(0,s.jsx)(t.h2,{id:"application-performance-monitoring-apm",children:"Application Performance Monitoring (APM)"}),"\n",(0,s.jsx)(t.p,{children:"Application Performance Monitoring (APM) collects in-depth performance metrics and errors from inside your application. It allows you to monitor the performance of thousands of applications in real time."}),"\n",(0,s.jsx)(t.h3,{id:"others-1",children:"Others"}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsx)(t.li,{children:"Dynatrace"}),"\n",(0,s.jsx)(t.li,{children:"Newrelic"}),"\n",(0,s.jsx)(t.li,{children:"Elasticsearch APM / Elastic APM"}),"\n",(0,s.jsx)(t.li,{children:"Pingdom"}),"\n",(0,s.jsx)(t.li,{children:"Pagerduty"}),"\n",(0,s.jsxs)(t.li,{children:["CubeAPM - ",(0,s.jsx)(t.a,{href:"https://docs.cubeapm.com/",children:"CubeAPM"}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsx)(t.li,{children:"CubeAPM is an Application Performance Monitoring (APM) platform. It collects telemetry data from applications and infrastructure, and provides a UI for users to visualize and query the data. It also provides the ability to set up alerts based on the telemetry data, and sending notifications to users over various channels like Email, Slack, PagerDuty, Google Chat, etc."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(t.h2,{id:"flask",children:"Flask"}),"\n",(0,s.jsxs)(t.p,{children:["Please note that errors and transactions will only be sent to the APM Server if your app isnotin ",(0,s.jsx)(t.a,{href:"http://flask.pocoo.org/docs/0.12/quickstart/#debug-mode",children:"debug mode"}),"."]}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.a,{href:"https://www.elastic.co/guide/en/apm/agent/python/current/flask-support.html",children:"https://www.elastic.co/guide/en/apm/agent/python/current/flask-support.html"})}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.a,{href:"https://toptechtips.github.io/2019-07-08-add_python_code_to_apm",children:"https://toptechtips.github.io/2019-07-08-add_python_code_to_apm"})}),"\n",(0,s.jsx)(t.h2,{id:"opensearch",children:"Opensearch"}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.a,{href:"https://github.com/opensearch-project/OpenSearch",children:"https://github.com/opensearch-project/OpenSearch"})})]})}function d(e={}){const{wrapper:t}={...(0,i.a)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(h,{...e})}):h(e)}},38074:(e,t,n)=>{n.d(t,{Z:()=>s});const s=n.p+"assets/images/Technologies-Elasticsearch-Others-image1-1eeb8cc166748a0fdfc8a5a1797509d8.jpg"},511151:(e,t,n)=>{n.d(t,{Z:()=>l,a:()=>r});var s=n(667294);const i={},a=s.createContext(i);function r(e){const t=s.useContext(a);return s.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function l(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:r(e.components),s.createElement(a.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/faa94ee9.3224843d.js b/assets/js/faa94ee9.3224843d.js new file mode 100644 index 00000000000..79814625b03 --- /dev/null +++ b/assets/js/faa94ee9.3224843d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[57404],{269437:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>c,contentTitle:()=>r,default:()=>o,frontMatter:()=>t,metadata:()=>a,toc:()=>h});var i=s(785893),l=s(511151);const t={},r="ElastAlert",a={id:"technologies/elasticsearch/elastalert",title:"ElastAlert",description:"ElastAlert is a simple framework for alerting on anomalies, spikes, or other patterns of interest from data in Elasticsearch.",source:"@site/docs/technologies/elasticsearch/elastalert.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/elastalert",permalink:"/technologies/elasticsearch/elastalert",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/elastalert.md",tags:[],version:"current",lastUpdatedAt:1732901510,formattedLastUpdatedAt:"Nov 29, 2024",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Commands",permalink:"/technologies/elasticsearch/commands"},next:{title:"Elasticsearch: The Definitive Guide",permalink:"/technologies/elasticsearch/elasticsearch-the-definitive-guide"}},c={},h=[{value:"Rule Types",id:"rule-types",level:2},{value:"Types",id:"types",level:2},{value:"Common Configuration Example",id:"common-configuration-example",level:2},{value:"1. Required settings",id:"1-required-settings",level:3},{value:"2. Optional settings",id:"2-optional-settings",level:3},{value:"Example",id:"example",level:2},{value:"References",id:"references",level:2},{value:"Other Plugins",id:"other-plugins",level:2}];function d(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,l.a)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"elastalert",children:"ElastAlert"}),"\n",(0,i.jsx)(n.p,{children:"ElastAlert is a simple framework for alerting on anomalies, spikes, or other patterns of interest from data in Elasticsearch."}),"\n",(0,i.jsx)(n.p,{children:"It works by combining Elasticsearch with two types of components, rule types and alerts. Elasticsearch is periodically queried and the data is passed to the rule type, which determines when a match is found. When a match occurs, it is given to one or more alerts, which take action based on the match."}),"\n",(0,i.jsx)(n.p,{children:"This is configured by a set of rules, each of which defines a query, a rule type, and a set of alerts."}),"\n",(0,i.jsx)(n.p,{children:"Several rule types with common monitoring paradigms are included with ElastAlert:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:'"Match where there are X events in Y time" (frequencytype)'}),"\n",(0,i.jsx)(n.li,{children:'"Match when the rate of events increases or decreases" (spiketype)'}),"\n",(0,i.jsx)(n.li,{children:'"Match when there are less than X events in Y time" (flatlinetype)'}),"\n",(0,i.jsx)(n.li,{children:'"Match when a certain field matches a blacklist/whitelist" (blacklistandwhitelisttype)'}),"\n",(0,i.jsx)(n.li,{children:'"Match on any event matching a given filter" (anytype)'}),"\n",(0,i.jsx)(n.li,{children:'"Match when a field has two different values within some time" (changetype)'}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"In addition to this basic usage, there are many other features that make alerts more useful:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Alerts link to Kibana dashboards"}),"\n",(0,i.jsx)(n.li,{children:"Aggregate counts for arbitrary fields"}),"\n",(0,i.jsx)(n.li,{children:"Combine alerts into periodic reports"}),"\n",(0,i.jsx)(n.li,{children:"Separate alerts by using a unique key field"}),"\n",(0,i.jsx)(n.li,{children:"Intercept and enhance match data"}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"rule-types",children:"Rule Types"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"'flatline' -- when there are less than X events in Y time"}),"\n",(0,i.jsx)(n.li,{children:"'blacklist/whitelist' -- when a certain field matches 'blacklist' or 'whitelist'"}),"\n",(0,i.jsx)(n.li,{children:"'any' -- when an event that matches a given filter happens"}),"\n",(0,i.jsx)(n.li,{children:"'change' -- when a field has two different values within a specified period of time"}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"types",children:"Types"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsx)(n.li,{children:"spike"}),"\n",(0,i.jsx)(n.li,{children:"frequency"}),"\n",(0,i.jsx)(n.li,{children:"flatline"}),"\n",(0,i.jsx)(n.li,{children:"new_term"}),"\n",(0,i.jsx)(n.li,{children:"change"}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"common-configuration-example",children:"Common Configuration Example"}),"\n",(0,i.jsx)(n.h3,{id:"1-required-settings",children:"1. Required settings"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"es_host"}),"\n",(0,i.jsx)(n.li,{children:"es_port"}),"\n",(0,i.jsx)(n.li,{children:"index"}),"\n",(0,i.jsx)(n.li,{children:"name"}),"\n",(0,i.jsx)(n.li,{children:"type"}),"\n",(0,i.jsx)(n.li,{children:"alert"}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"2-optional-settings",children:"2. Optional settings"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"import"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"use_ssl"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"verify_certs"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"client_cert"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"client_key"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"ca_certs"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"es_username"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"es_password"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"es_url_prefix"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"es_send_get_body_as"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"use_strftime_index"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"search_extra_index"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"aggregation"})}),"\n",(0,i.jsx)(n.p,{children:"aggregation:\nschedule: '2 4 ** mon, fri'"}),"\n",(0,i.jsx)(n.p,{children:"aggregation:\nhours: 2"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"aggregate_by_match_time"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"realert"})}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"exponential_realert"})}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"buffer_time"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"query_delay"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"owner"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"priority"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"category"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"max_query_size"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"filter"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"include"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"top_count_keys"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"top_count_number"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"raw_count_keys"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"description"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"generate_kibana_link"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"kibana_url"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"use_kibana_dashboard"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"use_kibana4_dashboard"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"kibana4_start_timedelta"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"kibana4_end_timedelta"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"use_local_time"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"match_enhancements"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"run_enhancements_first"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"query_key"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"aggregation_key"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"summary_table_fields"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"timestamp_type"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"timestamp_format"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"timestamp_format_expr"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"_source_enabled"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"scan_entire_timeframe"}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://elastalert.readthedocs.io/en/latest/ruletypes.html#common-configuration-options",children:"https://elastalert.readthedocs.io/en/latest/ruletypes.html#common-configuration-options"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://elastalert.readthedocs.io/en/latest/ruletypes.html",children:"https://elastalert.readthedocs.io/en/latest/ruletypes.html"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://elastalert.readthedocs.io/en/latest/ruletypes.html#rule-types",children:"https://elastalert.readthedocs.io/en/latest/ruletypes.html#rule-types"})}),"\n",(0,i.jsx)(n.h2,{id:"example",children:"Example"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-yaml",children:'deadman_slack: |-\n ---\n name: Deadman Switch Slack\n type: frequency\n index: containers-*\n num_events: 3\n timeframe:\n minutes: 3\n filter:\n - term:\n message: "deadmanslack"\n alert:\n - "slack"\n slack:\n slack_webhook_url: dummy\n\ndeadman_pagerduty: |-\n ---\n name: Deadman Switch PagerDuty\n type: frequency\n index: containers-*\n num_events: 3\n timeframe:\n minutes: 3\n filter:\n - term:\n message: "deadmanpd"\n alert:\n - "pagerduty"\n pagerduty:\n pagerduty_service_key: dummy\n pagerduty_client_name: Elastalert Deadman Switch\n'})}),"\n",(0,i.jsx)(n.h2,{id:"references",children:"References"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://elastalert.readthedocs.io/en/latest/index.html",children:"https://elastalert.readthedocs.io/en/latest/index.html"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://engineeringblog.yelp.com/2015/10/elastalert-alerting-at-scale-with-elasticsearch.html",children:"https://engineeringblog.yelp.com/2015/10/elastalert-alerting-at-scale-with-elasticsearch.html"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/bitsensor/elastalert",children:"https://github.com/bitsensor/elastalert"})}),"\n",(0,i.jsx)(n.h2,{id:"other-plugins",children:"Other Plugins"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sivasamyk/logtrail",children:"https://github.com/sivasamyk/logtrail"})})]})}function o(e={}){const{wrapper:n}={...(0,l.a)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},511151:(e,n,s)=>{s.d(n,{Z:()=>a,a:()=>r});var i=s(667294);const l={},t=i.createContext(l);function r(e){const n=i.useContext(t);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(l):e.components||l:r(e.components),i.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/faa94ee9.e95f89da.js b/assets/js/faa94ee9.e95f89da.js deleted file mode 100644 index 94d7fb48dda..00000000000 --- a/assets/js/faa94ee9.e95f89da.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[57404],{269437:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>c,contentTitle:()=>r,default:()=>o,frontMatter:()=>t,metadata:()=>a,toc:()=>h});var i=s(785893),l=s(511151);const t={},r="ElastAlert",a={id:"technologies/elasticsearch/elastalert",title:"ElastAlert",description:"ElastAlert is a simple framework for alerting on anomalies, spikes, or other patterns of interest from data in Elasticsearch.",source:"@site/docs/technologies/elasticsearch/elastalert.md",sourceDirName:"technologies/elasticsearch",slug:"/technologies/elasticsearch/elastalert",permalink:"/technologies/elasticsearch/elastalert",draft:!1,unlisted:!1,editUrl:"https://github.com/deepaksood619/deepaksood619.github.io/tree/master/docs/technologies/elasticsearch/elastalert.md",tags:[],version:"current",lastUpdatedAt:1701793554,formattedLastUpdatedAt:"Dec 5, 2023",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Commands",permalink:"/technologies/elasticsearch/commands"},next:{title:"Elasticsearch: The Definitive Guide",permalink:"/technologies/elasticsearch/elasticsearch-the-definitive-guide"}},c={},h=[{value:"Rule Types",id:"rule-types",level:2},{value:"Types",id:"types",level:2},{value:"Common Configuration Example",id:"common-configuration-example",level:2},{value:"Example",id:"example",level:2},{value:"References",id:"references",level:2},{value:"Other Plugins",id:"other-plugins",level:2}];function d(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,l.a)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"elastalert",children:"ElastAlert"}),"\n",(0,i.jsx)(n.p,{children:"ElastAlert is a simple framework for alerting on anomalies, spikes, or other patterns of interest from data in Elasticsearch."}),"\n",(0,i.jsx)(n.p,{children:"It works by combining Elasticsearch with two types of components, rule types and alerts. Elasticsearch is periodically queried and the data is passed to the rule type, which determines when a match is found. When a match occurs, it is given to one or more alerts, which take action based on the match."}),"\n",(0,i.jsx)(n.p,{children:"This is configured by a set of rules, each of which defines a query, a rule type, and a set of alerts."}),"\n",(0,i.jsx)(n.p,{children:"Several rule types with common monitoring paradigms are included with ElastAlert:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:'"Match where there are X events in Y time" (frequencytype)'}),"\n",(0,i.jsx)(n.li,{children:'"Match when the rate of events increases or decreases" (spiketype)'}),"\n",(0,i.jsx)(n.li,{children:'"Match when there are less than X events in Y time" (flatlinetype)'}),"\n",(0,i.jsx)(n.li,{children:'"Match when a certain field matches a blacklist/whitelist" (blacklistandwhitelisttype)'}),"\n",(0,i.jsx)(n.li,{children:'"Match on any event matching a given filter" (anytype)'}),"\n",(0,i.jsx)(n.li,{children:'"Match when a field has two different values within some time" (changetype)'}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"In addition to this basic usage, there are many other features that make alerts more useful:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Alerts link to Kibana dashboards"}),"\n",(0,i.jsx)(n.li,{children:"Aggregate counts for arbitrary fields"}),"\n",(0,i.jsx)(n.li,{children:"Combine alerts into periodic reports"}),"\n",(0,i.jsx)(n.li,{children:"Separate alerts by using a unique key field"}),"\n",(0,i.jsx)(n.li,{children:"Intercept and enhance match data"}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"rule-types",children:"Rule Types"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"'flatline' -- when there are less than X events in Y time"}),"\n",(0,i.jsx)(n.li,{children:"'blacklist/whitelist' -- when a certain field matches 'blacklist' or 'whitelist'"}),"\n",(0,i.jsx)(n.li,{children:"'any' -- when an event that matches a given filter happens"}),"\n",(0,i.jsx)(n.li,{children:"'change' -- when a field has two different values within a specified period of time"}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"types",children:"Types"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"spike"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"frequency"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"flatline"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"new_term"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"change"}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"common-configuration-example",children:"Common Configuration Example"}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Required settings"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"es_host"}),"\n",(0,i.jsx)(n.li,{children:"es_port"}),"\n",(0,i.jsx)(n.li,{children:"index"}),"\n",(0,i.jsx)(n.li,{children:"name"}),"\n",(0,i.jsx)(n.li,{children:"type"}),"\n",(0,i.jsx)(n.li,{children:"alert"}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Optional settings"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"import"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"use_ssl"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"verify_certs"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"client_cert"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"client_key"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"ca_certs"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"es_username"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"es_password"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"es_url_prefix"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"es_send_get_body_as"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"use_strftime_index"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"search_extra_index"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"aggregation"})}),"\n",(0,i.jsx)(n.p,{children:"aggregation:\nschedule: '2 4 ** mon, fri'"}),"\n",(0,i.jsx)(n.p,{children:"aggregation:\nhours: 2"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"aggregate_by_match_time"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"realert"})}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"exponential_realert"})}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"buffer_time"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"query_delay"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"owner"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"priority"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"category"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"max_query_size"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"filter"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"include"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"top_count_keys"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"top_count_number"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"raw_count_keys"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"description"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"generate_kibana_link"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"kibana_url"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"use_kibana_dashboard"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"use_kibana4_dashboard"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"kibana4_start_timedelta"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"kibana4_end_timedelta"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"use_local_time"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"match_enhancements"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"run_enhancements_first"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"query_key"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"aggregation_key"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"summary_table_fields"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"timestamp_type"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"timestamp_format"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"timestamp_format_expr"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"_source_enabled"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"scan_entire_timeframe"}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://elastalert.readthedocs.io/en/latest/ruletypes.html#common-configuration-options",children:"https://elastalert.readthedocs.io/en/latest/ruletypes.html#common-configuration-options"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://elastalert.readthedocs.io/en/latest/ruletypes.html",children:"https://elastalert.readthedocs.io/en/latest/ruletypes.html"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://elastalert.readthedocs.io/en/latest/ruletypes.html#rule-types",children:"https://elastalert.readthedocs.io/en/latest/ruletypes.html#rule-types"})}),"\n",(0,i.jsx)(n.h2,{id:"example",children:"Example"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-yaml",children:'deadman_slack: |-\n ---\n name: Deadman Switch Slack\n type: frequency\n index: containers-*\n num_events: 3\n timeframe:\n minutes: 3\n filter:\n - term:\n message: "deadmanslack"\n alert:\n - "slack"\n slack:\n slack_webhook_url: dummy\n\ndeadman_pagerduty: |-\n ---\n name: Deadman Switch PagerDuty\n type: frequency\n index: containers-*\n num_events: 3\n timeframe:\n minutes: 3\n filter:\n - term:\n message: "deadmanpd"\n alert:\n - "pagerduty"\n pagerduty:\n pagerduty_service_key: dummy\n pagerduty_client_name: Elastalert Deadman Switch\n'})}),"\n",(0,i.jsx)(n.h2,{id:"references",children:"References"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://elastalert.readthedocs.io/en/latest/index.html",children:"https://elastalert.readthedocs.io/en/latest/index.html"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://engineeringblog.yelp.com/2015/10/elastalert-alerting-at-scale-with-elasticsearch.html",children:"https://engineeringblog.yelp.com/2015/10/elastalert-alerting-at-scale-with-elasticsearch.html"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/bitsensor/elastalert",children:"https://github.com/bitsensor/elastalert"})}),"\n",(0,i.jsx)(n.h2,{id:"other-plugins",children:"Other Plugins"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sivasamyk/logtrail",children:"https://github.com/sivasamyk/logtrail"})})]})}function o(e={}){const{wrapper:n}={...(0,l.a)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},511151:(e,n,s)=>{s.d(n,{Z:()=>a,a:()=>r});var i=s(667294);const l={},t=i.createContext(l);function r(e){const n=i.useContext(t);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(l):e.components||l:r(e.components),i.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/main.ee0daca1.js b/assets/js/main.e625ea3c.js similarity index 99% rename from assets/js/main.ee0daca1.js rename to assets/js/main.e625ea3c.js index b6abdb7bad3..fa716b2de13 100644 --- a/assets/js/main.ee0daca1.js +++ b/assets/js/main.e625ea3c.js @@ -1,2 +1,2 @@ -/*! For license information please see main.ee0daca1.js.LICENSE.txt */ -(self.webpackChunkdeep_notes=self.webpackChunkdeep_notes||[]).push([[40179],{520830:(e,t,a)=>{"use strict";a.d(t,{W:()=>i});var o=a(667294);function i(){return o.createElement("svg",{width:"20",height:"20",className:"DocSearch-Search-Icon",viewBox:"0 0 20 20"},o.createElement("path",{d:"M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}},150997:(e,t,a)=>{"use strict";a.d(t,{Z:()=>p});a(667294);var o=a(268356),i=a.n(o),n=a(916887);const s={"00246c2b":[()=>a.e(73560).then(a.bind(a,950690)),"@site/docs/algorithms/general/types-of-algorithms.md",950690],"00a4f16c":[()=>a.e(78360).then(a.bind(a,145387)),"@site/docs/databases/modeling/data-modeling.md",145387],"00a4f587":[()=>a.e(4497).then(a.bind(a,577996)),"@site/docs/databases/nosql-databases/snowflake/readme.md",577996],"00a89dc5":[()=>a.e(79742).then(a.bind(a,706601)),"@site/docs/book-summaries/readme.md",706601],"00b11237":[()=>a.e(66022).then(a.bind(a,408251)),"@site/docs/courses/udemy-python-for-data-structures-algorithms.md",408251],"012ce6d6":[()=>a.e(57662).then(a.bind(a,551427)),"@site/docs/book-summaries/the-art-of-impossible.md",551427],"0137b2da":[()=>a.e(26620).then(a.bind(a,442013)),"@site/docs/databases/sql-databases/mysql/mydumper.md",442013],"01633d5b":[()=>a.e(5054).then(a.bind(a,840391)),"@site/docs/devops/kubernetes/kubectl-commands.md",840391],"0169b7f9":[()=>a.e(29049).then(a.bind(a,427374)),"@site/docs/knowledge/others/politics/readme.md",427374],"018f8a0a":[()=>a.e(69064).then(a.bind(a,362009)),"@site/docs/technologies/apache/airflow/dags-example.md",362009],"01c6a346":[()=>a.e(9493).then(a.bind(a,618836)),"@site/docs/computer-science/general/others.md",618836],"01c90d64":[()=>a.e(25515).then(a.bind(a,657850)),"@site/docs/data-structures/general/ds-intro.md",657850],"01db70dd":[()=>a.e(61995).then(a.bind(a,963303)),"@site/docs/languages/php/operators.md",963303],"0200c62d":[()=>a.e(57911).then(a.bind(a,346453)),"@site/docs/economics/market-terms/ipo.md",346453],"0245a609":[()=>a.e(5366).then(a.bind(a,580334)),"@site/docs/frontend/others/readme.md",580334],"0248dcd6":[()=>a.e(59010).then(a.bind(a,483688)),"@site/docs/about-me/projects/91-stashfin-aiml-use-cases.md",483688],"02583471":[()=>a.e(23211).then(a.bind(a,540329)),"@site/docs/computer-science/testing/load-performance-testing-qa-tools.md",540329],"02740628":[()=>a.e(33477).then(a.bind(a,533488)),"@site/docs/frontend/html-css/component-libraries/components.md",533488],"029762d2":[()=>a.e(21355).then(a.bind(a,564285)),"@site/docs/decentralized-applications/defi-apps.md",564285],"029b0f87":[()=>a.e(42567).then(a.bind(a,388828)),"@site/docs/algorithms/bit-manipulation/readme.md",388828],"029e8c7c":[()=>a.e(93724).then(a.bind(a,932901)),"@site/docs/economics/insurance.md",932901],"02ae3f7a":[()=>a.e(67213).then(a.bind(a,993593)),"@site/docs/economics/finance-investing/personal-finance.md",993593],"034026c2":[()=>a.e(96920).then(a.bind(a,403935)),"@site/docs/mathematics/general/godel-incompleteness-theorem.md",403935],"038434ff":[()=>a.e(55427).then(a.bind(a,329934)),"@site/docs/mathematics/probability/monte-carlo-simulation.md",329934],"03e48adc":[()=>a.e(77152).then(a.bind(a,922427)),"@site/docs/book-summaries/getting-things-done.md",922427],"03f1e2a1":[()=>a.e(85174).then(a.bind(a,642641)),"@site/docs/languages/sql/dql-data-query-language/aggregation-queries.md",642641],"03f44e6f":[()=>a.e(38012).then(a.bind(a,913869)),"@site/docs/decentralized-applications/readme.md",913869],"03f63f45":[()=>a.e(37370).then(a.bind(a,887852)),"@site/docs/technologies/apache/apache-spark/09-dataframe.md",887852],"040ce4b5":[()=>a.e(5285).then(a.bind(a,105713)),"@site/docs/data-structures/hashtable/readme.md",105713],"045b60aa":[()=>a.e(12493).then(a.bind(a,682604)),"@site/docs/algorithms/graphtheory/connected-components.md",682604],"0474ee3b":[()=>a.e(3588).then(a.bind(a,227007)),"@site/docs/psychology/biases-fallacies.md",227007],"0489700b":[()=>a.e(90379).then(a.bind(a,11470)),"@site/docs/about-me/ideas/creating-a-business-startup.md",11470],"048d1033":[()=>a.e(1226).then(a.bind(a,574679)),"@site/docs/knowledge/biology/nutrition/daily-requirements.md",574679],"049293cc":[()=>a.e(70683).then(a.bind(a,457480)),"@site/docs/about-me/projects/88-stashfin-security-iam-apis.md",457480],"04b0ce37":[()=>a.e(24394).then(a.bind(a,216540)),"@site/docs/book-summaries/first-things-first.md",216540],"04bd0f74":[()=>a.e(68563).then(a.bind(a,511087)),"@site/docs/cloud/aws/security-identity-compliance/intro.md",511087],"04c89a00":[()=>a.e(98052).then(a.bind(a,332962)),"@site/docs/technologies/apache/apache-spark/05-spark-built-in-libraries.md",332962],"0540228a":[()=>a.e(38789).then(a.bind(a,760795)),"@site/docs/ai/ml-fundamentals/questions.md",760795],"054b736d":[()=>a.e(87683).then(a.bind(a,82651)),"@site/docs/databases/sql-databases/memsql/intro.md",82651],"054d6054":[()=>a.e(64520).then(a.bind(a,674860)),"@site/docs/databases/nosql-databases/redis/intro.md",674860],"0564d0fe":[()=>a.e(93112).then(a.bind(a,983490)),"@site/docs/mathematics/calculus/functions.md",983490],"05741343":[()=>a.e(15433).then(a.bind(a,139831)),"@site/docs/devops/terraform/variables.md",139831],"05bc84ed":[()=>a.e(90426).then(a.bind(a,543688)),"@site/docs/devops/terminal-bash/others.md",543688],"05d071d0":[()=>a.e(32183).then(a.bind(a,358436)),"@site/docs/ai/computer-vision-cv/pre-trained-models.md",358436],"05d5673d":[()=>a.e(2509).then(a.bind(a,61457)),"@site/docs/databases/concepts/isolation-levels.md",61457],"0603f34d":[()=>a.e(34650).then(a.bind(a,875670)),"@site/docs/technologies/git/commands.md",875670],"0612685b":[()=>a.e(82026).then(a.bind(a,296814)),"@site/docs/economics/mutual-funds/mutual-funds-indicators.md",296814],"062881be":[()=>a.e(97236).then(a.bind(a,39775)),"@site/docs/ai/data-visualization/tableau/readme.md",39775],"0643e68f":[()=>a.e(94670).then(a.bind(a,182868)),"@site/docs/ai/ml-algorithms/predictive-analytics-1.md",182868],"06646404":[()=>a.e(94299).then(a.bind(a,792825)),"@site/docs/knowledge/others/chemistry-outline.md",792825],"068cc598":[()=>a.e(39154).then(a.bind(a,568437)),"@site/docs/languages/sql/operators-wildcards.md",568437],"0690b701":[()=>a.e(76213).then(a.bind(a,555274)),"@site/docs/about-me/projects/60-data-engineering-case-studies.md",555274],"06ebcba0":[()=>a.e(14864).then(a.bind(a,536994)),"@site/docs/devops/docker/concepts.md",536994],"06ecff80":[()=>a.e(71556).then(a.bind(a,601879)),"@site/docs/databases/sql-databases/mysql/backup-comparisons.md",601879],"06f0a454":[()=>a.e(64205).then(a.bind(a,658922)),"@site/docs/databases/concepts/database-workloads.md",658922],"07226051":[()=>a.e(85321).then(a.bind(a,831689)),"@site/docs/databases/nosql-databases/aws-dynamodb/cheatsheet.md",831689],"073e3611":[()=>a.e(99646).then(a.bind(a,620004)),"@site/docs/databases/sql-databases/aws-aurora/costs.md",620004],"07416ae4":[()=>a.e(55492).then(a.bind(a,890946)),"@site/docs/algorithms/graphtheory/shortest-path-algorithms.md",890946],"075ab94f":[()=>a.e(79089).then(a.bind(a,116392)),"@site/docs/computer-science/programming-paradigms/behavioral-publisher-subscriber.md",116392],"077f3cef":[()=>a.e(77409).then(a.bind(a,859266)),"@site/docs/book-summaries/the-art-of-logic.md",859266],"07d06166":[()=>a.e(9919).then(a.bind(a,26513)),"@site/docs/decentralized-applications/coins-tokens-chains/dual-token-economy.md",26513],"07d82dbc":[()=>a.e(44810).then(a.bind(a,149700)),"@site/docs/networking/others/data-formats.md",149700],"07db4258":[()=>a.e(56104).then(a.bind(a,223992)),"@site/docs/knowledge/biology/nutrition/essentiality.md",223992],"080381f4":[()=>a.e(45736).then(a.bind(a,821838)),"@site/docs/devops/terminal-bash/tmux-iterm.md",821838],"080cc125":[()=>a.e(65513).then(a.bind(a,264810)),"@site/docs/decentralized-applications/ethereum/readme.md",264810],"08198449":[()=>a.e(65484).then(a.bind(a,704894)),"@site/docs/devops/devops-intro/disaster-recovery.md",704894],"08345d18":[()=>a.e(32456).then(a.bind(a,277336)),"@site/docs/languages/c++/io.md",277336],"0861dca6":[()=>a.e(66966).then(a.bind(a,977462)),"@site/docs/technologies/elasticsearch/full-text-searches.md",977462],"0865b594":[()=>a.e(65478).then(a.bind(a,474497)),"@site/docs/languages/sql/concepts.md",474497],"08a7d22e":[()=>a.e(26904).then(a.bind(a,818767)),"@site/docs/computer-science/software-engineering/refactoring.md",818767],"08aac5f9":[()=>a.e(88594).then(a.bind(a,148176)),"@site/docs/languages/java/jvm-architecture.md",148176],"08ae1380":[()=>a.e(16460).then(a.bind(a,428554)),"@site/docs/databases/sql-databases/mysql/replication.md",428554],"08ccac6c":[()=>a.e(90056).then(a.bind(a,528362)),"@site/docs/languages/c++/templates.md",528362],"09016020":[()=>a.e(6116).then(a.bind(a,633957)),"@site/docs/frontend/frontend-intro/jamstack-cms.md",633957],"0921ff2c":[()=>a.e(10066).then(a.bind(a,969462)),"@site/docs/mathematics/probability/intro-to-probability/unit-1-solved-problems.md",969462],"0954c702":[()=>a.e(32342).then(a.bind(a,821652)),"@site/docs/economics/mental-models/macroeconomics.md",821652],"09d73d6e":[()=>a.e(90814).then(a.bind(a,263782)),"@site/docs/devops/kubernetes/workloads/controllers.md",263782],"0a30b654":[()=>a.e(77856).then(a.bind(a,222384)),"@site/docs/about-me/projects/54-airflow-kafka-migration.md",222384],"0a5a4ce7":[()=>a.e(53398).then(a.bind(a,175687)),"@site/docs/about-me/projects/56-freecharge-cost-optimization-dba.md",175687],"0a61ed70":[()=>a.e(77813).then(a.bind(a,866909)),"@site/docs/computer-science/programming-paradigms/types-of-programming-paradigm.md",866909],"0a842d34":[()=>a.e(57273).then(a.bind(a,369100)),"@site/docs/devops/docker/dockerfiles.md",369100],"0a8c53fa":[()=>a.e(17939).then(a.bind(a,17407)),"@site/docs/knowledge/biology/nutrition/diet.md",17407],"0acd47bf":[()=>a.e(96355).then(a.bind(a,712270)),"@site/docs/technologies/kafka/kafka-topic-replication.md",712270],"0ae8a01c":[()=>a.e(83270).then(a.bind(a,42445)),"@site/docs/decentralized-applications/coins-tokens-chains/vechain.md",42445],"0aeaeef8":[()=>a.e(39627).then(a.bind(a,176469)),"@site/docs/computer-science/general/newsletter-learning-resources.md",176469],"0b1c9b76":[()=>a.e(1986).then(a.bind(a,28747)),"@site/docs/ai/ml-algorithms/bagging-and-random-forest.md",28747],"0b32b0f7":[()=>a.e(36100).then(a.bind(a,271133)),"@site/docs/ai/nlp/nlp-concepts.md",271133],"0b34267b":[()=>a.e(84116).then(a.bind(a,334787)),"@site/docs/psychology/procrastination.md",334787],"0b625f40":[()=>a.e(24263).then(a.bind(a,185058)),"@site/docs/python/python-intro/modules.md",185058],"0b722dc4":[()=>a.e(97372).then(a.bind(a,376103)),"@site/docs/psychology/mental-models.md",376103],"0b978544":[()=>a.e(56684).then(a.bind(a,466384)),"@site/docs/economics/mutual-funds/debt-mutual-funds-risks.md",466384],"0b9826ce":[()=>a.e(985).then(a.bind(a,605749)),"@site/docs/python/advanced/idiomatic-python.md",605749],"0bfd955e":[()=>a.e(92826).then(a.bind(a,667517)),"@site/docs/databases/nosql-databases/redis/redis-data-types.md",667517],"0c2840d1":[()=>a.e(80236).then(a.bind(a,97533)),"@site/docs/technologies/apache/apache-spark/08-examples.md",97533],"0c3daaae":[()=>a.e(22272).then(a.bind(a,363452)),"@site/docs/decentralized-applications/coins-tokens-chains/usdc.md",363452],"0c499054":[()=>a.e(85926).then(a.bind(a,921759)),"@site/docs/knowledge/geography/india.md",921759],"0c4b7169":[()=>a.e(5755).then(a.bind(a,944615)),"@site/docs/devops/monitoring/prometheus/readme.md",944615],"0c61cea7":[()=>a.e(90765).then(a.bind(a,236305)),"@site/docs/networking/mqtt/keep-alive-and-client-take-over.md",236305],"0c704c36":[()=>a.e(37082).then(a.bind(a,388946)),"@site/docs/devops/kubernetes/services-loadbalancing-and-networking/readme.md",388946],"0c7acc68":[()=>a.e(66186).then(a.bind(a,723836)),"@site/docs/algorithms/complex-systems/others.md",723836],"0c9d02fe":[()=>a.e(56808).then(a.bind(a,185367)),"@site/docs/computer-science/security/authentication/jwt.md",185367],"0ccc84b5":[()=>a.e(44991).then(a.bind(a,29560)),"@site/docs/networking/others/grpc/concepts.md",29560],"0ccf41bf":[()=>a.e(90434).then(a.bind(a,897098)),"@site/docs/languages/others/erlang.md",897098],"0d3c0070":[()=>a.e(21501).then(a.bind(a,158689)),"@site/docs/algorithms/advanced-algorithms/intractability.md",158689],"0d521873":[()=>a.e(68558).then(a.bind(a,213493)),"@site/docs/devops/terminal-bash/manual-pages.md",213493],"0d525aa3":[()=>a.e(41694).then(a.bind(a,896627)),"@site/docs/knowledge/geography/continents.md",896627],"0d9d3494":[()=>a.e(45884).then(a.bind(a,408048)),"@site/docs/algorithms/advanced-algorithms/reductions.md",408048],"0db8b851":[()=>a.e(32827).then(a.bind(a,692083)),"@site/docs/algorithms/general/n-queens-problem.md",692083],"0dc1f3a2":[()=>a.e(85142).then(a.bind(a,44232)),"@site/docs/algorithms/graphtheory/problems.md",44232],"0de398b6":[()=>a.e(58178).then(a.bind(a,207307)),"@site/docs/book-summaries/the-power-of-concentration.md",207307],"0dfbe3f3":[()=>a.e(1713).then(a.bind(a,515825)),"@site/docs/computer-science/operating-system/memory-mapping-mmap.md",515825],"0e010849":[()=>a.e(8767).then(a.bind(a,606405)),"@site/docs/python/advanced/python-tricks.md",606405],"0e331fec":[()=>a.e(41350).then(a.bind(a,296840)),"@site/docs/algorithms/complex-systems/game-theory.md",296840],"0e594834":[()=>a.e(81864).then(a.bind(a,370261)),"@site/docs/mathematics/probability/intro-to-probability/unit-2-solved-problems.md",370261],"0ea104c7":[()=>a.e(14524).then(a.bind(a,371079)),"@site/docs/languages/c++/constructor.md",371079],"0ed2eb25":[()=>a.e(44823).then(a.bind(a,916694)),"@site/docs/mathematics/algebra/exponential-and-logarithms.md",916694],"0ed431d8":[()=>a.e(39210).then(a.bind(a,60153)),"@site/docs/python/documentation/14-file-formats.md",60153],"0eeb9ce0":[()=>a.e(49845).then(a.bind(a,109525)),"@site/docs/databases/sql-databases/mysql/percona-toolkit.md",109525],"0ef485e9":[()=>a.e(57696).then(a.bind(a,868595)),"@site/docs/data-structures/linear-data-structure/linked-list.md",868595],"0ef8cc44":[()=>a.e(5847).then(a.bind(a,711305)),"@site/docs/devops/monitoring/istio/traffic-management.md",711305],"0efbe8e3":[()=>a.e(53633).then(a.bind(a,679603)),"@site/docs/python/django/django-template-language.md",679603],"0f138cf2":[()=>a.e(54235).then(a.bind(a,882941)),"@site/docs/databases/nosql-databases/mongodb/read-write-concern.md",882941],"0f3f8c67":[()=>a.e(19640).then(a.bind(a,635503)),"@site/docs/economics/schools-of-economic-thought.md",635503],"0f48cc5b":[()=>a.e(89289).then(a.bind(a,498184)),"@site/docs/ai/ml-algorithms/classification.md",498184],"0f55f8dc":[()=>a.e(69820).then(a.bind(a,714277)),"@site/docs/knowledge/applied-sciences/others-power-energy.md",714277],"0f689700":[()=>a.e(78872).then(a.bind(a,989263)),"@site/docs/knowledge/quotes-proverbs/life.md",989263],"0fd4d98e":[()=>a.e(66643).then(a.bind(a,847012)),"@site/docs/computer-science/programming-concepts/type-systems.md",847012],"0fd541ce":[()=>a.e(35052).then(a.bind(a,786685)),"@site/docs/data-structures/graph/intro.md",786685],"1005d6aa":[()=>a.e(60131).then(a.bind(a,162210)),"@site/docs/python/python-intro/basic.md",162210],"10158bbf":[()=>a.e(73794).then(a.bind(a,449619)),"@site/docs/book-summaries/collaborative-intelligence.md",449619],"102285ea":[()=>a.e(98863).then(a.bind(a,47728)),"@site/docs/python/documentation/27-development-tools/static-code-analysis.md",47728],"1024c794":[()=>a.e(54957).then(a.bind(a,756172)),"@site/docs/frontend/react/events.md",756172],"10261e2d":[()=>a.e(4079).then(a.bind(a,724342)),"@site/docs/book-summaries/essentialism.md",724342],"102fbe3d":[()=>a.e(88978).then(a.bind(a,462033)),"@site/docs/python/python-intro/data-structure/dictionary.md",462033],"10364e7b":[()=>a.e(78096).then(a.bind(a,602620)),"@site/docs/ai/ml-algorithms/linear-discriminant-analysis-lda.md",602620],"103a15c0":[()=>a.e(91595).then(a.bind(a,810856)),"@site/docs/networking/networking-concepts/ip.md",810856],"10534bd0":[()=>a.e(56991).then(a.bind(a,567723)),"@site/docs/about-me/social-links.md",567723],"1054ba41":[()=>a.e(16952).then(a.bind(a,937642)),"@site/docs/book-summaries/everyday-millionaires.md",937642],"1067e0f0":[()=>a.e(89717).then(a.bind(a,177005)),"@site/docs/ai/hackathons.md",177005],"1099dffa":[()=>a.e(90391).then(a.bind(a,50576)),"@site/docs/mathematics/statistics/crosstab.md",50576],"10b4b1d6":[()=>a.e(36649).then(a.bind(a,154510)),"@site/docs/cloud/others/gcp-bigquery-big-query.md",154510],"10b4b8f5":[()=>a.e(62264).then(a.bind(a,807515)),"@site/docs/networking/protocols/protocols-intro.md",807515],"1113e1e7":[()=>a.e(69895).then(a.bind(a,450375)),"@site/docs/economics/corporate-finance/capital-budgeting.md",450375],"11374c19":[()=>a.e(86326).then(a.bind(a,592636)),"@site/docs/databases/data-warehousing/06-architecture.md",592636],"116a89b0":[()=>a.e(49402).then(a.bind(a,359794)),"@site/docs/python/python-intro/functions.md",359794],"1172ad66":[()=>a.e(23619).then(a.bind(a,670657)),"@site/docs/computer-science/software-engineering/technical-debt.md",670657],"118c44e3":[()=>a.e(14454).then(a.bind(a,524471)),"@site/docs/mathematics/algebra/series.md",524471],"119221c9":[()=>a.e(6644).then(a.bind(a,533064)),"@site/docs/knowledge/quotes-proverbs/funny.md",533064],"11abf2e1":[()=>a.e(2149).then(a.bind(a,152820)),"@site/docs/computer-science/testing/intro.md",152820],"11b44738":[()=>a.e(27697).then(a.bind(a,472206)),"@site/docs/frontend/react/course.md",472206],"11d98abd":[()=>a.e(64069).then(a.bind(a,799836)),"@site/docs/ai/ml-algorithms/ensemble-algorithms.md",799836],"11dd323e":[()=>a.e(22486).then(a.bind(a,985171)),"@site/docs/ai/model-evaluation/confusion-matrix.md",985171],"11ef038a":[()=>a.e(44748).then(a.bind(a,62564)),"@site/docs/devops/terminal-bash/networking-tools.md",62564],"1204d379":[()=>a.e(5750).then(a.bind(a,92558)),"@site/docs/algorithms/searching-sorting/intro.md",92558],"1209d090":[()=>a.e(49934).then(a.bind(a,522658)),"@site/docs/book-summaries/the-science-of-selling.md",522658],"121757be":[()=>a.e(12751).then(a.bind(a,531706)),"@site/docs/devops/kubernetes/storage.md",531706],"124f85f1":[()=>a.e(48018).then(a.bind(a,734401)),"@site/docs/algorithms/graphtheory/longest-path-in-edge-weighted-dags.md",734401],"126193e0":[()=>a.e(24417).then(a.bind(a,405161)),"@site/docs/about-me/projects/59-data-engineering-product-pitch-iot-industry.md",405161],"1269fc40":[()=>a.e(79610).then(a.bind(a,667976)),"@site/docs/technologies/kafka/kafka-commands.md",667976],"12a41b4e":[()=>a.e(36657).then(a.bind(a,110785)),"@site/docs/cloud/others/cdn-content-delivery-network.md",110785],"12bdc9f9":[()=>a.e(33536).then(a.bind(a,551707)),"@site/docs/about-me/ideas/society.md",551707],"12dfd47f":[()=>a.e(43794).then(a.bind(a,664827)),"@site/docs/psychology/habits.md",664827],"12e02773":[()=>a.e(76294).then(a.bind(a,358482)),"@site/docs/technologies/brokers/emqtt/conf.md",358482],"130a794c":[()=>a.e(83399).then(a.bind(a,524231)),"@site/docs/cloud/others/firebase/fcm-notifications.md",524231],"130d985c":[()=>a.e(39146).then(a.bind(a,445185)),"@site/docs/databases/nosql-databases/time-series-db/time-series-databases.md",445185],"131082eb":[()=>a.e(99375).then(a.bind(a,526882)),"@site/docs/networking/networking-concepts/book-computer-networks.md",526882],"1316f388":[()=>a.e(68474).then(a.bind(a,831690)),"@site/docs/devops/monitoring/istio/tasks.md",831690],"131fe40f":[()=>a.e(20871).then(a.bind(a,549865)),"@site/docs/psychology/learning/exams.md",549865],"132b7ebc":[()=>a.e(44938).then(a.bind(a,458793)),"@site/docs/ai/social-media-analytics-solution.md",458793],"135d4a02":[()=>a.e(58470).then(a.bind(a,172985)),"@site/docs/knowledge/biology/exercise-stretching/home-gym.md",172985],13649079:[()=>a.e(51815).then(a.bind(a,468169)),"@site/docs/data-structures/others/readme.md",468169],"138140e4":[()=>a.e(36936).then(a.bind(a,234576)),"@site/docs/algorithms/readme.md",234576],"13b0b1b5":[()=>a.e(85249).then(a.bind(a,468157)),"@site/docs/ai/ml-algorithms/artificial-neural-networks.md",468157],"13b1bb88":[()=>a.e(98571).then(a.bind(a,526679)),"@site/docs/devops/terminal-bash/readme.md",526679],"13b84e18":[()=>a.e(90192).then(a.bind(a,28034)),"@site/docs/databases/nosql-databases/cassandra/drivers-clients.md",28034],"13c35aed":[()=>a.e(78198).then(a.bind(a,916766)),"@site/docs/networking/networking-concepts/addressing-methods-cast-protocols.md",916766],"13e2ce3f":[()=>a.e(1718).then(a.bind(a,769333)),"@site/docs/devops/terminal-bash/tools/editors.md",769333],"13fafd0d":[()=>a.e(20582).then(a.bind(a,108370)),"@site/docs/technologies/apache/apache-spark/01-terms.md",108370],"142bd56b":[()=>a.e(5376).then(a.bind(a,803063)),"@site/docs/languages/sql/databricks-sql-functions.md",803063],"145f36fe":[()=>a.e(1661).then(a.bind(a,24810)),"@site/docs/economics/accounting-for-finance/4-cash-flow-statements-cash-in-and-cash-out.md",24810],"14828fb4":[()=>a.e(66151).then(a.bind(a,358479)),"@site/docs/book-summaries/economics-for-the-common-good.md",358479],"148fc95c":[()=>a.e(77477).then(a.bind(a,737159)),"@site/docs/technologies/databricks/04-workflow.md",737159],"1496256a":[()=>a.e(35480).then(a.bind(a,804729)),"@site/docs/databases/sql-databases/mysql/others.md",804729],"1497bf5e":[()=>a.e(17086).then(a.bind(a,246956)),"@site/docs/languages/php/codeigniter/readme.md",246956],"14c6567d":[()=>a.e(77429).then(a.bind(a,824030)),"@site/docs/python/django/models.md",824030],"14cfb7b8":[()=>a.e(73350).then(a.bind(a,812989)),"@site/docs/databases/nosql-databases/druid/commands.md",812989],"14e43a2d":[()=>a.e(37236).then(a.bind(a,309149)),"@site/docs/python/advanced/faster-python.md",309149],"151f7230":[()=>a.e(33339).then(a.bind(a,735660)),"@site/docs/devops/monitoring/prometheus/intro.md",735660],"154fc4fa":[()=>a.e(54369).then(a.bind(a,673591)),"@site/docs/networking/others/apache-parquet.md",673591],"157dfbee":[()=>a.e(99888).then(a.bind(a,470185)),"@site/docs/computer-science/distributed-system/fallacies-and-problems.md",470185],"158c9660":[()=>a.e(84946).then(a.bind(a,131550)),"@site/docs/technologies/kafka/kafka-streams.md",131550],15930473:[()=>a.e(73017).then(a.bind(a,196982)),"@site/docs/mathematics/probability/binomial-random-variables.md",196982],"15c9daa0":[()=>a.e(70413).then(a.bind(a,640097)),"@site/docs/mathematics/calculus/intro.md",640097],"15d4cfa6":[()=>a.e(21921).then(a.bind(a,804972)),"@site/docs/about-me/ideas/thoughts-future-ideas-vision-prediction.md",804972],"15fa0023":[()=>a.e(79408).then(a.bind(a,606787)),"@site/docs/cloud/aws/security-identity-compliance/compliance-mcqs.md",606787],"161b8223":[()=>a.e(71364).then(a.bind(a,925461)),"@site/docs/courses/course-big-data-computing-nptel.md",925461],"162d8c3e":[()=>a.e(97944).then(a.bind(a,565852)),"@site/docs/databases/sql-databases/normalization.md",565852],16413436:[()=>a.e(60790).then(a.bind(a,555162)),"@site/docs/technologies/brokers/emqtt/commands.md",555162],16750310:[()=>a.e(87813).then(a.bind(a,751160)),"@site/docs/decentralized-applications/ethereum/05-accounts.md",751160],"1699c2dc":[()=>a.e(60639).then(a.bind(a,52383)),"@site/docs/mathematics/probability/intro-to-probability/unit-3-solved-problems.md",52383],"169a8095":[()=>a.e(2496).then(a.bind(a,795539)),"@site/docs/economics/readme.md",795539],"169c0b99":[()=>a.e(93254).then(a.bind(a,304166)),"@site/docs/technologies/brokers/emqtt/readme.md",304166],"16a0583a":[()=>a.e(98524).then(a.bind(a,625697)),"@site/docs/computer-science/operating-system/readme.md",625697],"16abeab2":[()=>a.e(19871).then(a.bind(a,150836)),"@site/docs/book-summaries/get-it.md",150836],"16b0fab9":[()=>a.e(78203).then(a.bind(a,134166)),"@site/docs/frontend/react/mordern-react-with-redux.md",134166],"16e2e4ac":[()=>a.e(27898).then(a.bind(a,184591)),"@site/docs/algorithms/data-compression/lzw-compression.md",184591],"16f78860":[()=>a.e(92251).then(a.bind(a,836312)),"@site/docs/ai/llm/tools.md",836312],"170d6ecc":[()=>a.e(68565).then(a.bind(a,359484)),"@site/docs/economics/finance-investing/checklist-tips.md",359484],"173c3caf":[()=>a.e(44954).then(a.bind(a,559660)),"@site/docs/technologies/apache/airflow/readme.md",559660],"174ccf67":[()=>a.e(1595).then(a.bind(a,975090)),"@site/docs/knowledge/others/climate-change.md",975090],"177e2cd7":[()=>a.e(56451).then(a.bind(a,499245)),"@site/docs/devops/kubernetes/optimizations.md",499245],"1785c723":[()=>a.e(6489).then(a.bind(a,219432)),"@site/docs/mathematics/combinatorics/permutation-and-combination.md",219432],17896441:[()=>Promise.all([a.e(40532),a.e(27918)]).then(a.bind(a,745075)),"@theme/DocItem",745075],"17a90828":[()=>a.e(18323).then(a.bind(a,208310)),"@site/docs/about-me/projects/53-mozark-cloud-cost-optimization.md",208310],"17ba178b":[()=>a.e(42212).then(a.bind(a,435657)),"@site/docs/databases/nosql-databases/mongodb/vector-search.md",435657],"17bd72e6":[()=>a.e(90663).then(a.bind(a,320252)),"@site/docs/knowledge/links.md",320252],"17c949bc":[()=>a.e(98829).then(a.bind(a,373230)),"@site/docs/technologies/apache/airflow/commands-configs.md",373230],"17d69319":[()=>a.e(49991).then(a.bind(a,633192)),"@site/docs/cloud/aws/cli-commands.md",633192],"180280e3":[()=>a.e(39804).then(a.bind(a,658802)),"@site/docs/python/documentation/30-python-runtime-services.md",658802],"181a5635":[()=>a.e(57641).then(a.bind(a,562660)),"@site/docs/networking/others/falcor.md",562660],"18284cd8":[()=>a.e(3764).then(a.bind(a,727710)),"@site/docs/computer-science/system-design/message-oriented-architecture-mom.md",727710],"184bfa45":[()=>a.e(67976).then(a.bind(a,624948)),"@site/docs/frontend/frontend-intro/gestalt-principles.md",624948],"184c543f":[()=>a.e(34389).then(a.bind(a,606138)),"@site/docs/technologies/apache/apache-hadoop/hadoop-mapreduce-1.0.md",606138],"1856a177":[()=>a.e(42479).then(a.bind(a,597076)),"@site/docs/book-summaries/thinking-in-systems.md",597076],"18747ace":[()=>a.e(7651).then(a.bind(a,14215)),"@site/docs/technologies/databricks/40-databricks-commands.md",14215],"1881215c":[()=>a.e(88840).then(a.bind(a,223482)),"@site/docs/book-summaries/hyperfocus.md",223482],"1892d6b8":[()=>a.e(56261).then(a.bind(a,939144)),"@site/docs/computer-science/security/cryptography/intro.md",939144],"1908e7e7":[()=>a.e(29462).then(a.bind(a,554333)),"@site/docs/languages/sql/ddl-data-definition-language/readme.md",554333],19146500:[()=>a.e(50749).then(a.bind(a,516865)),"@site/docs/cloud/aws/storage/amazon-efs.md",516865],"191cf0e7":[()=>a.e(6906).then(a.bind(a,846192)),"@site/docs/databases/nosql-databases/clickhouse.md",846192],"193b3e37":[()=>a.e(30805).then(a.bind(a,554010)),"@site/docs/management/people-management/onboarding.md",554010],"194201e4":[()=>a.e(14943).then(a.bind(a,210100)),"@site/docs/ai/ml-algorithms/association-rules-and-apriori-algorithm.md",210100],"19443d4d":[()=>a.e(98065).then(a.bind(a,971149)),"@site/docs/computer-science/security/tools.md",971149],"194c2f4c":[()=>a.e(2116).then(a.bind(a,960035)),"@site/docs/computer-science/system-design/microservice-architecture/example.md",960035],"19672f2f":[()=>a.e(10194).then(a.bind(a,762758)),"@site/docs/ai/data-science/datasets.md",762758],"196bb5ec":[()=>a.e(40327).then(a.bind(a,969057)),"@site/docs/economics/finance-investing/asset-classes.md",969057],"198add4d":[()=>a.e(75774).then(a.bind(a,42431)),"@site/docs/computer-science/operating-system/concepts.md",42431],"19ac3e2e":[()=>a.e(97282).then(a.bind(a,983159)),"@site/docs/python/advanced/memory-management.md",983159],"19d04ae9":[()=>a.e(74083).then(a.bind(a,196582)),"@site/docs/economics/buy-now-pay-later-bnpl.md",196582],"19da1e45":[()=>a.e(49178).then(a.bind(a,867545)),"@site/docs/devops/devops-intro/dora-metrics.md",867545],"19eca3f5":[()=>a.e(57659).then(a.bind(a,542081)),"@site/docs/technologies/kafka/security.md",542081],"1a049388":[()=>a.e(26349).then(a.bind(a,871599)),"@site/docs/data-structures/linear-data-structure/skip-lists.md",871599],"1a054eba":[()=>a.e(10251).then(a.bind(a,775397)),"@site/docs/technologies/apache/others.md",775397],"1a12c606":[()=>a.e(55997).then(a.bind(a,422621)),"@site/docs/data-structures/hashtable/bloom-filters.md",422621],"1a193a4a":[()=>a.e(82439).then(a.bind(a,137682)),"@site/docs/networking/mqtt/readme.md",137682],"1a48f858":[()=>a.e(83687).then(a.bind(a,325081)),"@site/docs/courses/365-ds-mathematics.md",325081],"1a4e3797":[()=>Promise.all([a.e(40532),a.e(97920)]).then(a.bind(a,427988)),"@theme/SearchPage",427988],"1a72d4a7":[()=>a.e(10111).then(a.bind(a,983351)),"@site/docs/devops/servers/nginx/configs.md",983351],"1a927310":[()=>a.e(31259).then(a.bind(a,872630)),"@site/docs/ai/ml-algorithms/predictive-analytics-2.md",872630],"1ac21221":[()=>a.e(72462).then(a.bind(a,212451)),"@site/docs/algorithms/algorithmic-complexity/np-hardness.md",212451],"1adc99cb":[()=>a.e(91288).then(a.bind(a,431261)),"@site/docs/computer-science/programming-paradigms/architectural-mvvm.md",431261],"1afa563f":[()=>a.e(55579).then(a.bind(a,278692)),"@site/docs/python/advanced/mixin.md",278692],"1b3aa864":[()=>a.e(71432).then(a.bind(a,422892)),"@site/docs/networking/others/file-formats-comparisons.md",422892],"1ba203f0":[()=>a.e(26006).then(a.bind(a,846989)),"@site/docs/algorithms/searching-sorting/key-indexed-counting.md",846989],"1c34ca96":[()=>a.e(46489).then(a.bind(a,109069)),"@site/docs/computer-science/programming-paradigms/readme.md",109069],"1c570340":[()=>a.e(96654).then(a.bind(a,180118)),"@site/docs/python/django/optimizations.md",180118],"1c6463b1":[()=>a.e(57261).then(a.bind(a,502689)),"@site/docs/knowledge/others/readme.md",502689],"1c669c13":[()=>a.e(42057).then(a.bind(a,213213)),"@site/docs/book-summaries/how-to-live-a-good-life.md",213213],"1c9988df":[()=>a.e(81426).then(a.bind(a,749099)),"@site/docs/technologies/kafka/migration-mirroring-replication.md",749099],"1d087d82":[()=>a.e(24074).then(a.bind(a,534067)),"@site/docs/computer-science/others/gamification.md",534067],"1d25919a":[()=>a.e(17930).then(a.bind(a,797498)),"@site/docs/databases/nosql-databases/snowflake/governance.md",797498],"1d49488c":[()=>a.e(3095).then(a.bind(a,617931)),"@site/docs/databases/sql-databases/mysql/scaling-optimizations.md",617931],"1d64937f":[()=>a.e(16992).then(a.bind(a,205624)),"@site/docs/computer-science/distributed-system/vocabulary.md",205624],"1d89c0ed":[()=>a.e(47502).then(a.bind(a,747443)),"@site/docs/languages/sql/stored-procedure.md",747443],"1da58117":[()=>a.e(65580).then(a.bind(a,873740)),"@site/docs/devops/kubernetes/kubernetes-manifests-examples.md",873740],"1dacfa0f":[()=>a.e(51434).then(a.bind(a,904169)),"@site/docs/devops/ides/jupyter-jupyterlab-notebook/tools.md",904169],"1db86714":[()=>a.e(32074).then(a.bind(a,249914)),"@site/docs/networking/protocols/dns-domain-name-system.md",249914],"1dcc8cb2":[()=>a.e(96679).then(a.bind(a,147899)),"@site/docs/python/others/requests.md",147899],"1df49c17":[()=>a.e(53836).then(a.bind(a,647305)),"@site/docs/management/people-management/leadership-interview-questions.md",647305],"1e07dbed":[()=>a.e(88534).then(a.bind(a,506036)),"@site/docs/networking/protocols/openapi.md",506036],"1e1261dd":[()=>a.e(98987).then(a.bind(a,271915)),"@site/docs/mathematics/probability/intro-to-probability/13.-conditional-expectation-and-variance-revisited.md",271915],"1e12822b":[()=>a.e(60315).then(a.bind(a,167890)),"@site/docs/psychology/emotions.md",167890],"1e331232":[()=>a.e(43519).then(a.bind(a,125612)),"@site/docs/knowledge/others/politics/indian-polity.md",125612],"1e3b3278":[()=>a.e(68050).then(a.bind(a,554218)),"@site/docs/mathematics/geometry/geometry-foundations.md",554218],"1e48e2cb":[()=>a.e(39472).then(a.bind(a,700987)),"@site/docs/decentralized-applications/crypto-investing.md",700987],"1eee0485":[()=>a.e(68056).then(a.bind(a,963294)),"@site/docs/knowledge/biology/readme.md",963294],"1efb63af":[()=>a.e(83356).then(a.bind(a,19477)),"@site/docs/computer-science/programming-paradigms/structural-facade.md",19477],"1f027fd7":[()=>a.e(47424).then(a.bind(a,689498)),"@site/docs/data-structures/graph/implementation.md",689498],"1f229bcd":[()=>a.e(63480).then(a.bind(a,877898)),"@site/docs/data-structures/general/elementary-symbol-tables.md",877898],"1f265408":[()=>a.e(55626).then(a.bind(a,774653)),"@site/docs/knowledge/geography/home-house-building.md",774653],"1f4bbcd7":[()=>a.e(39333).then(a.bind(a,999016)),"@site/docs/ai/libraries/jax.md",999016],"1fe7f50b":[()=>a.e(98784).then(a.bind(a,407518)),"@site/docs/data-structures/others/lsm-log-structured-merge-trees.md",407518],"201b2175":[()=>a.e(34199).then(a.bind(a,981383)),"@site/docs/book-summaries/power-relationships.md",981383],"206d022b":[()=>a.e(37036).then(a.bind(a,460389)),"@site/docs/technologies/brokers/emqtt/deployment-and-installation.md",460389],"2091e18a":[()=>a.e(83972).then(a.bind(a,847981)),"@site/docs/ai/deep-learning/components.md",847981],"20ac03e4":[()=>a.e(18635).then(a.bind(a,480993)),"@site/docs/about-me/experience.md",480993],"20ccab99":[()=>a.e(46965).then(a.bind(a,536828)),"@site/docs/technologies/kafka/monitoring.md",536828],"211bfddf":[()=>a.e(42887).then(a.bind(a,794451)),"@site/docs/networking/networking-concepts/tcp-ip.md",794451],21882343:[()=>a.e(76896).then(a.bind(a,134721)),"@site/docs/economics/market-terms/technical-indicators.md",134721],"21c2ca6a":[()=>a.e(68108).then(a.bind(a,922121)),"@site/docs/databases/sql-databases/mysql/readme.md",922121],"21cba6fc":[()=>a.e(89780).then(a.bind(a,857095)),"@site/docs/knowledge/history/others.md",857095],"221faef4":[()=>a.e(5948).then(a.bind(a,186646)),"@site/docs/mathematics/probability/intro-to-probability/10-conditioning-on-a-random-variable-independence-bayes-rule.md",186646],"22467e0d":[()=>a.e(99126).then(a.bind(a,886926)),"@site/docs/knowledge/applied-sciences/crash-course-engineering.md",886926],"2276ee59":[()=>a.e(45547).then(a.bind(a,59086)),"@site/docs/networking/protocols/zeromq-distributed-messaging.md",59086],"22772cd6":[()=>a.e(92771).then(a.bind(a,228572)),"@site/docs/knowledge/applied-sciences/civil-engineering.md",228572],"227bce91":[()=>a.e(26694).then(a.bind(a,95462)),"@site/docs/ai/libraries/tensorflow/readme.md",95462],"22aba0eb":[()=>a.e(2004).then(a.bind(a,712447)),"@site/docs/data-structures/hashtable/hyperloglog.md",712447],"22ae394b":[()=>a.e(38154).then(a.bind(a,840783)),"@site/docs/computer-science/readme.md",840783],"22b9046f":[()=>a.e(92916).then(a.bind(a,141277)),"@site/docs/computer-science/operating-system/dram.md",141277],"22dd76ad":[()=>a.e(66733).then(a.bind(a,475989)),"@site/docs/ai/move-37/3-monte-carlo-methods.md",475989],"22f5a590":[()=>a.e(27411).then(a.bind(a,776213)),"@site/docs/mathematics/combinatorics/conditional-probability.md",776213],"2306bdfe":[()=>a.e(22856).then(a.bind(a,676029)),"@site/docs/devops/ides/spyder.md",676029],23172033:[()=>a.e(6408).then(a.bind(a,121384)),"@site/docs/algorithms/graphtheory/graph-search.md",121384],"231ae45b":[()=>a.e(16287).then(a.bind(a,262598)),"@site/docs/frontend/js-javascript/basic.md",262598],"231af617":[()=>a.e(79185).then(a.bind(a,103055)),"@site/docs/computer-science/interview-question/others.md",103055],"2323dda5":[()=>a.e(31602).then(a.bind(a,140941)),"@site/docs/knowledge/geography/new-home-place-house.md",140941],"232e2d62":[()=>a.e(55398).then(a.bind(a,129830)),"@site/docs/decentralized-applications/coins-tokens-chains/near-protocol.md",129830],"23316ec3":[()=>a.e(34430).then(a.bind(a,906658)),"@site/docs/management/product-management/readme.md",906658],23379225:[()=>a.e(16455).then(a.bind(a,921892)),"@site/docs/psychology/paradox.md",921892],"2348a8ab":[()=>a.e(41719).then(a.bind(a,659916)),"@site/docs/psychology/criticism.md",659916],23615888:[()=>a.e(88357).then(a.bind(a,5496)),"@site/docs/computer-science/operating-system/parallel-processing.md",5496],"2377f312":[()=>a.e(85481).then(a.bind(a,535085)),"@site/docs/ai/libraries/aws-sagemaker.md",535085],"238538ee":[()=>a.e(61874).then(a.bind(a,629839)),"@site/docs/algorithms/general/algo-ds.md",629839],"239aabfa":[()=>a.e(57035).then(a.bind(a,991831)),"@site/docs/devops/devops-intro/platform-engineering.md",991831],"23ab3c77":[()=>a.e(94873).then(a.bind(a,846036)),"@site/docs/frontend/others/angularjs/10-directives.md",846036],"23c527d9":[()=>a.e(78378).then(a.bind(a,556217)),"@site/docs/devops/monitoring/istio/architecture.md",556217],"23c9efb8":[()=>a.e(44904).then(a.bind(a,659989)),"@site/docs/cloud/aws/storage/amazon-s3.md",659989],"24065e8a":[()=>a.e(33686).then(a.bind(a,216966)),"@site/docs/networking/others/grpc/guides.md",216966],"241c9435":[()=>a.e(60948).then(a.bind(a,957476)),"@site/docs/frontend/frontend-intro/web-vitals.md",957476],"24620b17":[()=>a.e(86434).then(a.bind(a,633063)),"@site/docs/databases/nosql-databases/cassandra/data-model.md",633063],"246451f9":[()=>a.e(90484).then(a.bind(a,899474)),"@site/docs/frontend/others/angularjs/06-components.md",899474],"24660e8f":[()=>a.e(76433).then(a.bind(a,337535)),"@site/docs/python/documentation/09-numeric-and-mathematical-modules.md",337535],"24993cee":[()=>a.e(86890).then(a.bind(a,191270)),"@site/docs/mathematics/calculus/precalculus-intro.md",191270],"24a2253c":[()=>a.e(54329).then(a.bind(a,406826)),"@site/docs/management/product-management/intro.md",406826],"24e7cbbc":[()=>a.e(13613).then(a.bind(a,599604)),"@site/docs/computer-science/software-engineering/code-smell.md",599604],"25139ac3":[()=>a.e(30870).then(a.bind(a,331858)),"@site/docs/algorithms/advanced-algorithms/readme.md",331858],"25470c29":[()=>a.e(67583).then(a.bind(a,393749)),"@site/docs/computer-science/software-engineering/principles.md",393749],"256a88e8":[()=>a.e(60192).then(a.bind(a,938537)),"@site/docs/algorithms/graphtheory/dijkstra-algorithm.md",938537],"2590a0cd":[()=>a.e(79309).then(a.bind(a,250248)),"@site/docs/book-summaries/7-powers-the-foundations-of-business-strategy.md",250248],"25adf325":[()=>a.e(38477).then(a.bind(a,880761)),"@site/docs/computer-science/security/authentication/openid.md",880761],"25c26a09":[()=>a.e(77893).then(a.bind(a,191271)),"@site/docs/knowledge/games/sudoku-techniques.md",191271],"25f7ae1a":[()=>a.e(43099).then(a.bind(a,513018)),"@site/docs/languages/sql/sql-commands.md",513018],"25fedef6":[()=>a.e(3287).then(a.bind(a,337964)),"@site/docs/book-summaries/think-again.md",337964],"260608b8":[()=>a.e(71069).then(a.bind(a,965941)),"@site/docs/technologies/databricks/20-delta-live-tables.md",965941],"262b550c":[()=>a.e(38629).then(a.bind(a,57630)),"@site/docs/algorithms/data-compression/intro.md",57630],"265ccf2c":[()=>a.e(65226).then(a.bind(a,842139)),"@site/docs/data-structures/trie/compressed-trie.md",842139],"2676665c":[()=>a.e(38335).then(a.bind(a,559957)),"@site/docs/decentralized-applications/ethereum/10-nodes-and-clients.md",559957],"2685ad44":[()=>a.e(21389).then(a.bind(a,379598)),"@site/docs/cloud/aws/compute/burstable-instances.md",379598],"2685e2db":[()=>a.e(20802).then(a.bind(a,915777)),"@site/docs/python/others/boto-and-boto3/slides.md",915777],"26a118f2":[()=>a.e(38478).then(a.bind(a,10279)),"@site/docs/networking/protocols/http-3-quic.md",10279],"26ff56ec":[()=>a.e(85233).then(a.bind(a,199529)),"@site/docs/mathematics/general/pie.md",199529],"273e421c":[()=>a.e(62788).then(a.bind(a,889220)),"@site/docs/frontend/react/react-admin-templates.md",889220],"2765b192":[()=>a.e(14737).then(a.bind(a,514660)),"@site/docs/economics/fintech-nbfc-banking-terms.md",514660],"278f8fef":[()=>a.e(58949).then(a.bind(a,306411)),"@site/docs/psychology/self-awareness.md",306411],"27c61816":[()=>a.e(52793).then(a.bind(a,679292)),"@site/docs/about-me/projects/64-mlops-case-studies.md",679292],28301584:[()=>a.e(89801).then(a.bind(a,869614)),"@site/docs/algorithms/data-compression/readme.md",869614],28387940:[()=>a.e(72837).then(a.bind(a,658314)),"@site/docs/databases/sql-databases/aws-aurora/aurora-global-databases.md",658314],"283eb3eb":[()=>a.e(11457).then(a.bind(a,489965)),"@site/docs/ai/libraries/mlops-model-deployment.md",489965],"283f369f":[()=>a.e(50454).then(a.bind(a,651955)),"@site/docs/knowledge/biology/digestive-system.md",651955],28780115:[()=>a.e(4163).then(a.bind(a,832971)),"@site/docs/languages/sql/types.md",832971],"288baad3":[()=>a.e(87699).then(a.bind(a,276319)),"@site/docs/economics/mutual-funds/others.md",276319],"28928a60":[()=>a.e(63167).then(a.bind(a,381271)),"@site/docs/knowledge/geography/wildlife.md",381271],"2897878e":[()=>a.e(72787).then(a.bind(a,324313)),"@site/docs/networking/protocols/udp.md",324313],"28c6c2b2":[()=>a.e(22355).then(a.bind(a,79749)),"@site/docs/computer-science/system-design/microservice-architecture/domain-driven-design.md",79749],"28cc848b":[()=>a.e(88386).then(a.bind(a,733442)),"@site/docs/economics/finance-terms.md",733442],"28daf8df":[()=>a.e(55960).then(a.bind(a,240266)),"@site/docs/book-summaries/48-laws-of-power.md",240266],"297e5067":[()=>a.e(8565).then(a.bind(a,284378)),"@site/docs/algorithms/algorithmic-complexity/sub-linear-time.md",284378],"29cee7a7":[()=>a.e(87403).then(a.bind(a,640173)),"@site/docs/ai/data-visualization/tableau/data-model.md",640173],"29d4f6ca":[()=>a.e(54534).then(a.bind(a,331332)),"@site/docs/mathematics/algebra/functions.md",331332],"29d81ebb":[()=>a.e(48416).then(a.bind(a,495e3)),"@site/docs/psychology/trust.md",495e3],"2a026e32":[()=>a.e(13058).then(a.bind(a,406895)),"@site/docs/mathematics/statistics/glossary.md",406895],"2a61139a":[()=>a.e(64681).then(a.bind(a,669663)),"@site/docs/about-me/ideas/startups-ideas-saas.md",669663],"2a64d7a1":[()=>a.e(24684).then(a.bind(a,265894)),"@site/docs/networking/others/vpn-tools.md",265894],"2a71d1ad":[()=>a.e(35228).then(a.bind(a,899079)),"@site/docs/data-structures/hierarchical-data-structure/beap-bi-parental-heap.md",899079],"2a9ff457":[()=>a.e(82982).then(a.bind(a,233466)),"@site/docs/book-summaries/didnt-see-it-coming.md",233466],"2ab4afff":[()=>a.e(66284).then(a.bind(a,925619)),"@site/docs/devops/monitoring/telegraf/readme.md",925619],"2b14d912":[()=>a.e(88628).then(a.bind(a,394872)),"@site/docs/economics/mental-models/marginal-utility-analysis.md",394872],"2b29cb84":[()=>a.e(7177).then(a.bind(a,821829)),"@site/docs/book-summaries/how-to-be-an-adult-in-relationships.md",821829],"2b631cc1":[()=>a.e(26240).then(a.bind(a,50321)),"@site/docs/databases/readme.md",50321],"2b67a51b":[()=>a.e(88077).then(a.bind(a,999162)),"@site/docs/technologies/apache/airflow/astronomer.md",999162],"2b777362":[()=>a.e(768).then(a.bind(a,224340)),"@site/docs/databases/indexing/intro.md",224340],"2b7a012b":[()=>a.e(34486).then(a.bind(a,621363)),"@site/docs/python/python-intro/strings.md",621363],"2b937aae":[()=>a.e(33768).then(a.bind(a,301019)),"@site/docs/python/advanced/python-versions.md",301019],"2b962975":[()=>a.e(62090).then(a.bind(a,943959)),"@site/docs/data-structures/hashtable/dictionaries.md",943959],"2bd019e5":[()=>a.e(22036).then(a.bind(a,605087)),"@site/docs/courses/aws-certified-data-engineer-associate.md",605087],"2bd31289":[()=>a.e(4817).then(a.bind(a,708308)),"@site/docs/python/documentation/06-text-processing-services.md",708308],"2c25fdf8":[()=>a.e(81656).then(a.bind(a,762041)),"@site/docs/frontend/others/nestjs/documentation.md",762041],"2c27aea2":[()=>a.e(76638).then(a.bind(a,645977)),"@site/docs/devops/kubernetes/reference/quality-of-service-qos.md",645977],"2c426963":[()=>a.e(66551).then(a.bind(a,762718)),"@site/docs/devops/kubernetes/troubleshooting.md",762718],"2c47a25f":[()=>a.e(29683).then(a.bind(a,14874)),"@site/docs/databases/nosql-databases/aws-dynamodb/documentation.md",14874],"2c5ca601":[()=>a.e(60477).then(a.bind(a,991012)),"@site/docs/decentralized-applications/development/sample-code.md",991012],"2c5f47b1":[()=>a.e(96739).then(a.bind(a,461235)),"@site/docs/cloud/aws/storage/readme.md",461235],"2c7482a0":[()=>a.e(44926).then(a.bind(a,336291)),"@site/docs/devops/ides/obsidian-in-vscode.md",336291],"2c8df458":[()=>a.e(93951).then(a.bind(a,952074)),"@site/docs/networking/others/rpc.md",952074],"2c8fc4f7":[()=>a.e(54066).then(a.bind(a,203163)),"@site/docs/decentralized-applications/coins-tokens-chains/dai.md",203163],"2cb20e53":[()=>a.e(27647).then(a.bind(a,334304)),"@site/docs/computer-science/security/cryptography/hash-function-design.md",334304],"2cd30be0":[()=>a.e(35932).then(a.bind(a,732079)),"@site/docs/frontend/react/state.md",732079],"2cde5942":[()=>a.e(29814).then(a.bind(a,770732)),"@site/docs/data-structures/hashtable/hashing-techniques.md",770732],"2cf07bbd":[()=>a.e(63611).then(a.bind(a,2533)),"@site/docs/languages/golang/intro.md",2533],"2d3eaa45":[()=>a.e(58188).then(a.bind(a,702064)),"@site/docs/mathematics/probability/readme.md",702064],"2d586d15":[()=>a.e(71711).then(a.bind(a,417222)),"@site/docs/knowledge/general/knowledge-of-humanity.md",417222],"2d6171ba":[()=>a.e(7471).then(a.bind(a,719042)),"@site/docs/python/others/frameworks.md",719042],"2d76d8ae":[()=>a.e(2159).then(a.bind(a,895743)),"@site/docs/about-me/projects/57-careers360-cost-optimization.md",895743],"2d803fa4":[()=>a.e(63524).then(a.bind(a,471936)),"@site/docs/ai/data-science/data-mining.md",471936],"2dc5c25e":[()=>a.e(69156).then(a.bind(a,91161)),"@site/docs/decentralized-applications/intro.md",91161],"2e208f6f":[()=>a.e(84629).then(a.bind(a,933205)),"@site/docs/book-summaries/how-should-we-live.md",933205],"2e27b525":[()=>a.e(60793).then(a.bind(a,230803)),"@site/docs/cloud/aws/analytics/amazon-kinesis.md",230803],"2e29c5e1":[()=>a.e(94516).then(a.bind(a,970773)),"@site/docs/knowledge/games/rubix-rubics-cube.md",970773],"2e3f31df":[()=>a.e(92998).then(a.bind(a,691404)),"@site/docs/about-me/projects/65-problems-in-iot-industry.md",691404],"2e506bc6":[()=>a.e(25211).then(a.bind(a,195552)),"@site/docs/book-summaries/think-and-grow-rich.md",195552],"2e52a386":[()=>a.e(48418).then(a.bind(a,326776)),"@site/docs/algorithms/algorithmic-complexity/computational-complexity-theory.md",326776],"2e637924":[()=>a.e(84217).then(a.bind(a,52929)),"@site/docs/decentralized-applications/crypto-exchanges.md",52929],"2e82f5bf":[()=>a.e(74738).then(a.bind(a,308631)),"@site/docs/courses/course-credit-risk-modeling/syllabus.md",308631],"2e8804e2":[()=>a.e(33278).then(a.bind(a,259417)),"@site/docs/management/product-management/product-design-questions.md",259417],"2e9ceb44":[()=>a.e(49415).then(a.bind(a,13238)),"@site/docs/python/django/other-topics.md",13238],"2eaca85f":[()=>a.e(44959).then(a.bind(a,138716)),"@site/docs/decentralized-applications/ethereum/06-transactions.md",138716],"2eb30c2e":[()=>a.e(74703).then(a.bind(a,350062)),"@site/docs/ai/big-data/page-rank.md",350062],"2ebfc109":[()=>a.e(32900).then(a.bind(a,689215)),"@site/docs/computer-science/system-design/cloud-native.md",689215],"2ecacea5":[()=>a.e(70266).then(a.bind(a,373112)),"@site/docs/computer-science/software-engineering/coding-guidelines-code-reviews-clean-code.md",373112],"2eef41e8":[()=>a.e(27970).then(a.bind(a,820198)),"@site/docs/databases/indexing/inverted-index.md",820198],"2f110c8b":[()=>a.e(1901).then(a.bind(a,827700)),"@site/docs/databases/nosql-databases/druid/paper.md",827700],"2f39924d":[()=>a.e(43842).then(a.bind(a,19420)),"@site/docs/ai/ml-algorithms/others.md",19420],"2f77ab91":[()=>a.e(72038).then(a.bind(a,456982)),"@site/docs/algorithms/data-compression/huffman-compression.md",456982],"2f8497fa":[()=>a.e(20006).then(a.bind(a,739845)),"@site/docs/computer-science/iot/device-management.md",739845],"305ac637":[()=>a.e(22301).then(a.bind(a,420965)),"@site/docs/devops/monitoring/telegraf/commands-and-configs.md",420965],"3077ee94":[()=>a.e(61440).then(a.bind(a,940709)),"@site/docs/devops/docker/readme.md",940709],"3080a9e9":[()=>a.e(77656).then(a.bind(a,306700)),"@site/docs/ai/ml-algorithms/embeddings-and-estimators.md",306700],"3080dc6f":[()=>a.e(50657).then(a.bind(a,477894)),"@site/docs/devops/kubernetes/concepts-and-overview/policies.md",477894],"30a08e99":[()=>a.e(95386).then(a.bind(a,90036)),"@site/docs/decentralized-applications/ethereum/ethereum-intro.md",90036],"30a5c974":[()=>a.e(54671).then(a.bind(a,541555)),"@site/docs/computer-science/distributed-system/consensus-protocols.md",541555],"30a72b21":[()=>a.e(90188).then(a.bind(a,896769)),"@site/docs/ai/libraries/ml-monitoring.md",896769],"30a7a1e3":[()=>a.e(10600).then(a.bind(a,373621)),"@site/docs/networking/protocols/graphql.md",373621],"30b57775":[()=>a.e(6603).then(a.bind(a,165810)),"@site/docs/algorithms/dynamic-programming/knapsack-problem.md",165810],"30e52344":[()=>a.e(35823).then(a.bind(a,222582)),"@site/docs/languages/php/codeigniter/http.md",222582],"3107cc36":[()=>a.e(89595).then(a.bind(a,328896)),"@site/docs/databases/sql-databases/postgres/parameters-configuration-optimization.md",328896],"312d010c":[()=>a.e(97328).then(a.bind(a,648478)),"@site/docs/python/documentation/01-intro.md",648478],"31316f1d":[()=>a.e(16507).then(a.bind(a,384566)),"@site/docs/devops/terminal-bash/shell-intro.md",384566],"313762ff":[()=>a.e(21691).then(a.bind(a,571700)),"@site/docs/technologies/kafka/kafka-rest-proxy.md",571700],"3147c189":[()=>a.e(5721).then(a.bind(a,4357)),"@site/docs/databases/nosql-databases/time-series-db/influxdb/others.md",4357],"31698ece":[()=>a.e(91607).then(a.bind(a,572616)),"@site/docs/python/django/libraries.md",572616],"3171b2b3":[()=>a.e(89895).then(a.bind(a,127313)),"@site/docs/mathematics/general/handshaking-lemma.md",127313],"31731dba":[()=>a.e(34606).then(a.bind(a,440555)),"@site/docs/economics/gross-domestic-product-gdp.md",440555],"31800f0e":[()=>a.e(88827).then(a.bind(a,696838)),"@site/docs/databases/concepts/rum-conjecture.md",696838],"3184d273":[()=>a.e(17132).then(a.bind(a,921859)),"@site/docs/databases/data-warehousing/change-data-capture-cdc.md",921859],"31b86dc6":[()=>a.e(47530).then(a.bind(a,273257)),"@site/docs/computer-science/interview-question/system-design-google-com-into-browser-press-enter.md",273257],32209535:[()=>a.e(90202).then(a.bind(a,581175)),"@site/docs/economics/finance-investing/portfolios.md",581175],32249420:[()=>a.e(60403).then(a.bind(a,295647)),"@site/docs/computer-science/distributed-system/others.md",295647],"3225ee50":[()=>a.e(11543).then(a.bind(a,244004)),"@site/docs/economics/government-terms.md",244004],"32520b54":[()=>a.e(8658).then(a.bind(a,36978)),"@site/docs/databases/nosql-databases/redis/commands.md",36978],"32d92547":[()=>a.e(34244).then(a.bind(a,654639)),"@site/docs/knowledge/biology/exercise-stretching/gym-routine.md",654639],"32db1c2d":[()=>a.e(15149).then(a.bind(a,756554)),"@site/docs/cloud/aws/analytics/readme.md",756554],"32f83ade":[()=>a.e(16182).then(a.bind(a,705263)),"@site/docs/technologies/elasticsearch/readme.md",705263],"330bd3f1":[()=>a.e(19690).then(a.bind(a,360617)),"@site/docs/computer-science/system-design/trade-offs.md",360617],"3362433c":[()=>a.e(34176).then(a.bind(a,939848)),"@site/docs/languages/frameworks/ios.md",939848],"337948c7":[()=>a.e(13107).then(a.bind(a,541521)),"@site/docs/databases/sql-databases/aws-aurora/others.md",541521],33917122:[()=>a.e(76093).then(a.bind(a,484196)),"@site/docs/algorithms/advanced-algorithms/others.md",484196],"339f6ecc":[()=>a.e(61593).then(a.bind(a,967987)),"@site/docs/mathematics/calculus/readme.md",967987],"33c2f57a":[()=>a.e(22208).then(a.bind(a,694435)),"@site/docs/technologies/apache/apache-spark/11-built-in-functions.md",694435],"33e25559":[()=>a.e(60786).then(a.bind(a,185491)),"@site/docs/ai/ml-fundamentals/readme.md",185491],"3435e5a1":[()=>a.e(45766).then(a.bind(a,922080)),"@site/docs/languages/others/tla-plus.md",922080],"343e5c8a":[()=>a.e(21765).then(a.bind(a,103968)),"@site/docs/ai/computer-vision-cv/intro.md",103968],"344292b5":[()=>a.e(88621).then(a.bind(a,735236)),"@site/docs/decentralized-applications/development/readme.md",735236],"344c2722":[()=>a.e(2903).then(a.bind(a,872209)),"@site/docs/economics/mental-models/rankings.md",872209],"345e30a2":[()=>a.e(43940).then(a.bind(a,692902)),"@site/docs/knowledge/biology/intro.md",692902],"34a68359":[()=>a.e(55668).then(a.bind(a,854219)),"@site/docs/cloud/aws/networking-content-delivery/amazon-cloudfront.md",854219],"34a6ba5e":[()=>a.e(75546).then(a.bind(a,591805)),"@site/docs/computer-science/iot/others.md",591805],"34aadc5f":[()=>a.e(49829).then(a.bind(a,37876)),"@site/docs/ai/ml-fundamentals/table-of-contents.md",37876],"34b1c4d5":[()=>a.e(64459).then(a.bind(a,852723)),"@site/docs/cloud/aws/cost-optimization-explorer-billing.md",852723],"34c30f7d":[()=>a.e(8283).then(a.bind(a,4462)),"@site/docs/ai/ml-algorithms/rule-generation-and-pattern-evaluation.md",4462],"34cc9f78":[()=>a.e(88944).then(a.bind(a,903746)),"@site/docs/cloud/aws/others.md",903746],"34d3e012":[()=>a.e(71046).then(a.bind(a,381593)),"@site/docs/algorithms/general/2d-orthogonal-range-search.md",381593],"34d87e1c":[()=>a.e(94314).then(a.bind(a,468625)),"@site/docs/courses/udemy-becoming-a-production-mysql-dba.md",468625],"34f7e236":[()=>a.e(44397).then(a.bind(a,673124)),"@site/docs/devops/monitoring/istio/intro.md",673124],"34ff8d73":[()=>a.e(11046).then(a.bind(a,845102)),"@site/docs/ai/llm/libraries.md",845102],"350f0c97":[()=>a.e(1321).then(a.bind(a,305393)),"@site/docs/knowledge/others/politics/others.md",305393],"3514b9f5":[()=>a.e(97463).then(a.bind(a,552079)),"@site/docs/data-structures/hierarchical-data-structure/binary-tree.md",552079],"3532e8aa":[()=>a.e(59220).then(a.bind(a,689869)),"@site/docs/languages/java/comparable-interface.md",689869],"3572c472":[()=>a.e(82357).then(a.bind(a,763421)),"@site/docs/databases/nosql-databases/snowflake/compute.md",763421],"35e1fe37":[()=>a.e(21376).then(a.bind(a,192282)),"@site/docs/python/advanced/readme.md",192282],"35fdfea8":[()=>a.e(94252).then(a.bind(a,889085)),"@site/docs/knowledge/general/others.md",889085],"360f20bf":[()=>a.e(60075).then(a.bind(a,309191)),"@site/docs/ai/scikit-learn/scipy-intro.md",309191],"363df6aa":[()=>a.e(95105).then(a.bind(a,434242)),"@site/docs/devops/devops-intro/load-balancer-tools.md",434242],"364c28ea":[()=>a.e(81470).then(a.bind(a,374087)),"@site/docs/management/jobs/career.md",374087],"365cb01f":[()=>a.e(54773).then(a.bind(a,981872)),"@site/docs/cloud/others/azure/iam.md",981872],"36703d5d":[()=>a.e(8757).then(a.bind(a,834009)),"@site/docs/economics/finance-investing/financial-independence-fire.md",834009],"36a2cd8f":[()=>a.e(54151).then(a.bind(a,884099)),"@site/docs/networking/others/delta-lake-tutorial.md",884099],"36ec2e2d":[()=>a.e(53285).then(a.bind(a,121146)),"@site/docs/technologies/apache/celery/commands-tools.md",121146],"37070a85":[()=>a.e(9083).then(a.bind(a,370965)),"@site/docs/about-me/ideas/startup-ideas-physical.md",370965],"371e9caa":[()=>a.e(22397).then(a.bind(a,998596)),"@site/docs/knowledge/others/mythology.md",998596],"3775008f":[()=>a.e(21266).then(a.bind(a,194374)),"@site/docs/psychology/life-relationship-people.md",194374],"3788a7f0":[()=>a.e(16233).then(a.bind(a,706546)),"@site/docs/management/business/indian-market.md",706546],"3798fc3e":[()=>a.e(47020).then(a.bind(a,213536)),"@site/docs/management/project-management/others.md",213536],"384d7d86":[()=>a.e(32657).then(a.bind(a,415838)),"@site/docs/cloud/aws/compute/amazon-ecs.md",415838],"38b6e6e0":[()=>a.e(37292).then(a.bind(a,211056)),"@site/docs/management/growth-hacking-metrics.md",211056],"38b84ce6":[()=>a.e(74242).then(a.bind(a,493485)),"@site/docs/ai/ml-algorithms/non-linear-regression.md",493485],"38d7992e":[()=>a.e(59516).then(a.bind(a,184993)),"@site/docs/databases/nosql-databases/time-series-db/influxdb/kapacitor.md",184993],"38e47344":[()=>a.e(72992).then(a.bind(a,645465)),"@site/docs/devops/terminal-bash/8-linux-system-administration.md",645465],"38ed65a1":[()=>a.e(38847).then(a.bind(a,134783)),"@site/docs/mathematics/combinatorics/inclusion-exclusion-principle.md",134783],"38f1b985":[()=>a.e(88709).then(a.bind(a,646022)),"@site/docs/decentralized-applications/ethereum/41-rewards-and-penalties.md",646022],"3901cbff":[()=>a.e(22639).then(a.bind(a,968990)),"@site/docs/book-summaries/the-elephant-in-the-brain.md",968990],"3931f603":[()=>a.e(74343).then(a.bind(a,334757)),"@site/docs/knowledge/biology/human-skeleton.md",334757],"397fd8ff":[()=>a.e(53252).then(a.bind(a,988069)),"@site/docs/knowledge/physics/intro.md",988069],"39b0286b":[()=>a.e(91277).then(a.bind(a,878112)),"@site/docs/devops/ides/pycharm.md",878112],"39b25122":[()=>a.e(1340).then(a.bind(a,200127)),"@site/docs/ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow.md",200127],"39bc6aef":[()=>a.e(76342).then(a.bind(a,819356)),"@site/docs/frontend/html-css/readme.md",819356],"39d0f83b":[()=>a.e(98174).then(a.bind(a,702488)),"@site/docs/ai/data-visualization/bi-tools.md",702488],"39f75f86":[()=>a.e(32414).then(a.bind(a,238529)),"@site/docs/ai/ml-algorithms/learning-vector-quantization-lvq.md",238529],"39fede8e":[()=>a.e(66077).then(a.bind(a,586648)),"@site/docs/technologies/apache/apache-hadoop/hadoop-mapreduce-2.0.md",586648],"3a2c6aa0":[()=>a.e(4255).then(a.bind(a,789431)),"@site/docs/languages/php/codeigniter/commands.md",789431],"3a7116bd":[()=>a.e(51195).then(a.bind(a,838018)),"@site/docs/computer-science/operating-system/swap-paging-caching.md",838018],"3a98e900":[()=>a.e(36920).then(a.bind(a,985609)),"@site/docs/frontend/others/nodejs/libraries.md",985609],"3a9f62cd":[()=>a.e(48323).then(a.bind(a,258040)),"@site/docs/courses/coursera-how-google-does-ml.md",258040],"3ab00255":[()=>a.e(69353).then(a.bind(a,298378)),"@site/docs/mathematics/statistics/readme.md",298378],"3ab4a3ca":[()=>a.e(3696).then(a.bind(a,579674)),"@site/docs/technologies/apache/apache-hadoop/intro.md",579674],"3ab5fce6":[()=>a.e(84776).then(a.bind(a,829689)),"@site/docs/book-summaries/the-dip.md",829689],"3ab821ca":[()=>a.e(71559).then(a.bind(a,143668)),"@site/docs/languages/sql/cte-subquery.md",143668],"3ac000ac":[()=>a.e(73153).then(a.bind(a,760359)),"@site/docs/knowledge/biology/nutrition/readme.md",760359],"3ac1526c":[()=>a.e(37877).then(a.bind(a,81747)),"@site/docs/frontend/react/docs.md",81747],"3ac9989c":[()=>a.e(40207).then(a.bind(a,608414)),"@site/docs/about-me/projects/51-case-study-anomaly-detection.md",608414],"3ae92d22":[()=>a.e(23126).then(a.bind(a,464135)),"@site/docs/computer-science/programming-paradigms/concurrency-reactor.md",464135],"3b105f68":[()=>a.e(31466).then(a.bind(a,686092)),"@site/docs/algorithms/searching-sorting/timsort.md",686092],"3b26a000":[()=>a.e(96413).then(a.bind(a,421909)),"@site/docs/algorithms/searching-sorting/3-way-string-radix-quicksort.md",421909],"3b61a384":[()=>a.e(41445).then(a.bind(a,45419)),"@site/docs/courses/course-art-and-science-of-ml.md",45419],"3bc9e9db":[()=>a.e(84054).then(a.bind(a,228353)),"@site/docs/computer-science/programming-paradigms/behavioral-chain-of-responsibility.md",228353],"3bca9707":[()=>a.e(61109).then(a.bind(a,735912)),"@site/docs/ai/ml-algorithms/vector-embeddings.md",735912],"3bec3ee4":[()=>a.e(33694).then(a.bind(a,461973)),"@site/docs/databases/others/readme.md",461973],"3c0522cd":[()=>a.e(59992).then(a.bind(a,842247)),"@site/docs/algorithms/general/flocking-boids-algorithm.md",842247],"3c280bea":[()=>a.e(70819).then(a.bind(a,202248)),"@site/docs/book-summaries/the-4-agreements.md",202248],"3c435b92":[()=>a.e(4204).then(a.bind(a,594359)),"@site/docs/computer-science/interview-question/blogs-conferences-blogging-presentation-tech-thursdays.md",594359],"3c5f6325":[()=>a.e(57717).then(a.bind(a,846849)),"@site/docs/about-me/ideas/startup-quotes.md",846849],"3c8efd1c":[()=>a.e(4390).then(a.bind(a,18274)),"@site/docs/economics/accounting-for-finance/2-income-statements-and-profitability-measures.md",18274],"3c99298e":[()=>a.e(88064).then(a.bind(a,464802)),"@site/docs/cloud/others/loan-management-system-lms.md",464802],"3caa5628":[()=>a.e(81457).then(a.bind(a,386213)),"@site/docs/management/jobs/readme.md",386213],"3cb4b608":[()=>a.e(21306).then(a.bind(a,147135)),"@site/docs/book-summaries/the-status-game.md",147135],"3cb7126a":[()=>a.e(67373).then(a.bind(a,636878)),"@site/docs/computer-science/system-design/intro.md",636878],"3ccca63d":[()=>a.e(24501).then(a.bind(a,253862)),"@site/docs/about-me/projects/61-general-application-management-case-study.md",253862],"3cdad56d":[()=>a.e(3907).then(a.bind(a,835878)),"@site/docs/knowledge/applied-sciences/control-engineering.md",835878],"3d178474":[()=>a.e(22127).then(a.bind(a,772104)),"@site/docs/computer-science/interview-question/system-design-uber-data-architecture.md",772104],"3d1e6a39":[()=>a.e(82522).then(a.bind(a,809743)),"@site/docs/algorithms/general/union-find-algorithm.md",809743],"3d302311":[()=>a.e(77622).then(a.bind(a,613617)),"@site/docs/technologies/apache/airflow/intro.md",613617],"3d451a26":[()=>a.e(91123).then(a.bind(a,555662)),"@site/docs/frontend/others/angularjs/09-data-binding.md",555662],"3d463754":[()=>a.e(17444).then(a.bind(a,417586)),"@site/docs/management/marketing.md",417586],"3d701768":[()=>a.e(5185).then(a.bind(a,217913)),"@site/docs/devops/ides/readme.md",217913],"3d9c1184":[()=>a.e(63101).then(a.bind(a,966207)),"@site/docs/devops/kubernetes/workloads/pods.md",966207],"3db22680":[()=>a.e(49791).then(a.bind(a,666049)),"@site/docs/python/python-intro/questions.md",666049],"3dc0d80e":[()=>a.e(40107).then(a.bind(a,45272)),"@site/docs/languages/golang/data-types.md",45272],"3ddc310f":[()=>a.e(65247).then(a.bind(a,548095)),"@site/docs/data-structures/hierarchical-data-structure/left-leaning-red-black-bsts-llrb-tree.md",548095],"3dee53c5":[()=>a.e(11995).then(a.bind(a,591131)),"@site/docs/ai/data-visualization/charts.md",591131],"3e4f5733":[()=>a.e(68460).then(a.bind(a,681317)),"@site/docs/technologies/elasticsearch/elasticsearch-the-definitive-guide.md",681317],"3e68b97d":[()=>a.e(72178).then(a.bind(a,330660)),"@site/docs/devops/devops-intro/proxy.md",330660],"3ed9ae3b":[()=>a.e(94526).then(a.bind(a,378929)),"@site/docs/databases/sql-databases/aws-redshift/readme.md",378929],"3ef7374a":[()=>a.e(60456).then(a.bind(a,967360)),"@site/docs/languages/sql/readme.md",967360],"3f096a08":[()=>a.e(91298).then(a.bind(a,314257)),"@site/docs/databases/sql-databases/postgres/replication.md",314257],"3f111e60":[()=>a.e(60260).then(a.bind(a,808266)),"@site/docs/ai/computer-vision-cv/model-building-stages.md",808266],"3f130ead":[()=>a.e(28168).then(a.bind(a,219167)),"@site/docs/management/jobs/good-profiles.md",219167],"3f1e7c85":[()=>a.e(89468).then(a.bind(a,377082)),"@site/docs/databases/nosql-databases/mongodb/intro.md",377082],"3f53607f":[()=>a.e(29232).then(a.bind(a,94781)),"@site/docs/frontend/others/jquery.md",94781],"3fa24600":[()=>a.e(26441).then(a.bind(a,457739)),"@site/docs/cloud/others/oracle.md",457739],"3fa941b7":[()=>a.e(52106).then(a.bind(a,404174)),"@site/docs/frontend/react/react-dom.md",404174],"3fbbb4ed":[()=>a.e(14411).then(a.bind(a,668658)),"@site/docs/psychology/research.md",668658],"3fce7581":[()=>a.e(50018).then(a.bind(a,695573)),"@site/docs/knowledge/quotes-proverbs/stories.md",695573],"400084b7":[()=>a.e(77664).then(a.bind(a,19932)),"@site/docs/cloud/others/firebase/readme.md",19932],"403b1c8a":[()=>a.e(59020).then(a.bind(a,479892)),"@site/docs/devops/monitoring/graphite.md",479892],"403e16d5":[()=>a.e(6825).then(a.bind(a,455092)),"@site/docs/decentralized-applications/development/infura.md",455092],"405934e5":[()=>a.e(29229).then(a.bind(a,425130)),"@site/docs/databases/sql-databases/mysql/backup-policy.md",425130],"405a6427":[()=>a.e(48557).then(a.bind(a,839788)),"@site/docs/languages/frameworks/android/kotlin.md",839788],"405d7a9e":[()=>a.e(75642).then(a.bind(a,115080)),"@site/docs/devops/terminal-bash/tools/rsync-rclone.md",115080],"406ea4fa":[()=>a.e(15769).then(a.bind(a,615101)),"@site/docs/devops/terminal-bash/tools/curl.md",615101],"40857a3a":[()=>a.e(58751).then(a.bind(a,150697)),"@site/docs/decentralized-applications/ethereum/02-intro-to-ether.md",150697],"409dbbc6":[()=>a.e(7063).then(a.bind(a,709510)),"@site/docs/mathematics/calculus/essence-of-calculus-3blue1brown.md",709510],"40b308bd":[()=>a.e(6088).then(a.bind(a,693579)),"@site/docs/knowledge/others/philosophy.md",693579],"40b3f82d":[()=>a.e(94987).then(a.bind(a,668396)),"@site/docs/book-summaries/the-3-minute-rule.md",668396],"40b45911":[()=>a.e(75049).then(a.bind(a,599359)),"@site/docs/technologies/apache/airflow/airflow-architecture.md",599359],"40bae19d":[()=>a.e(5957).then(a.bind(a,220014)),"@site/docs/computer-science/security/vault.md",220014],"40ceb83e":[()=>a.e(67977).then(a.bind(a,878047)),"@site/docs/databases/sql-databases/rdbms.md",878047],"4135078f":[()=>a.e(84168).then(a.bind(a,722358)),"@site/docs/ai/ml-fundamentals/intro.md",722358],"414acc06":[()=>a.e(1692).then(a.bind(a,491657)),"@site/docs/frontend/html-css/html-intro/html-entities-attributes.md",491657],"41545f8c":[()=>a.e(9409).then(a.bind(a,508621)),"@site/docs/databases/nosql-databases/snowflake/intro.md",508621],"418b3b93":[()=>a.e(61795).then(a.bind(a,861409)),"@site/docs/book-summaries/who-we-are-and-how-we-got-here.md",861409],"419e391a":[()=>a.e(18298).then(a.bind(a,796354)),"@site/docs/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch.md",796354],"41a52a84":[()=>a.e(66645).then(a.bind(a,742039)),"@site/docs/computer-science/distributed-system/cap-theorem.md",742039],"41cb031c":[()=>a.e(31700).then(a.bind(a,35583)),"@site/docs/frontend/others/nodejs/npm-commands.md",35583],"41d05e46":[()=>a.e(15554).then(a.bind(a,678528)),"@site/docs/databases/nosql-databases/time-series-db/influxdb/commands-influx-query-language-influxql.md",678528],"41d46d94":[()=>a.e(90164).then(a.bind(a,791214)),"@site/docs/courses/365-ds-advanced-stastistical-methods-in-python.md",791214],"41ff21cb":[()=>a.e(44505).then(a.bind(a,196423)),"@site/docs/knowledge/quotes-proverbs/tatoos-quotes.md",196423],"4202ad11":[()=>a.e(19851).then(a.bind(a,676531)),"@site/docs/economics/finance-investing/indian-company-types.md",676531],"421e5681":[()=>a.e(92925).then(a.bind(a,896601)),"@site/docs/mathematics/calculus/quotient-rule.md",896601],"423fe8a1":[()=>a.e(46750).then(a.bind(a,200479)),"@site/docs/devops/ides/jupyter-jupyterlab-notebook/readme.md",200479],"42d734c0":[()=>a.e(44292).then(a.bind(a,374959)),"@site/docs/databases/others/course-advanced-database-systems.md",374959],"432089b3":[()=>a.e(37469).then(a.bind(a,380668)),"@site/docs/economics/inflation-indexes.md",380668],"4331240f":[()=>a.e(25035).then(a.bind(a,460791)),"@site/docs/ai/deep-learning/readme.md",460791],"4341435a":[()=>a.e(73128).then(a.bind(a,320715)),"@site/docs/computer-science/programming-paradigms/oops-solid.md",320715],"43bc88e4":[()=>a.e(73014).then(a.bind(a,198078)),"@site/docs/frontend/js-javascript/readme.md",198078],"43fa59a4":[()=>a.e(85395).then(a.bind(a,806604)),"@site/docs/databases/nosql-databases/aws-dynamodb/readme.md",806604],"443a2b30":[()=>a.e(64011).then(a.bind(a,620200)),"@site/docs/about-me/ideas/intro.md",620200],"443b6ba9":[()=>a.e(95064).then(a.bind(a,417989)),"@site/docs/devops/ides/mac.md",417989],"444d298f":[()=>a.e(50349).then(a.bind(a,102366)),"@site/docs/technologies/kafka/kafkacat.md",102366],"448d2423":[()=>a.e(40299).then(a.bind(a,305379)),"@site/docs/courses/customer-analytics-in-python/syllabus.md",305379],"449951b1":[()=>a.e(35305).then(a.bind(a,827486)),"@site/docs/python/python-intro/loops.md",827486],"44cd3922":[()=>a.e(76420).then(a.bind(a,775727)),"@site/docs/technologies/elasticsearch/information-retrieval.md",775727],"44d9f337":[()=>a.e(69851).then(a.bind(a,172532)),"@site/docs/computer-science/operating-system/basic-computer-organization.md",172532],"44ddbd51":[()=>a.e(63065).then(a.bind(a,492789)),"@site/docs/mathematics/general/logic.md",492789],"4510e888":[()=>a.e(96556).then(a.bind(a,193873)),"@site/docs/frontend/js-javascript/typescript.md",193873],"451a5270":[()=>a.e(39684).then(a.bind(a,918619)),"@site/docs/ai/ml-algorithms/k-nearest-neighbor-knn.md",918619],"45217b48":[()=>a.e(59536).then(a.bind(a,801525)),"@site/docs/languages/golang/examples.md",801525],"45304fce":[()=>a.e(62023).then(a.bind(a,296849)),"@site/docs/algorithms/complex-systems/move-by-nature.md",296849],"453aef9a":[()=>a.e(83116).then(a.bind(a,20755)),"@site/docs/algorithms/general/readme.md",20755],45625945:[()=>a.e(36404).then(a.bind(a,553431)),"@site/docs/algorithms/mathematics/combinatorial-optimization.md",553431],"4562a8b3":[()=>a.e(39056).then(a.bind(a,298856)),"@site/docs/computer-science/interview-question/system-design-others.md",298856],"4564b15c":[()=>a.e(91446).then(a.bind(a,863574)),"@site/docs/networking/mqtt/persistent-session-and-queuing-messages.md",863574],"456f7d5f":[()=>a.e(49724).then(a.bind(a,272190)),"@site/docs/mathematics/statistics/discriminant-analysis.md",272190],"458af7b6":[()=>a.e(37626).then(a.bind(a,722232)),"@site/docs/networking/others/other.md",722232],"45a5022e":[()=>a.e(79777).then(a.bind(a,404155)),"@site/docs/technologies/apache/celery/celery-backend.md",404155],"45b09681":[()=>a.e(13005).then(a.bind(a,773903)),"@site/docs/networking/protocols/messaging.md",773903],"45dfbcad":[()=>a.e(46468).then(a.bind(a,780552)),"@site/docs/economics/mutual-funds/index-investing-etf.md",780552],"45fa3d99":[()=>a.e(67808).then(a.bind(a,199264)),"@site/docs/book-summaries/how-to-take-smart-notes.md",199264],"4605f814":[()=>a.e(30698).then(a.bind(a,834826)),"@site/docs/databases/indexing/readme.md",834826],"4616bceb":[()=>a.e(59720).then(a.bind(a,52966)),"@site/docs/about-me/projects/86-stashfin-customer-support.md",52966],"46174b04":[()=>a.e(30263).then(a.bind(a,97349)),"@site/docs/languages/c++/others.md",97349],"464bcdeb":[()=>a.e(91320).then(a.bind(a,156521)),"@site/docs/courses/nutanix-hybrid-cloud.md",156521],"465401dd":[()=>a.e(36615).then(a.bind(a,408612)),"@site/docs/networking/mqtt/client-broker-and-connection-establishment.md",408612],"4656c5a6":[()=>a.e(42421).then(a.bind(a,562070)),"@site/docs/networking/mqtt/scaling.md",562070],"4663e047":[()=>a.e(93923).then(a.bind(a,331413)),"@site/docs/knowledge/biology/exercise-stretching/gym-nutrition.md",331413],"46791a07":[()=>a.e(73727).then(a.bind(a,534820)),"@site/docs/mathematics/probability/intro.md",534820],"468502bc":[()=>a.e(45437).then(a.bind(a,547581)),"@site/docs/python/django/logging.md",547581],"46a2e861":[()=>a.e(10171).then(a.bind(a,766842)),"@site/docs/networking/mqtt/publish-subscribe-and-unsubscribe.md",766842],"46c15671":[()=>a.e(51591).then(a.bind(a,877937)),"@site/docs/ai/model-evaluation/generalization-and-sampling.md",877937],"46fcb4c6":[()=>a.e(16822).then(a.bind(a,99574)),"@site/docs/technologies/kafka/kafka-producers.md",99574],"476bc8c2":[()=>a.e(149).then(a.bind(a,823878)),"@site/docs/data-structures/hierarchical-data-structure/interval-search-tree.md",823878],47865409:[()=>a.e(30954).then(a.bind(a,193803)),"@site/docs/psychology/burnout.md",193803],"4788ebde":[()=>a.e(32302).then(a.bind(a,717288)),"@site/docs/knowledge/biology/omics.md",717288],"4797216a":[()=>a.e(1019).then(a.bind(a,449977)),"@site/docs/ai/scikit-learn/readme.md",449977],"47b1228a":[()=>a.e(99660).then(a.bind(a,321763)),"@site/docs/databases/nosql-databases/redis/others.md",321763],"47b91337":[()=>a.e(67239).then(a.bind(a,990065)),"@site/docs/data-structures/trie/standard-trie.md",990065],"47d25497":[()=>a.e(23914).then(a.bind(a,373345)),"@site/docs/algorithms/graphtheory/other-graph-algorithms.md",373345],"48015b9c":[()=>a.e(24919).then(a.bind(a,599916)),"@site/docs/devops/docker/intro.md",599916],"481996ff":[()=>a.e(82860).then(a.bind(a,648428)),"@site/docs/technologies/brokers/others.md",648428],"4834625b":[()=>a.e(71106).then(a.bind(a,519079)),"@site/docs/book-summaries/organize-tomorrow-today.md",519079],"48540be8":[()=>a.e(29513).then(a.bind(a,399395)),"@site/docs/devops/ides/onenote.md",399395],"48603f13":[()=>a.e(89685).then(a.bind(a,579551)),"@site/docs/python/django/commands.md",579551],"4872f55e":[()=>a.e(73883).then(a.bind(a,759295)),"@site/docs/algorithms/advanced-algorithms/regular-expressions.md",759295],"48e1a4a9":[()=>a.e(86186).then(a.bind(a,677527)),"@site/docs/knowledge/applied-sciences/embedded-systems-electronics.md",677527],"48f1e5e1":[()=>a.e(38459).then(a.bind(a,772945)),"@site/docs/devops/devops-intro/design.md",772945],"4923802d":[()=>a.e(7404).then(a.bind(a,90817)),"@site/docs/computer-science/programming-concepts/metaprogramming.md",90817],"497e4e7e":[()=>a.e(88342).then(a.bind(a,823256)),"@site/docs/ai/ml-algorithms/support-vector-machine-svm.md",823256],"49a8a93d":[()=>a.e(38432).then(a.bind(a,58227)),"@site/docs/economics/accounting-for-finance/1-accounting-first-steps.md",58227],"49a8fa94":[()=>a.e(57915).then(a.bind(a,128135)),"@site/docs/computer-science/operating-system/coroutines.md",128135],"49aeb37b":[()=>a.e(26146).then(a.bind(a,999421)),"@site/docs/cloud/others/readme.md",999421],"49cdee56":[()=>a.e(49462).then(a.bind(a,652904)),"@site/docs/python/django/docs-topic-guides.md",652904],"49ef62cd":[()=>a.e(42425).then(a.bind(a,245329)),"@site/docs/languages/golang/interview-questions.md",245329],"49fa3321":[()=>a.e(82626).then(a.bind(a,75664)),"@site/docs/data-structures/graph/questions.md",75664],"4a1c5a1a":[()=>a.e(37774).then(a.bind(a,228219)),"@site/docs/psychology/soft-skills/disagreement-feedback.md",228219],"4a230012":[()=>a.e(33887).then(a.bind(a,368817)),"@site/docs/computer-science/testing/checkov.md",368817],"4a325f95":[()=>a.e(71).then(a.bind(a,938309)),"@site/docs/algorithms/searching-sorting/heapsort.md",938309],"4a39a4d5":[()=>a.e(26748).then(a.bind(a,398878)),"@site/docs/mathematics/statistics/nonparametric-statistics.md",398878],"4a593a48":[()=>a.e(19799).then(a.bind(a,954483)),"@site/docs/ai/move-37/reinforcement-learning.md",954483],"4a61c837":[()=>a.e(52226).then(a.bind(a,286206)),"@site/docs/mathematics/calculus/product-rule-for-derivatives.md",286206],"4a6fa639":[()=>a.e(1041).then(a.bind(a,509455)),"@site/docs/knowledge/games/couple-activities.md",509455],"4ab59a5d":[()=>a.e(21579).then(a.bind(a,804105)),"@site/docs/mathematics/calculus/tangent-line-and-the-derivative.md",804105],"4ab6347e":[()=>a.e(48634).then(a.bind(a,60875)),"@site/docs/python/python-intro/data-structure/tuples.md",60875],"4b01f44d":[()=>a.e(22400).then(a.bind(a,505002)),"@site/docs/technologies/apache/apache-spark/00-intro.md",505002],"4b8e6d2e":[()=>a.e(66538).then(a.bind(a,379045)),"@site/docs/languages/java/defining-constants.md",379045],"4ba8b99b":[()=>a.e(4622).then(a.bind(a,286620)),"@site/docs/book-summaries/edge-of-chaos.md",286620],"4bcc1e51":[()=>a.e(87549).then(a.bind(a,81577)),"@site/docs/frontend/js-javascript/intro.md",81577],"4bd096b0":[()=>a.e(43573).then(a.bind(a,550276)),"@site/docs/computer-science/testing/mocking.md",550276],"4be3bb6a":[()=>a.e(91286).then(a.bind(a,730162)),"@site/docs/management/project-management/program-management.md",730162],"4c66dc1e":[()=>a.e(51363).then(a.bind(a,305396)),"@site/docs/mathematics/aptitude/readme.md",305396],"4cb9e61e":[()=>a.e(49330).then(a.bind(a,889565)),"@site/docs/cloud/others/firebase/firebase-google-analytics.md",889565],"4cc731bf":[()=>a.e(76444).then(a.bind(a,979339)),"@site/docs/cloud/aws/compute/amazon-eks.md",979339],"4ce44331":[()=>a.e(47986).then(a.bind(a,905891)),"@site/docs/databases/sql-databases/mysql/sql-mysql-tools.md",905891],"4d1e1274":[()=>a.e(19016).then(a.bind(a,500712)),"@site/docs/knowledge/biology/mbbs-medicine-medical-health.md",500712],"4d285a92":[()=>a.e(83275).then(a.bind(a,714555)),"@site/docs/computer-science/general/research-papers.md",714555],"4d412af7":[()=>a.e(1469).then(a.bind(a,105999)),"@site/docs/languages/readme.md",105999],"4d4bf838":[()=>a.e(36663).then(a.bind(a,654347)),"@site/docs/devops/kubernetes/keda.md",654347],"4d51b7c3":[()=>a.e(78658).then(a.bind(a,295108)),"@site/docs/frontend/others/angularjs/08-metadata.md",295108],"4d629451":[()=>a.e(3813).then(a.bind(a,936607)),"@site/docs/algorithms/searching-sorting/shuffle-sort.md",936607],"4d93f4b2":[()=>a.e(44192).then(a.bind(a,953944)),"@site/docs/psychology/learning/mistakes-apology.md",953944],"4e06c9f4":[()=>a.e(25277).then(a.bind(a,747287)),"@site/docs/ai/ml-fundamentals/neural-networks.md",747287],"4e146e4e":[()=>a.e(31823).then(a.bind(a,193722)),"@site/docs/management/six-sigma.md",193722],"4e2122de":[()=>a.e(96398).then(a.bind(a,772397)),"@site/docs/technologies/apache/apache-zookeeper.md",772397],"4e228003":[()=>a.e(36464).then(a.bind(a,740586)),"@site/docs/algorithms/general/prime-factorization.md",740586],"4eaf1ed4":[()=>a.e(82015).then(a.bind(a,867602)),"@site/docs/technologies/brokers/vernemq/readme.md",867602],"4eb6af9a":[()=>a.e(97585).then(a.bind(a,629390)),"@site/docs/databases/sql-databases/postgres/others.md",629390],"4ec3335b":[()=>a.e(46307).then(a.bind(a,108321)),"@site/docs/cloud/others/gcp-ml-services.md",108321],"4ee505b0":[()=>a.e(32785).then(a.bind(a,458898)),"@site/docs/databases/nosql-databases/mongodb/pymongo.md",458898],"4f176c49":[()=>a.e(15753).then(a.bind(a,796161)),"@site/docs/about-me/projects/82-stashfin-metrics.md",796161],"4f1832d2":[()=>a.e(12370).then(a.bind(a,967839)),"@site/docs/frontend/html-css/css-intro/others.md",967839],"4f215d69":[()=>a.e(71673).then(a.bind(a,720733)),"@site/docs/frontend/others/angularjs/12-dependency-injection.md",720733],"4f2968ce":[()=>a.e(83063).then(a.bind(a,30965)),"@site/docs/mathematics/combinatorics/intro.md",30965],"4f2ccdbe":[()=>a.e(67081).then(a.bind(a,526505)),"@site/docs/economics/intro.md",526505],"4f722bdc":[()=>a.e(67762).then(a.bind(a,108210)),"@site/docs/ai/move-37/2-dynamic-programming.md",108210],"4fa2294c":[()=>a.e(96181).then(a.bind(a,756237)),"@site/docs/ai/computer-vision-cv/imagemagick.md",756237],"50063b28":[()=>a.e(84506).then(a.bind(a,451758)),"@site/docs/knowledge/applied-sciences/chemical-engineering.md",451758],"50069c4e":[()=>a.e(51409).then(a.bind(a,507e3)),"@site/docs/networking/others/grpc/others.md",507e3],"505a436b":[()=>a.e(18324).then(a.bind(a,468774)),"@site/docs/python/documentation/27-development-tools/testing.md",468774],"50760d3d":[()=>a.e(24643).then(a.bind(a,47520)),"@site/docs/economics/market-terms/fundamental-analysis.md",47520],"509818b0":[()=>a.e(99955).then(a.bind(a,874400)),"@site/docs/book-summaries/life-is-in-the-transitions.md",874400],"509f3651":[()=>a.e(4829).then(a.bind(a,623193)),"@site/docs/mathematics/statistics/estimation-statistics.md",623193],"50a0e0a1":[()=>a.e(86906).then(a.bind(a,116111)),"@site/docs/decentralized-applications/ethereum/08-evm.md",116111],"50a6ec26":[()=>a.e(72243).then(a.bind(a,209278)),"@site/docs/computer-science/programming-paradigms/behavioral-strategy.md",209278],"50ae4dce":[()=>a.e(47969).then(a.bind(a,877460)),"@site/docs/ai/data-visualization/d3-data-driven-documents.md",877460],"50dd31f0":[()=>a.e(51904).then(a.bind(a,655901)),"@site/docs/cloud/aws/aws-glue.md",655901],"510009b3":[()=>a.e(13989).then(a.bind(a,208467)),"@site/docs/ai/libraries/tools.md",208467],"51301a50":[()=>a.e(28881).then(a.bind(a,709047)),"@site/docs/computer-science/programming-paradigms/design-patterns.md",709047],"5136b2ce":[()=>a.e(36876).then(a.bind(a,369424)),"@site/docs/databases/nosql-databases/aws-dynamodb/working.md",369424],"515e9fa2":[()=>a.e(47117).then(a.bind(a,858331)),"@site/docs/technologies/apache/apache-spark/06-sliding-window-analytics.md",858331],"51663e96":[()=>a.e(34610).then(a.bind(a,326265)),"@site/docs/languages/others/other-languages.md",326265],51830904:[()=>a.e(5966).then(a.bind(a,452603)),"@site/docs/decentralized-applications/ethereum/others.md",452603],"51ae21c3":[()=>a.e(68010).then(a.bind(a,857599)),"@site/docs/about-me/projects/50-use-cases-aiml-logistics-warehousing.md",857599],"51f3571c":[()=>a.e(84372).then(a.bind(a,194572)),"@site/docs/about-me/projects/87-stashfin-team-management-culture.md",194572],"522ae6e1":[()=>a.e(42262).then(a.bind(a,856060)),"@site/docs/databases/nosql-databases/redis/readme.md",856060],"526bab26":[()=>a.e(922).then(a.bind(a,508045)),"@site/docs/courses/course-time-series-analysis/time-series-modeling.md",508045],"5271284a":[()=>a.e(71154).then(a.bind(a,565035)),"@site/docs/computer-science/operating-system/intro.md",565035],52782187:[()=>a.e(24923).then(a.bind(a,772958)),"@site/docs/python/others/flask/flask-sqlalchemy.md",772958],"527d1bfa":[()=>a.e(1955).then(a.bind(a,328537)),"@site/docs/courses/course-intro-to-data-and-data-science.md",328537],"52b1ceff":[()=>a.e(78514).then(a.bind(a,637456)),"@site/docs/databases/data-warehousing/10-lambda-architecture.md",637456],"52cc61cb":[()=>a.e(32290).then(a.bind(a,568702)),"@site/docs/languages/c++/stl-iterators-algorithms.md",568702],"52d5ae46":[()=>a.e(31378).then(a.bind(a,317276)),"@site/docs/networking/others/grpc/comparison.md",317276],"52d95b80":[()=>a.e(51129).then(a.bind(a,171757)),"@site/docs/computer-science/programming-concepts/inversion-of-control.md",171757],"52e2a80b":[()=>a.e(80012).then(a.bind(a,501334)),"@site/docs/readme.md",501334],"52e331f6":[()=>a.e(39523).then(a.bind(a,628559)),"@site/docs/technologies/kafka/readme.md",628559],"53067a26":[()=>a.e(54109).then(a.bind(a,970929)),"@site/docs/databases/concepts/history.md",970929],"535b33ec":[()=>a.e(92084).then(a.bind(a,374233)),"@site/docs/devops/devops-intro/load-balancer.md",374233],"535c7b59":[()=>a.e(76578).then(a.bind(a,635723)),"@site/docs/devops/docker/docker-commands.md",635723],"53625ff0":[()=>a.e(54569).then(a.bind(a,151025)),"@site/docs/languages/frameworks/masonite.md",151025],"53a71ac3":[()=>a.e(30640).then(a.bind(a,647227)),"@site/docs/python/django/cheatsheet.md",647227],"53b8f220":[()=>a.e(92559).then(a.bind(a,655559)),"@site/docs/devops/terminal-bash/2-system-calls.md",655559],"53be407e":[()=>a.e(49409).then(a.bind(a,909545)),"@site/docs/mathematics/probability/intro-to-probability/additional-theoretical-material.md",909545],"53d09426":[()=>a.e(38562).then(a.bind(a,697467)),"@site/docs/ai/big-data/processing-engine.md",697467],"53ea811f":[()=>a.e(85692).then(a.bind(a,465300)),"@site/docs/psychology/power.md",465300],"5420d869":[()=>a.e(46326).then(a.bind(a,974037)),"@site/docs/mathematics/probability/intro-to-probability/6-variance-conditioning-of-an-event-multiple-rv.md",974037],"5423af5a":[()=>a.e(78088).then(a.bind(a,402784)),"@site/docs/cloud/aws/compute/ec2-instance-types.md",402784],"543ba738":[()=>a.e(87552).then(a.bind(a,95613)),"@site/docs/psychology/soft-skills/negotiation.md",95613],"5473b547":[()=>a.e(11657).then(a.bind(a,755331)),"@site/docs/databases/sql-databases/aws-aurora/high-availability-ha-others.md",755331],"5486522a":[()=>a.e(8511).then(a.bind(a,467636)),"@site/docs/about-me/faqs.md",467636],"548c47e9":[()=>a.e(11041).then(a.bind(a,646311)),"@site/docs/frontend/frontend-intro/pwa.md",646311],"548da952":[()=>a.e(51050).then(a.bind(a,13812)),"@site/docs/networking/others/vpn.md",13812],"549f9c72":[()=>a.e(33783).then(a.bind(a,16395)),"@site/docs/knowledge/games/readme.md",16395],"54a892bc":[()=>a.e(16069).then(a.bind(a,931367)),"@site/docs/economics/mutual-funds/readme.md",931367],"54bb8ea4":[()=>a.e(41946).then(a.bind(a,919251)),"@site/docs/economics/mutual-funds/debt-mutual-funds.md",919251],"54cad423":[()=>a.e(33370).then(a.bind(a,80717)),"@site/docs/networking/mqtt/mqtt-vs-http.md",80717],"55168e2e":[()=>a.e(52148).then(a.bind(a,847168)),"@site/docs/algorithms/searching-sorting/system-sort.md",847168],"554643bc":[()=>a.e(92839).then(a.bind(a,105689)),"@site/docs/databases/nosql-databases/redis/redis-eviction-policies.md",105689],"55525dbf":[()=>a.e(31673).then(a.bind(a,463403)),"@site/docs/computer-science/programming-concepts/readme.md",463403],"555d270a":[()=>a.e(50982).then(a.bind(a,604348)),"@site/docs/devops/kubernetes/workloads/pod-lifecycle.md",604348],"5582f382":[()=>a.e(43990).then(a.bind(a,592238)),"@site/docs/databases/others/course-aws-certified-database-specialty.md",592238],"558a48d1":[()=>a.e(82587).then(a.bind(a,803944)),"@site/docs/frontend/others/docusaurus.md",803944],"55c14ff9":[()=>a.e(75852).then(a.bind(a,891720)),"@site/docs/book-summaries/the-organized-mind.md",891720],"55c52d11":[()=>a.e(66816).then(a.bind(a,400938)),"@site/docs/algorithms/algorithmic-complexity/time-complexities.md",400938],"55c7660b":[()=>a.e(61739).then(a.bind(a,353263)),"@site/docs/mathematics/probability/intro-to-probability/1.1-set-sequences-limits-and-series-un-countable-sets.md",353263],"55cc345f":[()=>a.e(38346).then(a.bind(a,503900)),"@site/docs/devops/monitoring/readme.md",503900],"55cfb36c":[()=>a.e(97244).then(a.bind(a,350175)),"@site/docs/decentralized-applications/coins-tokens-chains/bnb.md",350175],"55d309df":[()=>a.e(37496).then(a.bind(a,502548)),"@site/docs/cloud/others/cdn-comparision.md",502548],"55dca31b":[()=>a.e(64236).then(a.bind(a,434372)),"@site/docs/languages/others/scala.md",434372],"55df19fa":[()=>a.e(47728).then(a.bind(a,253264)),"@site/docs/knowledge/geography/rivers.md",253264],"562060f7":[()=>a.e(77428).then(a.bind(a,394543)),"@site/docs/languages/php/codeigniter/intro.md",394543],"562739b5":[()=>a.e(28835).then(a.bind(a,23151)),"@site/docs/book-summaries/the-path-between-us.md",23151],"562d6c6d":[()=>a.e(47999).then(a.bind(a,707674)),"@site/docs/knowledge/biology/nutrition/intro.md",707674],"562f69db":[()=>a.e(16239).then(a.bind(a,182696)),"@site/docs/book-summaries/the-book-of-joy.md",182696],"563e2cef":[()=>a.e(54981).then(a.bind(a,627591)),"@site/docs/decentralized-applications/coins-tokens-chains/celestia.md",627591],"564384a9":[()=>a.e(18011).then(a.bind(a,745708)),"@site/docs/management/product-management/product-design-stages.md",745708],"564eb415":[()=>a.e(25355).then(a.bind(a,53301)),"@site/docs/decentralized-applications/key-concepts.md",53301],"564ef516":[()=>a.e(64490).then(a.bind(a,759733)),"@site/docs/management/decision-making/readme.md",759733],"565180c4":[()=>a.e(86061).then(a.bind(a,789427)),"@site/docs/frontend/html-css/html-intro/tags.md",789427],"569189a5":[()=>a.e(93165).then(a.bind(a,877199)),"@site/docs/cloud/aws/aws-services.md",877199],"56b1102c":[()=>a.e(51279).then(a.bind(a,155567)),"@site/docs/databases/sql-databases/amazon-rds.md",155567],"56edea18":[()=>a.e(62436).then(a.bind(a,103244)),"@site/docs/management/product-management/product-book-summaries.md",103244],"56fc7fa5":[()=>a.e(35698).then(a.bind(a,919246)),"@site/docs/mathematics/general/properties.md",919246],"5723c3a0":[()=>a.e(37186).then(a.bind(a,573579)),"@site/docs/computer-science/software-engineering/types-of-code.md",573579],"575dd1ac":[()=>a.e(44997).then(a.bind(a,400445)),"@site/docs/ai/move-37/4-model-free-learning.md",400445],"576848c5":[()=>a.e(46345).then(a.bind(a,197340)),"@site/docs/languages/php/others.md",197340],57848121:[()=>a.e(92439).then(a.bind(a,183220)),"@site/docs/technologies/kafka/installing-kafka.md",183220],"578fd3bc":[()=>a.e(27966).then(a.bind(a,10419)),"@site/docs/knowledge/law/lsat.md",10419],"5796389b":[()=>a.e(3796).then(a.bind(a,146002)),"@site/docs/about-me/projects/71-opstree-standard-proposal-format.md",146002],"57a62e5c":[()=>a.e(61304).then(a.bind(a,91327)),"@site/docs/economics/finance-investing/company-management.md",91327],58214101:[()=>a.e(4906).then(a.bind(a,286185)),"@site/docs/economics/mental-models/recession-shapes-recovery.md",286185],58356462:[()=>a.e(22454).then(a.bind(a,137892)),"@site/docs/networking/others/apache-avro.md",137892],"58738f93":[()=>a.e(12731).then(a.bind(a,803819)),"@site/docs/computer-science/others/computer-graphics.md",803819],"58922a5c":[()=>a.e(58648).then(a.bind(a,961999)),"@site/docs/ai/ml-algorithms/generative-adversarial-networks-gans.md",961999],"58a5df96":[()=>a.e(8811).then(a.bind(a,272548)),"@site/docs/management/project-management/goals-setting.md",272548],"58d25408":[()=>a.e(64633).then(a.bind(a,1318)),"@site/docs/computer-science/system-design/microservice-architecture/readme.md",1318],"58d86f72":[()=>a.e(6635).then(a.bind(a,817965)),"@site/docs/management/people-management/remote-working-teams.md",817965],"590c815d":[()=>a.e(7812).then(a.bind(a,174448)),"@site/docs/databases/nosql-databases/cassandra/questions.md",174448],"5912717c":[()=>a.e(81142).then(a.bind(a,959737)),"@site/docs/ai/llm/rag-hackathon-questions.md",959737],"5915bd2c":[()=>a.e(97194).then(a.bind(a,676441)),"@site/docs/ai/pandas/others.md",676441],59215199:[()=>a.e(54592).then(a.bind(a,330131)),"@site/docs/devops/others/backstage.md",330131],"595d7183":[()=>a.e(26428).then(a.bind(a,48723)),"@site/docs/languages/php/codeigniter/others.md",48723],"59c0f526":[()=>a.e(35010).then(a.bind(a,864046)),"@site/docs/ai/data-science/data-analysis.md",864046],"5a2a4193":[()=>a.e(96642).then(a.bind(a,593255)),"@site/docs/computer-science/distributed-system/clocks.md",593255],"5a2f5d63":[()=>a.e(57559).then(a.bind(a,826954)),"@site/docs/ai/llm/genai-projects.md",826954],"5a3b2707":[()=>a.e(1510).then(a.bind(a,902430)),"@site/docs/management/business/business-case-studies.md",902430],"5aa969c8":[()=>a.e(18130).then(a.bind(a,588078)),"@site/docs/python/documentation/03-built-in-constants.md",588078],"5abbb511":[()=>a.e(92903).then(a.bind(a,522979)),"@site/docs/devops/devops-intro/concepts.md",522979],"5abd7e2c":[()=>a.e(44004).then(a.bind(a,635942)),"@site/docs/devops/terminal-bash/bash-shortcuts.md",635942],"5ac4d6bc":[()=>a.e(60512).then(a.bind(a,27677)),"@site/docs/ai/move-37/algorithms.md",27677],"5ac7c5c8":[()=>a.e(75234).then(a.bind(a,388759)),"@site/docs/python/django/content-types.md",388759],"5ac92981":[()=>a.e(57817).then(a.bind(a,513878)),"@site/docs/cloud/others/gcp-google-cloud-platform.md",513878],"5ad88709":[()=>a.e(76524).then(a.bind(a,250653)),"@site/docs/computer-science/security/cryptography/cryptographic-hash-functions.md",250653],"5ad936e4":[()=>a.e(16466).then(a.bind(a,414978)),"@site/docs/databases/sql-databases/memsql/readme.md",414978],"5b447acd":[()=>a.e(72075).then(a.bind(a,399752)),"@site/docs/languages/sql/ddl-data-definition-language/create-table.md",399752],"5b6a49c8":[()=>a.e(19419).then(a.bind(a,242345)),"@site/docs/economics/course-investing-zerodha-varsity.md",242345],"5b815177":[()=>a.e(88319).then(a.bind(a,517138)),"@site/docs/databases/sql-databases/mysql/gtid-replication.md",517138],"5c443319":[()=>a.e(53613).then(a.bind(a,607943)),"@site/docs/frontend/react/react-router.md",607943],"5c60ec03":[()=>a.e(87307).then(a.bind(a,414)),"@site/docs/databases/sql-databases/aws-redshift/pricing-sizing.md",414],"5c7592b2":[()=>a.e(77603).then(a.bind(a,744477)),"@site/docs/languages/java/readme.md",744477],"5cb5642e":[()=>a.e(72849).then(a.bind(a,79851)),"@site/docs/economics/finance-investing/industry-sectors.md",79851],"5cea3978":[()=>a.e(1536).then(a.bind(a,977730)),"@site/docs/technologies/apache/apache-hadoop/about.md",977730],"5cf58e6b":[()=>a.e(39019).then(a.bind(a,621348)),"@site/docs/ai/data-visualization/powerbi.md",621348],"5d167aed":[()=>a.e(81018).then(a.bind(a,753744)),"@site/docs/networking/mqtt/libraries.md",753744],"5d40e5c4":[()=>a.e(30995).then(a.bind(a,787350)),"@site/docs/ai/big-data/types-of-data.md",787350],"5d46c18a":[()=>a.e(32749).then(a.bind(a,580628)),"@site/docs/ai/solutions.md",580628],"5d4b268b":[()=>a.e(93799).then(a.bind(a,190418)),"@site/docs/courses/se-radio.md",190418],"5d513227":[()=>a.e(11784).then(a.bind(a,739579)),"@site/docs/devops/servers/gunicorn.md",739579],"5d52b4cf":[()=>a.e(96246).then(a.bind(a,797312)),"@site/docs/ai/computer-vision-cv/image-data-labeling-tools.md",797312],"5d5dcedd":[()=>a.e(6882).then(a.bind(a,550961)),"@site/docs/technologies/apache/apache-hadoop/hdfs.md",550961],"5da82281":[()=>a.e(52559).then(a.bind(a,900342)),"@site/docs/cloud/aws/storage/amazon-s3-storage-classes.md",900342],"5e2c94d0":[()=>a.e(93440).then(a.bind(a,216206)),"@site/docs/cloud/others/imagekit.md",216206],"5e95c892":[()=>a.e(29661).then(a.bind(a,34942)),"@theme/DocsRoot",34942],"5e9bf856":[()=>a.e(11738).then(a.bind(a,952509)),"@site/docs/ai/others-resources-interview-learning-courses.md",952509],"5e9f189c":[()=>a.e(46735).then(a.bind(a,961344)),"@site/docs/courses/google-professional-data-engineer-pde.md",961344],"5ec37034":[()=>a.e(60142).then(a.bind(a,587422)),"@site/docs/databases/sql-databases/mysql/server-sql-modes.md",587422],"5ecd8da2":[()=>a.e(38972).then(a.bind(a,81401)),"@site/docs/book-summaries/small-is-beautiful.md",81401],"5ed643d3":[()=>a.e(37244).then(a.bind(a,57846)),"@site/docs/technologies/apache/apache-spark/07-joins.md",57846],"5eef7e33":[()=>a.e(46928).then(a.bind(a,253100)),"@site/docs/mathematics/linear-algebra/alternate-coordinate-systems-bases.md",253100],"5f0b26d5":[()=>a.e(33730).then(a.bind(a,200909)),"@site/docs/languages/java/jmx.md",200909],"5f2c19b3":[()=>a.e(11527).then(a.bind(a,588831)),"@site/docs/book-summaries/books-to-read.md",588831],"5f525949":[()=>a.e(5246).then(a.bind(a,308138)),"@site/docs/devops/monitoring/linkerd.md",308138],"5f560ffc":[()=>a.e(79663).then(a.bind(a,573503)),"@site/docs/languages/sql/functions.md",573503],"5f593999":[()=>a.e(91386).then(a.bind(a,112368)),"@site/docs/algorithms/searching-sorting/lsd-radix-sort.md",112368],"5f68b7c0":[()=>a.e(21995).then(a.bind(a,520162)),"@site/docs/book-summaries/others.md",520162],"5f96041a":[()=>a.e(8500).then(a.bind(a,755671)),"@site/docs/mathematics/probability/cheatsheet.md",755671],"5fc5b75f":[()=>a.e(81930).then(a.bind(a,288710)),"@site/docs/languages/sql/sql-joins.md",288710],"5ff0b757":[()=>a.e(12066).then(a.bind(a,328220)),"@site/docs/computer-science/software-engineering/change-management.md",328220],"5ffd13b6":[()=>a.e(63484).then(a.bind(a,348330)),"@site/docs/computer-science/security/authentication/readme.md",348330],"602d0d7d":[()=>a.e(4140).then(a.bind(a,48392)),"@site/docs/languages/c++/friend-function.md",48392],"603642fd":[()=>a.e(24222).then(a.bind(a,547781)),"@site/docs/algorithms/searching-sorting/others.md",547781],"603a23e5":[()=>a.e(57290).then(a.bind(a,669521)),"@site/docs/languages/sql/dml-data-manipulation-language.md",669521],"60406a2d":[()=>a.e(38969).then(a.bind(a,278411)),"@site/docs/computer-science/security/ethical-hacking.md",278411],"605dfaa5":[()=>a.e(15630).then(a.bind(a,935333)),"@site/docs/management/roles/data.md",935333],"609de970":[()=>a.e(52753).then(a.bind(a,46557)),"@site/docs/computer-science/operating-system/concurrency-problems.md",46557],"60a177cb":[()=>a.e(43599).then(a.bind(a,801769)),"@site/docs/mathematics/probability/intro-to-probability/2.-conditioning-and-independence.md",801769],"60bec791":[()=>a.e(77779).then(a.bind(a,511746)),"@site/docs/computer-science/system-design/rate-limiting.md",511746],"60ddd735":[()=>a.e(40683).then(a.bind(a,34774)),"@site/docs/cloud/aws/aws-sns.md",34774],"612a719e":[()=>a.e(62673).then(a.bind(a,449623)),"@site/docs/computer-science/system-design/message-queues.md",449623],"612ac0dc":[()=>a.e(92147).then(a.bind(a,928952)),"@site/docs/knowledge/language/readme.md",928952],"612b9c33":[()=>a.e(16399).then(a.bind(a,762245)),"@site/docs/psychology/soft-skills/speaking-story-talking-conversation-presentation-phrases.md",762245],"613165cf":[()=>a.e(5772).then(a.bind(a,622270)),"@site/docs/networking/others/grpc/readme.md",622270],"619f16a6":[()=>a.e(61043).then(a.bind(a,716325)),"@site/docs/devops/monitoring/istio/operations.md",716325],"61cfd658":[()=>a.e(52462).then(a.bind(a,151445)),"@site/docs/frontend/react/readme.md",151445],"61fe7246":[()=>a.e(49150).then(a.bind(a,400634)),"@site/docs/technologies/apache/apache-spark/03-processing-model.md",400634],"6201253c":[()=>a.e(80501).then(a.bind(a,441863)),"@site/docs/book-summaries/the-4-hour-workweek.md",441863],"6207aca9":[()=>a.e(78256).then(a.bind(a,875479)),"@site/docs/languages/sql/join-algorithms.md",875479],"6222eaa0":[()=>a.e(82428).then(a.bind(a,729112)),"@site/docs/algorithms/string-algorithms/longest-common-prefix.md",729112],"626d4577":[()=>a.e(15020).then(a.bind(a,503856)),"@site/docs/databases/sql-databases/postgres/indexes.md",503856],"627989d0":[()=>a.e(96629).then(a.bind(a,830194)),"@site/docs/devops/terminal-bash/tools/awk.md",830194],"62806a0e":[()=>a.e(50773).then(a.bind(a,442365)),"@site/docs/mathematics/probability/intro-to-probability/readme.md",442365],"62947c5c":[()=>a.e(6898).then(a.bind(a,440273)),"@site/docs/databases/sql-databases/aws-redshift/wlm-qmr.md",440273],"6299338e":[()=>a.e(7079).then(a.bind(a,887049)),"@site/docs/computer-science/interview-question/system-design-twitter.md",887049],"62afeb7b":[()=>a.e(53929).then(a.bind(a,646532)),"@site/docs/databases/sql-databases/mysql/mysql-triggers.md",646532],"62ba3d64":[()=>a.e(34907).then(a.bind(a,662713)),"@site/docs/python/documentation/10-functional-programming-modules.md",662713],"62e37671":[()=>a.e(87816).then(a.bind(a,674205)),"@site/docs/mathematics/geometry/congruence.md",674205],"63027ac5":[()=>a.e(52790).then(a.bind(a,85544)),"@site/docs/psychology/learning/learning-intro.md",85544],"63189add":[()=>a.e(2072).then(a.bind(a,39456)),"@site/docs/algorithms/string-algorithms/intro.md",39456],"6330993a":[()=>a.e(70833).then(a.bind(a,873559)),"@site/docs/knowledge/geography/living.md",873559],"6335bbf1":[()=>a.e(58474).then(a.bind(a,226707)),"@site/docs/cloud/aws/security-identity-compliance/security-guidelines.md",226707],"6342946e":[()=>a.e(99252).then(a.bind(a,12258)),"@site/docs/courses/aws-certified-data-engineer-associate-questions.md",12258],"636d62b0":[()=>a.e(92926).then(a.bind(a,802179)),"@site/docs/frontend/react/code-commands-snippets.md",802179],"639303e5":[()=>a.e(67358).then(a.bind(a,566074)),"@site/docs/devops/devops-intro/feature-toggles-flags.md",566074],"63b89034":[()=>a.e(53804).then(a.bind(a,664940)),"@site/docs/computer-science/testing/tools.md",664940],"63faf22d":[()=>a.e(90470).then(a.bind(a,686032)),"@site/docs/computer-science/operating-system/memory-allocation.md",686032],"6429b536":[()=>a.e(77430).then(a.bind(a,926993)),"@site/docs/technologies/apache/apache-spark/10-sql-functions-datasources.md",926993],"6498e1a6":[()=>a.e(46138).then(a.bind(a,215111)),"@site/docs/databases/nosql-databases/yugabytedb.md",215111],"6499f9cf":[()=>a.e(82399).then(a.bind(a,42042)),"@site/docs/databases/nosql-databases/snowflake/commands.md",42042],"64cc5445":[()=>a.e(47897).then(a.bind(a,1895)),"@site/docs/databases/sql-databases/readme.md",1895],"64d532e9":[()=>a.e(4858).then(a.bind(a,669571)),"@site/docs/devops/kubernetes/tasks.md",669571],"64ff808b":[()=>a.e(1672).then(a.bind(a,722048)),"@site/docs/python/others/sqlalchemy/readme.md",722048],"6504fbaa":[()=>a.e(20932).then(a.bind(a,252317)),"@site/docs/book-summaries/chasing-excellence.md",252317],"651cec88":[()=>a.e(78e3).then(a.bind(a,905295)),"@site/docs/economics/accounting-for-finance/2a-income-statement-comparisons.md",905295],"656923e1":[()=>a.e(64891).then(a.bind(a,898577)),"@site/docs/languages/others/web-assembly.md",898577],"6580410b":[()=>a.e(77388).then(a.bind(a,644696)),"@site/docs/mathematics/geometry/solid-geometry.md",644696],"65816b19":[()=>a.e(12659).then(a.bind(a,181147)),"@site/docs/devops/docker/stack-swarm.md",181147],"658a35f9":[()=>a.e(27336).then(a.bind(a,678389)),"@site/docs/devops/terraform/documentation.md",678389],"65ac8f9c":[()=>a.e(28308).then(a.t.bind(a,883769,19)),"/home/runner/work/deepaksood619.github.io/deepaksood619.github.io/.docusaurus/docusaurus-plugin-content-docs/default/plugin-route-context-module-100.json",883769],"65d0c90d":[()=>a.e(87860).then(a.bind(a,500451)),"@site/docs/knowledge/quotes-proverbs/my-quotes.md",500451],"65dd4d6d":[()=>a.e(14139).then(a.bind(a,940721)),"@site/docs/devops/ansible/commands.md",940721],"65df6565":[()=>a.e(94934).then(a.bind(a,878765)),"@site/docs/computer-science/others/other.md",878765],"65eb0715":[()=>a.e(41369).then(a.bind(a,33165)),"@site/docs/courses/google-professional-cloud-architect-pca.md",33165],"6621cadd":[()=>a.e(33871).then(a.bind(a,137750)),"@site/docs/ai/numpy/cheatsheet.md",137750],"66223ea4":[()=>a.e(44899).then(a.bind(a,270537)),"@site/docs/databases/nosql-databases/snowflake/architecture.md",270537],"663af7ec":[()=>a.e(37666).then(a.bind(a,217615)),"@site/docs/data-structures/trie/readme.md",217615],"669a1614":[()=>a.e(68426).then(a.bind(a,94086)),"@site/docs/ai/numpy/ndarray-object.md",94086],"66ade0ce":[()=>a.e(65504).then(a.bind(a,219563)),"@site/docs/databases/nosql-databases/aws-dynamodb/others.md",219563],"66fc3f0b":[()=>a.e(24516).then(a.bind(a,725270)),"@site/docs/knowledge/physics/khan-academy-physics.md",725270],"670a98f0":[()=>a.e(30577).then(a.bind(a,311041)),"@site/docs/psychology/readme.md",311041],"67392b5a":[()=>a.e(51991).then(a.bind(a,775229)),"@site/docs/algorithms/general/euclidean-algorithm-gcd.md",775229],"676098b7":[()=>a.e(4751).then(a.bind(a,125712)),"@site/docs/frontend/others/angularjs/tour-of-heroes.md",125712],"6789c52e":[()=>a.e(44585).then(a.bind(a,295300)),"@site/docs/knowledge/applied-sciences/mechanical-engineering.md",295300],"6794c5b3":[()=>a.e(35601).then(a.bind(a,745605)),"@site/docs/devops/monitoring/istio/security.md",745605],"67a4b004":[()=>a.e(38894).then(a.bind(a,18148)),"@site/docs/algorithms/searching-sorting/readme.md",18148],"67dc66f3":[()=>a.e(71834).then(a.bind(a,34138)),"@site/docs/algorithms/general/knuth-shuffle.md",34138],"67eebce3":[()=>a.e(89633).then(a.bind(a,297332)),"@site/docs/mathematics/general/greek-letters-latin.md",297332],"680ea488":[()=>a.e(49849).then(a.bind(a,119817)),"@site/docs/mathematics/statistics/descriptive-statistics.md",119817],"6839b9c6":[()=>a.e(57408).then(a.bind(a,452164)),"@site/docs/ai/data-science/recommender-system.md",452164],"683d42c8":[()=>a.e(67754).then(a.bind(a,819337)),"@site/docs/algorithms/graphtheory/depth-first-search-dfs.md",819337],"683f939a":[()=>a.e(55650).then(a.bind(a,470831)),"@site/docs/databases/sql-databases/mysql/optimizing-locking-operations.md",470831],"686bf826":[()=>a.e(47435).then(a.bind(a,242733)),"@site/docs/computer-science/software-engineering/static-code-analysis.md",242733],"6872d7fe":[()=>a.e(73996).then(a.bind(a,344532)),"@site/docs/economics/finance-investing/portfolio-management-services-pms.md",344532],68807128:[()=>a.e(57709).then(a.bind(a,603075)),"@site/docs/databases/sql-databases/postgres/architecture.md",603075],"6880d025":[()=>a.e(65148).then(a.bind(a,157234)),"@site/docs/databases/nosql-databases/aws-dynamodb/intro.md",157234],"688b5067":[()=>a.e(81085).then(a.bind(a,883653)),"@site/docs/databases/sql-databases/postgres/table-partitioning.md",883653],"68996b2a":[()=>a.e(80644).then(a.bind(a,954088)),"@site/docs/decentralized-applications/ethereum/09-gas.md",954088],"689a96ff":[()=>a.e(26460).then(a.bind(a,748992)),"@site/docs/languages/sql/sql-data-types.md",748992],"689c9e8f":[()=>a.e(21152).then(a.bind(a,805901)),"@site/docs/ai/computer-vision-cv/convolutional-neural-network-cnn.md",805901],"68bbfd6b":[()=>a.e(74896).then(a.bind(a,448750)),"@site/docs/networking/protocols/http-https.md",448750],"68c56d60":[()=>a.e(63801).then(a.bind(a,618958)),"@site/docs/languages/c++/header-files.md",618958],"68e9bbf8":[()=>a.e(4043).then(a.bind(a,882836)),"@site/docs/python/others/boto-and-boto3/readme.md",882836],"68f0d228":[()=>a.e(1581).then(a.bind(a,966394)),"@site/docs/technologies/kafka/kafka-python.md",966394],"690e68e9":[()=>a.e(98428).then(a.bind(a,781458)),"@site/docs/technologies/apache/apache-flink.md",781458],"6917fb08":[()=>a.e(77693).then(a.bind(a,585276)),"@site/docs/psychology/learning/tips.md",585276],"691cbcd4":[()=>a.e(99106).then(a.bind(a,412091)),"@site/docs/courses/coursera-algorithms-part-1.md",412091],"69360fd1":[()=>a.e(98767).then(a.bind(a,967145)),"@site/docs/knowledge/biology/pregnancy-baby.md",967145],"6942c9bf":[()=>a.e(98168).then(a.bind(a,211169)),"@site/docs/networking/protocols/tcp-connection-oriented-protocol/flow-control.md",211169],"69a234da":[()=>a.e(8033).then(a.bind(a,468539)),"@site/docs/courses/course-launching-into-ml.md",468539],"69b3687f":[()=>a.e(20689).then(a.bind(a,781650)),"@site/docs/management/project-management/intro.md",781650],"69e375c4":[()=>a.e(13240).then(a.bind(a,95063)),"@site/docs/mathematics/algebra/readme.md",95063],"69ef9b92":[()=>a.e(88085).then(a.bind(a,666887)),"@site/docs/frontend/others/frontend-frameworks.md",666887],"69fcee0b":[()=>a.e(79163).then(a.bind(a,302467)),"@site/docs/cloud/aws/networking-content-delivery/intro.md",302467],"6a47c89b":[()=>a.e(96473).then(a.bind(a,921151)),"@site/docs/computer-science/operating-system/others.md",921151],"6a4c6084":[()=>a.e(79872).then(a.bind(a,654642)),"@site/docs/technologies/others/others-iot.md",654642],"6a5e37f0":[()=>a.e(16943).then(a.bind(a,763281)),"@site/docs/databases/nosql-databases/druid/cheatsheet.md",763281],"6a64f555":[()=>a.e(94305).then(a.bind(a,870663)),"@site/docs/cloud/others/linode.md",870663],"6ab080ec":[()=>a.e(88377).then(a.bind(a,976329)),"@site/docs/knowledge/geography/readme.md",976329],"6ac7e263":[()=>a.e(22914).then(a.bind(a,42949)),"@site/docs/psychology/soft-skills/prioritization-leverage.md",42949],"6aded7ab":[()=>a.e(10811).then(a.bind(a,655994)),"@site/docs/data-structures/linear-data-structure/circular-buffer.md",655994],"6af049f3":[()=>a.e(11085).then(a.bind(a,643758)),"@site/docs/data-structures/hierarchical-data-structure/binomial-heap.md",643758],"6afbc419":[()=>a.e(47478).then(a.bind(a,137101)),"@site/docs/technologies/git/others.md",137101],"6b017ff9":[()=>a.e(91319).then(a.bind(a,413980)),"@site/docs/devops/terraform/readme.md",413980],"6b10a21f":[()=>a.e(3772).then(a.bind(a,415608)),"@site/docs/ai/ml-fundamentals/neural-networks-3b1b.md",415608],"6b45f5c0":[()=>a.e(82531).then(a.bind(a,291974)),"@site/docs/computer-science/programming-concepts/programming-styles.md",291974],"6b55e504":[()=>a.e(55929).then(a.bind(a,543708)),"@site/docs/ai/ml-algorithms/logistic-regression.md",543708],"6b5e34ca":[()=>a.e(70660).then(a.bind(a,733586)),"@site/docs/cloud/others/firebase/web-push-notifications.md",733586],"6b813302":[()=>a.e(11263).then(a.bind(a,41850)),"@site/docs/networking/mqtt/publish-subscribe-pattern.md",41850],"6b95a2b6":[()=>a.e(58523).then(a.bind(a,561953)),"@site/docs/knowledge/general/readme.md",561953],"6ba4dd94":[()=>a.e(98932).then(a.bind(a,311620)),"@site/docs/databases/nosql-databases/druid/readme.md",311620],"6badbc42":[()=>a.e(1301).then(a.bind(a,873383)),"@site/docs/knowledge/physics/readme.md",873383],"6bcfcb46":[()=>a.e(26547).then(a.bind(a,321117)),"@site/docs/frontend/html-css/css-intro/mastering-css.md",321117],"6c03c634":[()=>a.e(57010).then(a.bind(a,802639)),"@site/docs/computer-science/operating-system/cpu-gpu-tpu.md",802639],"6c3e7712":[()=>a.e(89274).then(a.bind(a,94253)),"@site/docs/algorithms/advanced-algorithms/informed-search-algorithms.md",94253],"6c4260b8":[()=>a.e(26568).then(a.bind(a,120958)),"@site/docs/psychology/learning/note-taking-second-brain-pkm-zettelkasten.md",120958],"6c644ee6":[()=>a.e(5977).then(a.bind(a,786429)),"@site/docs/data-structures/hashtable/merkle-trees.md",786429],"6c880d0c":[()=>a.e(23691).then(a.bind(a,763785)),"@site/docs/python/python-intro/data-structure/readme.md",763785],"6ca67407":[()=>a.e(68152).then(a.bind(a,791358)),"@site/docs/networking/others/serialization-deserialization.md",791358],"6cbe77aa":[()=>a.e(45578).then(a.bind(a,509839)),"@site/docs/ai/data-visualization/intro.md",509839],"6ce71481":[()=>a.e(71100).then(a.bind(a,602198)),"@site/docs/networking/protocols/amqp.md",602198],"6cfbf8b2":[()=>a.e(95168).then(a.bind(a,577703)),"@site/docs/frontend/frontend-intro/google-crawlers-crawling.md",577703],"6cfeda09":[()=>a.e(13174).then(a.bind(a,883935)),"@site/docs/data-structures/trie/suffix-tree.md",883935],"6d24b816":[()=>a.e(78566).then(a.bind(a,930713)),"@site/docs/economics/corporate-finance/corporate-actions.md",930713],"6d5ae22a":[()=>a.e(72768).then(a.bind(a,926627)),"@site/docs/networking/networking-concepts/networking-fabric.md",926627],"6d5e2e77":[()=>a.e(28587).then(a.bind(a,782094)),"@site/docs/algorithms/advanced-algorithms/linear-programming.md",782094],"6d63665d":[()=>a.e(62478).then(a.bind(a,337427)),"@site/docs/networking/mqtt/paho-client.md",337427],"6dbccf3d":[()=>a.e(29473).then(a.bind(a,169270)),"@site/docs/languages/sql/dql-data-query-language/window-functions.md",169270],"6dd07d43":[()=>a.e(53842).then(a.bind(a,838592)),"@site/docs/cloud/aws/security-identity-compliance/license-scanning.md",838592],"6dd60214":[()=>a.e(81062).then(a.bind(a,359176)),"@site/docs/databases/concepts/mvcc-multiversion-concurrency-control.md",359176],"6e266e59":[()=>a.e(98906).then(a.bind(a,512598)),"@site/docs/data-structures/linear-data-structure/readme.md",512598],"6e37854b":[()=>a.e(4882).then(a.bind(a,577553)),"@site/docs/cloud/others/low-code-no-code-lcnc.md",577553],"6e5eb0e8":[()=>a.e(80130).then(a.bind(a,300404)),"@site/docs/courses/coursera-algorithms-part-2.md",300404],"6e5fed70":[()=>a.e(54696).then(a.bind(a,671114)),"@site/docs/databases/sql-databases/mysql/transaction-commit-rollback.md",671114],"6e915c29":[()=>a.e(34570).then(a.bind(a,590116)),"@site/docs/databases/nosql-databases/mongodb/readme.md",590116],"6ec50bd3":[()=>a.e(65287).then(a.bind(a,376270)),"@site/docs/book-summaries/game-changers.md",376270],"6eeeb361":[()=>a.e(96225).then(a.bind(a,768231)),"@site/docs/devops/kubernetes/architecture.md",768231],"6efea3ab":[()=>a.e(74614).then(a.bind(a,890487)),"@site/docs/databases/nosql-databases/snowflake/documentation.md",890487],"6f7fc422":[()=>a.e(10397).then(a.bind(a,154294)),"@site/docs/databases/data-warehousing/readme.md",154294],"6f84a188":[()=>a.e(61547).then(a.bind(a,245268)),"@site/docs/networking/readme.md",245268],"6f85202e":[()=>a.e(78018).then(a.bind(a,940030)),"@site/docs/devops/terminal-bash/shell-bash-script.md",940030],"70166d97":[()=>a.e(62888).then(a.bind(a,95682)),"@site/docs/about-me/projects/89-stashfin-devops-overhaul.md",95682],"701a581c":[()=>a.e(36246).then(a.bind(a,42878)),"@site/docs/ai/scikit-learn/others.md",42878],70264848:[()=>a.e(12242).then(a.bind(a,132911)),"@site/docs/economics/market-terms/futures-options-trading.md",132911],"702b4e35":[()=>a.e(53420).then(a.bind(a,680602)),"@site/docs/ai/libraries/tensorflow/core-tensorflow.md",680602],"703457dc":[()=>a.e(59140).then(a.bind(a,305675)),"@site/docs/data-structures/trie/questions.md",305675],"703bd9e4":[()=>a.e(82893).then(a.bind(a,757319)),"@site/docs/languages/php/example.md",757319],"7040c3e8":[()=>a.e(33586).then(a.bind(a,47863)),"@site/docs/databases/sql-databases/aws-aurora/monitoring.md",47863],"7049523b":[()=>a.e(34891).then(a.bind(a,192951)),"@site/docs/cloud/aws/aws-competency-program.md",192951],"70b73091":[()=>a.e(42032).then(a.bind(a,648832)),"@site/docs/languages/c++/printf.md",648832],"70ba44bd":[()=>a.e(41286).then(a.bind(a,461604)),"@site/docs/cloud/others/ticketing-tms.md",461604],"70be3284":[()=>a.e(50975).then(a.bind(a,510663)),"@site/docs/computer-science/security/cryptography/public-key-cryptography.md",510663],"70d458c7":[()=>a.e(55136).then(a.bind(a,913728)),"@site/docs/databases/data-warehousing/07-warehouse-schemas.md",913728],"70e600fc":[()=>a.e(14277).then(a.bind(a,673664)),"@site/docs/economics/accounting-for-finance/5a-accounting-inconsistency-examples.md",673664],"7135a1b3":[()=>a.e(69130).then(a.bind(a,713652)),"@site/docs/python/django/others.md",713652],"71395d0f":[()=>a.e(21178).then(a.bind(a,133598)),"@site/docs/knowledge/games/skiing-sking.md",133598],"71441b8a":[()=>a.e(71091).then(a.bind(a,894970)),"@site/docs/algorithms/general/two-stack-algorithm.md",894970],"7145b969":[()=>a.e(23527).then(a.bind(a,852788)),"@site/docs/psychology/learning/course-learning-how-to-learn.md",852788],"714954aa":[()=>a.e(8338).then(a.bind(a,12261)),"@site/docs/frontend/others/angularjs/readme.md",12261],71652160:[()=>a.e(53038).then(a.bind(a,359485)),"@site/docs/devops/kubernetes/workloads/others.md",359485],"7174a176":[()=>a.e(47593).then(a.bind(a,439164)),"@site/docs/cloud/aws/aws-rekognition.md",439164],"7185023f":[()=>a.e(55086).then(a.bind(a,137787)),"@site/docs/management/roles/engineering-manager.md",137787],"719486b9":[()=>a.e(41510).then(a.bind(a,372111)),"@site/docs/ai/ml-algorithms/id3-c45-and-chaid.md",372111],"71a28558":[()=>a.e(90821).then(a.bind(a,774118)),"@site/docs/python/others/flask/readme.md",774118],"71a747d5":[()=>a.e(82619).then(a.bind(a,644018)),"@site/docs/devops/kubernetes/reference/readme.md",644018],"71b2e7a8":[()=>a.e(22885).then(a.bind(a,536528)),"@site/docs/frontend/frontend-intro/ui-ux-ixd-design-frontend.md",536528],"71c3ee4d":[()=>a.e(59987).then(a.bind(a,603349)),"@site/docs/mathematics/general/numbers.md",603349],"71c6b44d":[()=>a.e(23715).then(a.bind(a,870083)),"@site/docs/computer-science/operating-system/microprocessor.md",870083],"71ea1317":[()=>a.e(14963).then(a.bind(a,56116)),"@site/docs/databases/sql-databases/aws-redshift/others.md",56116],"720bddc5":[()=>a.e(81826).then(a.bind(a,146243)),"@site/docs/ai/big-data/design-of-zookeeper.md",146243],"721427d4":[()=>a.e(80253).then(a.bind(a,333513)),"@site/docs/frontend/html-css/css-intro/readme.md",333513],"721f546d":[()=>a.e(64137).then(a.bind(a,836826)),"@site/docs/psychology/soft-skills/asking-right-questions.md",836826],"7265e027":[()=>a.e(92245).then(a.bind(a,155589)),"@site/docs/mathematics/geometry/readme.md",155589],"7268d5e6":[()=>a.e(43812).then(a.bind(a,917229)),"@site/docs/computer-science/security/systems-protection.md",917229],"72764aba":[()=>a.e(78576).then(a.bind(a,241349)),"@site/docs/computer-science/operating-system/cache-access-patterns.md",241349],"728b5e98":[()=>a.e(26312).then(a.bind(a,75132)),"@site/docs/databases/sql-databases/amazon-aurora-vs-rds.md",75132],"72be19ad":[()=>a.e(75356).then(a.bind(a,574519)),"@site/docs/frontend/others/gatsby.md",574519],"7314ffce":[()=>a.e(90083).then(a.bind(a,769762)),"@site/docs/computer-science/system-design/readme.md",769762],"734a814c":[()=>a.e(24954).then(a.bind(a,102675)),"@site/docs/book-summaries/doing-good-better.md",102675],"7387f4c5":[()=>a.e(92744).then(a.bind(a,798858)),"@site/docs/algorithms/general/appel-algorithm.md",798858],"73dcd7cb":[()=>a.e(77213).then(a.bind(a,471656)),"@site/docs/ai/big-data/design-of-hbase.md",471656],"73fb795b":[()=>a.e(91330).then(a.bind(a,875008)),"@site/docs/technologies/apache/celery/readme.md",875008],"741277d2":[()=>a.e(91949).then(a.bind(a,486118)),"@site/docs/knowledge/general/science.md",486118],"7423b75e":[()=>a.e(74884).then(a.bind(a,467651)),"@site/docs/python/others/flask/documentation.md",467651],"744a4cbd":[()=>a.e(76279).then(a.bind(a,247222)),"@site/docs/ai/big-data/data-masking.md",247222],"74da846a":[()=>a.e(90991).then(a.bind(a,814873)),"@site/docs/ai/move-37/quizzes.md",814873],"74f22757":[()=>a.e(36759).then(a.bind(a,707923)),"@site/docs/decentralized-applications/coins-tokens-chains/stable-coins.md",707923],"74f8b45c":[()=>a.e(42287).then(a.bind(a,608548)),"@site/docs/databases/sql-databases/aws-redshift/intro.md",608548],"74fe9977":[()=>a.e(86477).then(a.bind(a,186739)),"@site/docs/technologies/apache/apache-pulsar.md",186739],"75111f90":[()=>a.e(23826).then(a.bind(a,917301)),"@site/docs/ai/computer-vision-cv/image-formats.md",917301],"754cda22":[()=>a.e(11354).then(a.bind(a,304190)),"@site/docs/databases/nosql-databases/mongodb/data-types.md",304190],"75735dbc":[()=>a.e(36185).then(a.bind(a,306460)),"@site/docs/book-summaries/the-22-immutable-laws-of-branding.md",306460],75782088:[()=>a.e(99258).then(a.bind(a,692662)),"@site/docs/about-me/ideas/improvements-feedbacks.md",692662],"758bff06":[()=>a.e(66565).then(a.bind(a,412058)),"@site/docs/mathematics/statistics/confidence-intervals.md",412058],"75de83c9":[()=>a.e(28561).then(a.bind(a,132289)),"@site/docs/knowledge/language/grammer-vocabulary.md",132289],"7623b8b7":[()=>a.e(25065).then(a.bind(a,34333)),"@site/docs/ai/scikit-learn/commands.md",34333],"7628f386":[()=>a.e(96234).then(a.bind(a,348803)),"@site/docs/economics/investment-banking.md",348803],"762e158e":[()=>a.e(68664).then(a.bind(a,842798)),"@site/docs/databases/nosql-databases/snowflake/ingestion.md",842798],"7637547d":[()=>a.e(26698).then(a.bind(a,625190)),"@site/docs/devops/terminal-bash/tools/crontab.md",625190],"766bfcfe":[()=>a.e(10310).then(a.bind(a,314411)),"@site/docs/databases/nosql-databases/aws-dynamodb/core-components.md",314411],"76bbad79":[()=>a.e(69955).then(a.bind(a,398066)),"@site/docs/cloud/aws/aws-database-migration-service-dms.md",398066],"76fc6a7f":[()=>a.e(9184).then(a.bind(a,972557)),"@site/docs/devops/others/other-tools.md",972557],"7700cd4a":[()=>a.e(61735).then(a.bind(a,346891)),"@site/docs/mathematics/algebra/complex-numbers.md",346891],77466948:[()=>a.e(64469).then(a.bind(a,721535)),"@site/docs/networking/others/grpc/intro.md",721535],"7757646b":[()=>a.e(9228).then(a.bind(a,539616)),"@site/docs/devops/monitoring/prometheus/querying.md",539616],77581771:[()=>a.e(66807).then(a.bind(a,769083)),"@site/docs/languages/frameworks/comparison.md",769083],"775ae8c1":[()=>a.e(73581).then(a.bind(a,444366)),"@site/docs/ai/computer-vision-cv/readme.md",444366],"77872c33":[()=>a.e(95837).then(a.bind(a,240466)),"@site/docs/languages/php/syntax.md",240466],"77954a36":[()=>a.e(24637).then(a.bind(a,821978)),"@site/docs/decentralized-applications/tokenomics.md",821978],"77a14a30":[()=>a.e(68238).then(a.bind(a,238285)),"@site/docs/algorithms/dynamic-programming/intro.md",238285],"77c0d94a":[()=>a.e(70214).then(a.bind(a,424327)),"@site/docs/about-me/ideas/education.md",424327],"77d9c93f":[()=>a.e(65106).then(a.bind(a,225493)),"@site/docs/computer-science/programming-paradigms/structural-proxy.md",225493],"77f499a2":[()=>a.e(78980).then(a.bind(a,214275)),"@site/docs/technologies/kafka/kafka-consumers.md",214275],"782182af":[()=>a.e(54120).then(a.bind(a,195653)),"@site/docs/book-summaries/how-to-be-a-stoic.md",195653],"783a2833":[()=>a.e(84619).then(a.bind(a,383107)),"@site/docs/frontend/js-javascript/libraries.md",383107],"784ad6c1":[()=>a.e(49804).then(a.bind(a,697474)),"@site/docs/devops/devops-intro/application-management.md",697474],"78560c30":[()=>a.e(96677).then(a.bind(a,947932)),"@site/docs/computer-science/security/authentication/two-2fa.md",947932],"7860eb7c":[()=>a.e(68183).then(a.bind(a,538350)),"@site/docs/ai/data-visualization/tableau/dashboarding.md",538350],"78816aa0":[()=>a.e(26634).then(a.bind(a,835269)),"@site/docs/databases/sql-databases/mysql/administration-configuration.md",835269],"789d3e71":[()=>a.e(23294).then(a.bind(a,569350)),"@site/docs/data-structures/graph/undirected-graph.md",569350],"78bc23b8":[()=>a.e(45440).then(a.bind(a,442079)),"@site/docs/languages/php/codeigniter/mvc.md",442079],"78c89bb2":[()=>a.e(68041).then(a.bind(a,541741)),"@site/docs/management/decision-making/ethics.md",541741],"78d43c3f":[()=>a.e(20985).then(a.bind(a,927234)),"@site/docs/management/readme.md",927234],"7915bd23":[()=>a.e(99360).then(a.bind(a,514875)),"@site/docs/devops/monitoring/prometheus/alert-manager.md",514875],"792c7fc7":[()=>a.e(18862).then(a.bind(a,747422)),"@site/docs/data-structures/hierarchical-data-structure/space-partitioning-trees.md",747422],"7931aad1":[()=>a.e(93986).then(a.bind(a,514224)),"@site/docs/devops/terminal-bash/tools/mosh.md",514224],"79374ca6":[()=>a.e(94385).then(a.bind(a,121937)),"@site/docs/computer-science/security/concepts.md",121937],"795eb98b":[()=>a.e(97508).then(a.bind(a,19929)),"@site/docs/technologies/apache/apache-spark/02-spark-modules.md",19929],"797f1027":[()=>a.e(17058).then(a.bind(a,222986)),"@site/docs/decentralized-applications/coins-tokens-chains/wallets.md",222986],"7986d8e3":[()=>a.e(40046).then(a.bind(a,517832)),"@site/docs/ai/llm/llm-tuning.md",517832],"79aa89ac":[()=>a.e(39103).then(a.bind(a,35354)),"@site/docs/decentralized-applications/coins-tokens-chains/bip39.md",35354],"7a503a0f":[()=>a.e(72240).then(a.bind(a,817603)),"@site/docs/management/customer-engagement-cx.md",817603],"7a67065e":[()=>a.e(89161).then(a.bind(a,190005)),"@site/docs/languages/frameworks/android/readme.md",190005],"7a9f1ea5":[()=>a.e(3483).then(a.bind(a,14804)),"@site/docs/knowledge/others/news-problems.md",14804],"7acf92af":[()=>a.e(31454).then(a.bind(a,133343)),"@site/docs/computer-science/software-engineering/complexity.md",133343],"7ae0073b":[()=>a.e(40657).then(a.bind(a,286598)),"@site/docs/mathematics/combinatorics/readme.md",286598],"7aecd2cf":[()=>a.e(32910).then(a.bind(a,278789)),"@site/docs/ai/data-visualization/tableau/data-sources.md",278789],"7af18b98":[()=>a.e(88066).then(a.bind(a,447749)),"@site/docs/computer-science/testing/readme.md",447749],"7af2079c":[()=>a.e(55239).then(a.bind(a,226737)),"@site/docs/computer-science/system-design/n-tier-application-architecture.md",226737],"7b2249c0":[()=>a.e(70293).then(a.bind(a,62391)),"@site/docs/ai/big-data/data.md",62391],"7b370c07":[()=>a.e(93929).then(a.bind(a,974100)),"@site/docs/algorithms/searching-sorting/shell-sort.md",974100],"7b6cc373":[()=>a.e(38181).then(a.bind(a,317862)),"@site/docs/networking/networking-concepts/forward-error-correction.md",317862],"7b790763":[()=>a.e(70259).then(a.bind(a,853858)),"@site/docs/management/sales.md",853858],"7b90096e":[()=>a.e(20090).then(a.bind(a,816835)),"@site/docs/management/business/business-terms.md",816835],"7baab2f6":[()=>a.e(98971).then(a.bind(a,737030)),"@site/docs/psychology/intro.md",737030],"7be38540":[()=>a.e(65958).then(a.bind(a,129258)),"@site/docs/databases/sql-databases/mysql/mysql-heatwave.md",129258],"7be95a5f":[()=>a.e(44058).then(a.bind(a,648256)),"@site/docs/mathematics/probability/probability-distribution.md",648256],"7bfd1537":[()=>a.e(79003).then(a.bind(a,246515)),"@site/docs/technologies/apache/apache-spark/readme.md",246515],"7c03a6c4":[()=>a.e(58418).then(a.bind(a,90726)),"@site/docs/computer-science/iot/readme.md",90726],"7c2e5d0a":[()=>a.e(46943).then(a.bind(a,920840)),"@site/docs/ai/ml-algorithms/regularization.md",920840],"7c9ed19a":[()=>a.e(76338).then(a.bind(a,415789)),"@site/docs/data-structures/linear-data-structure/dequeue.md",415789],"7ca1e398":[()=>a.e(59443).then(a.bind(a,560890)),"@site/docs/ai/deep-learning/neural-network-and-deep-learning.md",560890],"7cbf9763":[()=>a.e(11103).then(a.bind(a,552605)),"@site/docs/data-structures/graph/digraphs-directed-graphs.md",552605],"7cdf9dba":[()=>a.e(36506).then(a.bind(a,557970)),"@site/docs/knowledge/quotes-proverbs/tips.md",557970],"7cf3e6a7":[()=>a.e(70035).then(a.bind(a,129856)),"@site/docs/algorithms/data-compression/others.md",129856],"7d18aa40":[()=>a.e(13028).then(a.bind(a,624785)),"@site/docs/knowledge/law/constitution-of-india/constitution.md",624785],"7d1c2754":[()=>a.e(7329).then(a.bind(a,83574)),"@site/docs/ai/big-data/data-quality.md",83574],"7d47afa3":[()=>a.e(13642).then(a.bind(a,396864)),"@site/docs/book-summaries/books-blinkist-productivity.md",396864],"7d5cdf9f":[()=>a.e(95045).then(a.bind(a,570380)),"@site/docs/about-me/paper-publications-references.md",570380],"7d681db4":[()=>a.e(92478).then(a.bind(a,835039)),"@site/docs/databases/sql-databases/mysql/mysql-data-types.md",835039],"7d6ea404":[()=>a.e(15106).then(a.bind(a,307241)),"@site/docs/databases/nosql-databases/mongodb/indexes.md",307241],"7dacacf1":[()=>a.e(92701).then(a.bind(a,460188)),"@site/docs/decentralized-applications/coins-tokens-chains/thorchain.md",460188],"7df8181a":[()=>a.e(39565).then(a.bind(a,336811)),"@site/docs/languages/java/others.md",336811],"7dfedd3c":[()=>a.e(45392).then(a.bind(a,82025)),"@site/docs/courses/self-driving-nanodegree.md",82025],"7dffbc71":[()=>a.e(94905).then(a.bind(a,663903)),"@site/docs/python/django/architecture.md",663903],"7e06d686":[()=>a.e(56949).then(a.bind(a,373682)),"@site/docs/mathematics/probability/intro-to-probability/9.-conditioning-on-an-event-multiple-continuous-rv.md",373682],"7e4aa464":[()=>a.e(66429).then(a.bind(a,574360)),"@site/docs/technologies/databricks/03-optimizations.md",574360],"7e798db7":[()=>a.e(37088).then(a.bind(a,576475)),"@site/docs/devops/docker/dockerfile-example.md",576475],"7e813a61":[()=>a.e(13617).then(a.bind(a,444756)),"@site/docs/psychology/intelligence.md",444756],"7e86282a":[()=>a.e(6918).then(a.bind(a,187800)),"@site/docs/management/books-blinkist-management.md",187800],"7ef63df3":[()=>a.e(28600).then(a.bind(a,359435)),"@site/docs/databases/sql-databases/mysql/documentation.md",359435],"7f1074fd":[()=>a.e(35885).then(a.bind(a,224433)),"@site/docs/python/documentation/04-built-in-types.md",224433],"7f216fd1":[()=>a.e(16116).then(a.bind(a,274803)),"@site/docs/about-me/projects/55-azure-social-media-analytics.md",274803],"7f3d2bac":[()=>a.e(71329).then(a.bind(a,185299)),"@site/docs/computer-science/programming-paradigms/behavioral-iterator.md",185299],"7fbd341e":[()=>a.e(84567).then(a.bind(a,933627)),"@site/docs/python/python-intro/classes.md",933627],"7fc3e974":[()=>a.e(91934).then(a.bind(a,466663)),"@site/docs/cloud/others/openstack.md",466663],"7fe3aeb7":[()=>a.e(1295).then(a.bind(a,439864)),"@site/docs/databases/nosql-databases/comparisions.md",439864],"7fe4421f":[()=>a.e(32995).then(a.bind(a,796452)),"@site/docs/computer-science/operating-system/raid.md",796452],"800fd7fb":[()=>a.e(70238).then(a.bind(a,465457)),"@site/docs/cloud/others/azure/readme.md",465457],"8037218a":[()=>a.e(53381).then(a.bind(a,963023)),"@site/docs/python/python-intro/exceptions.md",963023],"8046779a":[()=>a.e(84883).then(a.bind(a,678370)),"@site/docs/ai/move-37/1-markov-decision-process.md",678370],"80638ca6":[()=>a.e(87306).then(a.bind(a,598364)),"@site/docs/knowledge/geography/others.md",598364],"806c9b80":[()=>a.e(2150).then(a.bind(a,19792)),"@site/docs/algorithms/advanced-algorithms/automated-planning-and-scheduling.md",19792],"8077cbeb":[()=>a.e(53783).then(a.bind(a,213080)),"@site/docs/book-summaries/do-hard-things.md",213080],"808fa3d3":[()=>a.e(40799).then(a.bind(a,438722)),"@site/docs/ai/move-37/syllabus.md",438722],"8096a2bf":[()=>a.e(19110).then(a.bind(a,153849)),"@site/docs/algorithms/string-algorithms/knuth-morris-pratt.md",153849],"80be8711":[()=>a.e(54848).then(a.bind(a,223897)),"@site/docs/databases/sql-databases/mysql/partitioning.md",223897],"80d8c8ec":[()=>a.e(81190).then(a.bind(a,45726)),"@site/docs/languages/php/codeigniter/basic-concepts.md",45726],81439249:[()=>a.e(85042).then(a.bind(a,162485)),"@site/docs/devops/ides/vscode-vs-code.md",162485],81469976:[()=>a.e(7679).then(a.bind(a,622090)),"@site/docs/economics/market-terms/wyckoff-method.md",622090],"816a3a30":[()=>a.e(46841).then(a.bind(a,933929)),"@site/docs/psychology/soft-skills/speaking-phrases-quotes.md",933929],"816fec92":[()=>a.e(81134).then(a.bind(a,562059)),"@site/docs/ai/ml-algorithms/decision-tree.md",562059],"818d4c2a":[()=>a.e(61024).then(a.bind(a,803567)),"@site/docs/knowledge/biology/nutrition/plants-gardening.md",803567],"81ed39f4":[()=>a.e(45191).then(a.bind(a,990988)),"@site/docs/knowledge/law/mcat.md",990988],"820795a8":[()=>a.e(75404).then(a.bind(a,437491)),"@site/docs/algorithms/bit-manipulation/general.md",437491],"82129b32":[()=>a.e(43354).then(a.bind(a,788976)),"@site/docs/management/product-management/product-terms-saas.md",788976],"8231b121":[()=>a.e(25105).then(a.bind(a,168086)),"@site/docs/ai/llm/readme.md",168086],"8231ba4a":[()=>a.e(97809).then(a.bind(a,326856)),"@site/docs/devops/ansible/readme.md",326856],"8266ae64":[()=>a.e(24190).then(a.bind(a,252240)),"@site/docs/technologies/kafka/intro-to-kafka.md",252240],"8297294e":[()=>a.e(99162).then(a.bind(a,60353)),"@site/docs/devops/terraform/examples.md",60353],"82dbdf0c":[()=>a.e(41052).then(a.bind(a,35023)),"@site/docs/algorithms/graphtheory/resources.md",35023],"82dcf22d":[()=>a.e(68480).then(a.bind(a,741557)),"@site/docs/frontend/others/angularjs/intro.md",741557],"82e44baa":[()=>a.e(7009).then(a.bind(a,9155)),"@site/docs/languages/php/codeigniter/helpers-functions.md",9155],"82e8462a":[()=>a.e(39087).then(a.bind(a,986725)),"@site/docs/ai/ml-fundamentals/andrew-ng.md",986725],"830269d7":[()=>a.e(86915).then(a.bind(a,351877)),"@site/docs/economics/finance-investing/stocks-equity.md",351877],"833a5067":[()=>a.e(32923).then(a.bind(a,796374)),"@site/docs/networking/mqtt/mqtt-sn.md",796374],"8355551c":[()=>a.e(56526).then(a.bind(a,284600)),"@site/docs/technologies/elasticsearch/analysis-and-analyzers.md",284600],83636489:[()=>a.e(16525).then(a.bind(a,377032)),"@site/docs/devops/kubernetes/outline-documentation.md",377032],"8399427c":[()=>a.e(89843).then(a.bind(a,173171)),"@site/docs/algorithms/graphtheory/breadth-first-search-bfs.md",173171],"83a99440":[()=>a.e(14817).then(a.bind(a,720338)),"@site/docs/cloud/aws/compute/readme.md",720338],"83e8996f":[()=>a.e(12419).then(a.bind(a,476120)),"@site/docs/algorithms/string-algorithms/brute-force.md",476120],"83f26e6f":[()=>a.e(115).then(a.bind(a,630638)),"@site/docs/databases/concepts/core-concepts.md",630638],"841d8837":[()=>a.e(96799).then(a.bind(a,742940)),"@site/docs/computer-science/programming-concepts/cohesion-and-coupling.md",742940],"84489b48":[()=>a.e(73419).then(a.bind(a,174309)),"@site/docs/data-structures/hierarchical-data-structure/fibonacci-heap.md",174309],"8464f6bf":[()=>a.e(91226).then(a.bind(a,711086)),"@site/docs/technologies/apache/airflow/parallelism.md",711086],84718798:[()=>a.e(65341).then(a.bind(a,264684)),"@site/docs/languages/frameworks/flutter.md",264684],"84fc0301":[()=>a.e(67892).then(a.bind(a,554592)),"@site/docs/databases/data-warehousing/08-data-lake.md",554592],"85261a53":[()=>a.e(35262).then(a.bind(a,619780)),"@site/docs/technologies/kafka/kafka-architecture.md",619780],"85396d75":[()=>a.e(83671).then(a.bind(a,51619)),"@site/docs/knowledge/biology/diseases-tests.md",51619],"85753f82":[()=>a.e(52941).then(a.bind(a,553538)),"@site/docs/devops/kubernetes/operators.md",553538],"858cd045":[()=>a.e(34862).then(a.bind(a,319533)),"@site/docs/ai/ml-algorithms/regression.md",319533],"85ab6017":[()=>a.e(5190).then(a.bind(a,24032)),"@site/docs/ai/ml-algorithms/linear-regression.md",24032],"85c8454f":[()=>a.e(54416).then(a.bind(a,50279)),"@site/docs/devops/kubernetes/services-loadbalancing-and-networking/services.md",50279],"85c9929b":[()=>a.e(34791).then(a.bind(a,214141)),"@site/docs/networking/networking-concepts/cidr.md",214141],"85fd4c43":[()=>a.e(59245).then(a.bind(a,794677)),"@site/docs/computer-science/interview-question/readme.md",794677],"862708ae":[()=>a.e(81051).then(a.bind(a,27360)),"@site/docs/technologies/apache/data-pipeline-architecture.md",27360],86678410:[()=>a.e(51778).then(a.bind(a,971956)),"@site/docs/cloud/aws/security-identity-compliance/compliance.md",971956],"86a554ed":[()=>a.e(17845).then(a.bind(a,986506)),"@site/docs/databases/nosql-databases/druid/others.md",986506],"86b44446":[()=>a.e(41910).then(a.bind(a,732527)),"@site/docs/cloud/aws/amazon-pinpoint.md",732527],"86cd1af6":[()=>a.e(70057).then(a.bind(a,307526)),"@site/docs/technologies/databricks/10-medallion-architecture.md",307526],"86cf737f":[()=>a.e(93113).then(a.bind(a,715579)),"@site/docs/frontend/frontend-intro/frontend-architecture.md",715579],"86d9fe99":[()=>a.e(59542).then(a.bind(a,255893)),"@site/docs/devops/monitoring/others.md",255893],"86de0ba0":[()=>a.e(52774).then(a.bind(a,740177)),"@site/docs/ai/nlp/nltk.md",740177],"86dfc8a2":[()=>a.e(40083).then(a.bind(a,124353)),"@site/docs/databases/nosql-databases/snowflake/terms.md",124353],"86f2d571":[()=>a.e(77476).then(a.bind(a,964170)),"@site/docs/knowledge/applied-sciences/hvac-systems.md",964170],"871c93ec":[()=>a.e(84534).then(a.bind(a,324565)),"@site/docs/ai/libraries/ml-libraries.md",324565],"87329e05":[()=>a.e(57268).then(a.bind(a,389005)),"@site/docs/mathematics/geometry/similarity.md",389005],"873b29d7":[()=>a.e(67557).then(a.bind(a,307793)),"@site/docs/mathematics/probability/random-variables.md",307793],"876c2df5":[()=>a.e(8492).then(a.bind(a,489915)),"@site/docs/book-summaries/how-to-make-money-in-stocks.md",489915],"87a21a5b":[()=>a.e(8339).then(a.bind(a,527963)),"@site/docs/mathematics/general/discrete-mathematics.md",527963],"87b530a5":[()=>a.e(21012).then(a.bind(a,958070)),"@site/docs/technologies/apache/apache-hadoop/readme.md",958070],"8816910b":[()=>a.e(47752).then(a.bind(a,468336)),"@site/docs/databases/nosql-databases/redis/scaling.md",468336],"882fc495":[()=>a.e(95393).then(a.bind(a,276350)),"@site/docs/devops/others/kong.md",276350],"889a4719":[()=>a.e(59162).then(a.bind(a,204808)),"@site/docs/computer-science/programming-paradigms/creational-object-pool.md",204808],"88c2aa10":[()=>a.e(16384).then(a.bind(a,954960)),"@site/docs/management/product-management/behavioral-design-economics.md",954960],"88dba366":[()=>a.e(46805).then(a.bind(a,578576)),"@site/docs/management/project-product-business-tools-saas.md",578576],"88e954ab":[()=>a.e(94907).then(a.bind(a,996587)),"@site/docs/ai/numpy/data-types.md",996587],"89403e49":[()=>a.e(89847).then(a.bind(a,388177)),"@site/docs/databases/data-warehousing/11-dw-databases.md",388177],"894d1bb6":[()=>a.e(53772).then(a.bind(a,473686)),"@site/docs/mathematics/probability/intro-to-probability/7-conditioning-on-a-rv-independence-of-rv.md",473686],"896d8003":[()=>a.e(49966).then(a.bind(a,57926)),"@site/docs/ai/llm/interview-questions.md",57926],"896dd48a":[()=>a.e(87508).then(a.bind(a,913369)),"@site/docs/networking/others/readme.md",913369],"899474e8":[()=>a.e(23712).then(a.bind(a,361567)),"@site/docs/frontend/html-css/component-libraries/readme.md",361567],"89cf070d":[()=>a.e(99286).then(a.bind(a,259978)),"@site/docs/book-summaries/the-uninhabitable-earth.md",259978],"89d84df5":[()=>a.e(24288).then(a.bind(a,972992)),"@site/docs/decentralized-applications/ethereum/42-block-proposals.md",972992],"8a195da4":[()=>a.e(33390).then(a.bind(a,536127)),"@site/docs/ai/model-evaluation/bias-variance-trade-off.md",536127],"8a2255aa":[()=>a.e(5445).then(a.bind(a,756831)),"@site/docs/computer-science/operating-system/memory.md",756831],"8a3bbc8b":[()=>a.e(5475).then(a.bind(a,884098)),"@site/docs/technologies/kafka/strimzi.md",884098],"8a41d351":[()=>a.e(55903).then(a.bind(a,823118)),"@site/docs/data-structures/hierarchical-data-structure/tree-ds.md",823118],"8a62acc1":[()=>a.e(30073).then(a.bind(a,587739)),"@site/docs/computer-science/programming-paradigms/behavioral-mediator.md",587739],"8a82d9fe":[()=>a.e(26201).then(a.bind(a,341012)),"@site/docs/economics/mutual-funds/nifty-indexes-indices.md",341012],"8a965159":[()=>a.e(41006).then(a.bind(a,356981)),"@site/docs/computer-science/interview-question/system-design-google-search.md",356981],"8aaf9cdd":[()=>a.e(4884).then(a.bind(a,629361)),"@site/docs/decentralized-applications/coins-tokens-chains/coin-token-intro.md",629361],"8ab81681":[()=>a.e(38186).then(a.bind(a,536223)),"@site/docs/about-me/personality.md",536223],"8ac90bb3":[()=>a.e(3140).then(a.bind(a,252637)),"@site/docs/ai/model-evaluation/others.md",252637],"8acf2472":[()=>a.e(95448).then(a.bind(a,51393)),"@site/docs/databases/data-warehousing/04-fact-dimension-tables.md",51393],"8ae600d9":[()=>a.e(16911).then(a.bind(a,958485)),"@site/docs/ai/ml-algorithms/clustering.md",958485],"8ae60386":[()=>a.e(75270).then(a.bind(a,306136)),"@site/docs/technologies/databricks/99-others.md",306136],"8afa3b86":[()=>a.e(63781).then(a.bind(a,289597)),"@site/docs/technologies/brokers/volttron.md",289597],"8afe6a17":[()=>a.e(96038).then(a.bind(a,273383)),"@site/docs/knowledge/biology/exercise-stretching/gym.md",273383],"8b0140bf":[()=>a.e(97853).then(a.bind(a,368052)),"@site/docs/economics/mental-models/economics-mental-models.md",368052],"8b025ba6":[()=>a.e(59147).then(a.bind(a,40811)),"@site/docs/computer-science/operating-system/memory-layout.md",40811],"8b0e7260":[()=>a.e(28299).then(a.bind(a,767544)),"@site/docs/knowledge/biology/nutrition/food.md",767544],"8b597181":[()=>a.e(61782).then(a.bind(a,175111)),"@site/docs/languages/java/lambda-expressions.md",175111],"8b5f79e8":[()=>a.e(46959).then(a.bind(a,783513)),"@site/docs/languages/sql/sql-views.md",783513],"8b6124af":[()=>a.e(21787).then(a.bind(a,424451)),"@site/docs/languages/golang/concepts.md",424451],"8b702b97":[()=>a.e(82975).then(a.bind(a,448850)),"@site/docs/networking/networking-concepts/routing.md",448850],"8b847007":[()=>a.e(64038).then(a.bind(a,558186)),"@site/docs/data-structures/hashtable/verkle-trees.md",558186],"8b968091":[()=>a.e(79611).then(a.bind(a,784486)),"@site/docs/ai/pandas/cheatsheet.md",784486],"8bdc5288":[()=>a.e(1498).then(a.bind(a,397854)),"@site/docs/computer-science/operating-system/unix-linux.md",397854],"8c339ad7":[()=>a.e(69004).then(a.bind(a,713494)),"@site/docs/algorithms/dynamic-programming/basic-gold-mines.md",713494],"8c34fd48":[()=>a.e(26474).then(a.bind(a,370670)),"@site/docs/about-me/projects/85-stashfin-twitter-bot.md",370670],"8c37f3f4":[()=>a.e(19469).then(a.bind(a,722387)),"@site/docs/book-summaries/good-economics-for-hard-times.md",722387],"8c3e3106":[()=>a.e(25384).then(a.bind(a,369252)),"@site/docs/networking/others/5g-wireless-networking.md",369252],"8c3fa947":[()=>a.e(40021).then(a.bind(a,725207)),"@site/docs/networking/protocols/openthread.md",725207],"8c417202":[()=>a.e(37514).then(a.bind(a,963939)),"@site/docs/languages/others/markdown.md",963939],"8c55a5b8":[()=>a.e(63532).then(a.bind(a,593982)),"@site/docs/frontend/html-css/css-intro/css-transitions.md",593982],"8c6028c4":[()=>a.e(56724).then(a.bind(a,520535)),"@site/docs/technologies/others/fasttag.md",520535],"8c6d14e4":[()=>a.e(36553).then(a.bind(a,746734)),"@site/docs/book-summaries/leaders-eat-last.md",746734],"8c7af520":[()=>a.e(71487).then(a.bind(a,592170)),"@site/docs/computer-science/programming-paradigms/structural-decorator.md",592170],"8c8af67a":[()=>a.e(87991).then(a.bind(a,313217)),"@site/docs/book-summaries/13-things-mentally-strong-people-dont-do.md",313217],"8cc91518":[()=>a.e(76369).then(a.bind(a,468909)),"@site/docs/computer-science/security/authentication/intro.md",468909],"8ceef37b":[()=>a.e(94759).then(a.bind(a,128672)),"@site/docs/decentralized-applications/ethereum/arbitrum.md",128672],"8cf3f748":[()=>a.e(46187).then(a.bind(a,40170)),"@site/docs/technologies/others/presto.md",40170],"8d07f24f":[()=>a.e(19841).then(a.bind(a,147399)),"@site/docs/devops/monitoring/prometheus/prometheus-architecture.md",147399],"8d12da27":[()=>a.e(50379).then(a.bind(a,872458)),"@site/docs/databases/sql-databases/aws-aurora/configurations-optimizations-best-practices.md",872458],"8d394e25":[()=>a.e(550).then(a.bind(a,82950)),"@site/docs/ai/numpy/intro.md",82950],"8d481a5e":[()=>a.e(48740).then(a.bind(a,574760)),"@site/docs/management/people-management/types-of-leadership.md",574760],"8da26f12":[()=>a.e(89733).then(a.bind(a,553282)),"@site/docs/about-me/projects/70-interview-datainsight-alerting-engine.md",553282],"8dc8974d":[()=>a.e(72758).then(a.bind(a,467391)),"@site/docs/devops/monitoring/metrics.md",467391],"8df7cad9":[()=>a.e(78583).then(a.bind(a,320355)),"@site/docs/python/django/readme.md",320355],"8df809d1":[()=>a.e(91095).then(a.bind(a,403357)),"@site/docs/technologies/brokers/emqtt/plugins.md",403357],"8e01669f":[()=>a.e(77146).then(a.bind(a,723938)),"@site/docs/devops/servers/readme.md",723938],"8e123571":[()=>a.e(33913).then(a.bind(a,214952)),"@site/docs/networking/networking-concepts/questions.md",214952],"8e38f93f":[()=>a.e(53050).then(a.bind(a,706994)),"@site/docs/devops/kubernetes/design-patterns.md",706994],"8e5a6dc1":[()=>a.e(151).then(a.bind(a,892161)),"@site/docs/data-structures/trie/r-way-tries.md",892161],"8e5eea98":[()=>a.e(73486).then(a.bind(a,737977)),"@site/docs/networking/mqtt/mqtt-over-websockets.md",737977],"8e79da48":[()=>a.e(97344).then(a.bind(a,525245)),"@site/docs/computer-science/security/firewall-waf.md",525245],"8ea30247":[()=>a.e(39716).then(a.bind(a,651960)),"@site/docs/languages/others/toml.md",651960],"8eb74d9f":[()=>a.e(1425).then(a.bind(a,892170)),"@site/docs/ai/computer-vision-cv/examples.md",892170],"8ed1fd85":[()=>a.e(91741).then(a.bind(a,692387)),"@site/docs/languages/sql/sql-examples-queries.md",692387],"8eda4959":[()=>a.e(4590).then(a.bind(a,193773)),"@site/docs/mathematics/general/conjecture.md",193773],"8edef195":[()=>a.e(75335).then(a.bind(a,745040)),"@site/docs/computer-science/security/authentication/oauth.md",745040],"8f1e831b":[()=>a.e(40346).then(a.bind(a,842230)),"@site/docs/book-summaries/principles.md",842230],"8f30f83a":[()=>a.e(3293).then(a.bind(a,824354)),"@site/docs/decentralized-applications/tools.md",824354],"8f39ed4d":[()=>a.e(84497).then(a.bind(a,702181)),"@site/docs/algorithms/searching-sorting/external-sort.md",702181],"8fa71d01":[()=>a.e(69940).then(a.bind(a,127048)),"@site/docs/computer-science/system-design/serverless-architecture.md",127048],"8fb9de0f":[()=>a.e(19152).then(a.bind(a,226485)),"@site/docs/book-summaries/david-and-goliath.md",226485],"8ff1c8f8":[()=>a.e(55297).then(a.bind(a,394617)),"@site/docs/algorithms/general/list-of-algorithms.md",394617],"8ffe6a01":[()=>a.e(20492).then(a.bind(a,638766)),"@site/docs/languages/java/reflection.md",638766],90074119:[()=>a.e(75225).then(a.bind(a,820606)),"@site/docs/python/python-intro/regular-expressions.md",820606],"903d8e42":[()=>a.e(53355).then(a.bind(a,591111)),"@site/docs/networking/protocols/tcp-connection-oriented-protocol/readme.md",591111],90538551:[()=>a.e(11251).then(a.bind(a,505325)),"@site/docs/computer-science/software-engineering/development-approaches.md",505325],"905d624b":[()=>a.e(41764).then(a.bind(a,836242)),"@site/docs/databases/nosql-databases/snowflake/stages.md",836242],"9081dcbc":[()=>a.e(65354).then(a.bind(a,526466)),"@site/docs/cloud/aws/aws-backup.md",526466],"9087f438":[()=>a.e(35080).then(a.bind(a,308639)),"@site/docs/book-summaries/thinking-fast-and-slow.md",308639],"90bf3b7c":[()=>a.e(69516).then(a.bind(a,641479)),"@site/docs/devops/devops-intro/load-balancer-features.md",641479],"90cbcd9e":[()=>a.e(30334).then(a.bind(a,287167)),"@site/docs/languages/sql/intro.md",287167],"90d0eda0":[()=>a.e(84819).then(a.bind(a,111724)),"@site/docs/networking/networking-concepts/others.md",111724],"90e0b0c7":[()=>a.e(94273).then(a.bind(a,852789)),"@site/docs/psychology/soft-skills/readme.md",852789],"910bb0da":[()=>a.e(7724).then(a.bind(a,574198)),"@site/docs/computer-science/programming-paradigms/others.md",574198],91368324:[()=>a.e(84841).then(a.bind(a,391204)),"@site/docs/mathematics/geometry/right-triangles-and-geometry.md",391204],"91386ba8":[()=>a.e(30287).then(a.bind(a,3183)),"@site/docs/data-structures/general/endianness.md",3183],"914c6b9e":[()=>a.e(73032).then(a.bind(a,300660)),"@site/docs/decentralized-applications/ethereum/01-intro-to-ethereum.md",300660],"91535be7":[()=>a.e(9693).then(a.bind(a,760043)),"@site/docs/ai/data-science/questions.md",760043],"91602cbf":[()=>a.e(86892).then(a.bind(a,809557)),"@site/docs/technologies/brokers/vernemq/commands.md",809557],"917252b3":[()=>a.e(39392).then(a.bind(a,800483)),"@site/docs/psychology/sleep.md",800483],"91fe5eb6":[()=>a.e(53161).then(a.bind(a,330491)),"@site/docs/book-summaries/primed-to-perform.md",330491],"9208530c":[()=>a.e(61856).then(a.bind(a,646146)),"@site/docs/languages/java/hash-collection.md",646146],"9219d4e7":[()=>a.e(90854).then(a.bind(a,390028)),"@site/docs/cloud/others/others-saas.md",390028],92581091:[()=>a.e(34470).then(a.bind(a,303443)),"@site/docs/networking/mqtt/last-will-and-testament.md",303443],"92f12c06":[()=>a.e(38826).then(a.bind(a,869016)),"@site/docs/data-structures/readme.md",869016],"9323cebd":[()=>a.e(36513).then(a.bind(a,138884)),"@site/docs/devops/kubernetes/others.md",138884],"934ae6c3":[()=>a.e(12903).then(a.bind(a,564825)),"@site/docs/frontend/others/nextjs/readme.md",564825],"935512d6":[()=>a.e(46808).then(a.bind(a,173953)),"@site/docs/ai/readme.md",173953],"9357da82":[()=>a.e(81061).then(a.bind(a,410325)),"@site/docs/technologies/apache/apache-hbase.md",410325],"935f2afb":[()=>a.e(80053).then(a.t.bind(a,1109,19)),"~docs/default/version-current-metadata-prop-751.json",1109],"93736b82":[()=>a.e(55871).then(a.bind(a,400757)),"@site/docs/computer-science/programming-paradigms/behavioral-observer.md",400757],"93879ffb":[()=>a.e(26311).then(a.bind(a,439415)),"@site/docs/knowledge/biology/nutrition/pulses-daal-lentils.md",439415],"93dc10c9":[()=>a.e(4331).then(a.bind(a,301026)),"@site/docs/algorithms/string-algorithms/readme.md",301026],"9413e91a":[()=>a.e(11048).then(a.bind(a,597947)),"@site/docs/psychology/soft-skills/reasoning.md",597947],"9418251b":[()=>a.e(93795).then(a.bind(a,17519)),"@site/docs/algorithms/string-algorithms/substring-search-intro.md",17519],"941e8b35":[()=>a.e(2425).then(a.bind(a,323273)),"@site/docs/python/others/twisted.md",323273],"946e1b89":[()=>a.e(65499).then(a.bind(a,864858)),"@site/docs/databases/sql-databases/mysql/thread-states.md",864858],"94c9da4e":[()=>a.e(50587).then(a.bind(a,652588)),"@site/docs/ai/numpy/numpy-reference.md",652588],"94ca0def":[()=>a.e(65573).then(a.bind(a,871002)),"@site/docs/databases/nosql-databases/aws-dynamodb/table-classes.md",871002],"94e62518":[()=>a.e(49831).then(a.bind(a,253365)),"@site/docs/algorithms/advanced-algorithms/principle-of-deferred-decisions.md",253365],"9505a680":[()=>a.e(12245).then(a.bind(a,581689)),"@site/docs/decentralized-applications/ethereum/30-bridges.md",581689],"952393dc":[()=>a.e(68454).then(a.bind(a,576396)),"@site/docs/book-summaries/from-strength-to-strength.md",576396],95361060:[()=>a.e(50890).then(a.bind(a,792344)),"@site/docs/devops/docker/docker-compose-example.md",792344],"9539399c":[()=>a.e(13529).then(a.bind(a,756090)),"@site/docs/mathematics/statistics/bivariate-analysis.md",756090],"953d183b":[()=>a.e(86493).then(a.bind(a,314757)),"@site/docs/book-summaries/power-sex-suicide.md",314757],"9564be15":[()=>a.e(62753).then(a.bind(a,478456)),"@site/docs/algorithms/dynamic-programming/greedy-algorithms.md",478456],"957e6ca3":[()=>a.e(58478).then(a.bind(a,151840)),"@site/docs/algorithms/searching-sorting/merge-sort.md",151840],"9597644a":[()=>a.e(47490).then(a.bind(a,712360)),"@site/docs/databases/concepts/others.md",712360],"95a1c150":[()=>a.e(67284).then(a.bind(a,421234)),"@site/docs/databases/nosql-databases/redis/best-practices.md",421234],"95d54960":[()=>a.e(61500).then(a.bind(a,50643)),"@site/docs/management/people-management/mentoring-teaching-coaching-leading-leader-leadership.md",50643],"95e8f9a1":[()=>a.e(36488).then(a.bind(a,576734)),"@site/docs/technologies/apache/apache-hive.md",576734],"9611a6ea":[()=>a.e(89244).then(a.bind(a,91093)),"@site/docs/mathematics/linear-algebra/matrix-transformations.md",91093],"9614cb52":[()=>a.e(28887).then(a.bind(a,193147)),"@site/docs/networking/mqtt/qos-levels.md",193147],"9632eced":[()=>a.e(96532).then(a.bind(a,420328)),"@site/docs/python/documentation/19-internet-data-handling.md",420328],"9640504f":[()=>a.e(74572).then(a.bind(a,874448)),"@site/docs/computer-science/security/authentication/certificates.md",874448],"9660ce3f":[()=>a.e(52581).then(a.bind(a,823539)),"@site/docs/book-summaries/13-things-mentally-strong-parents-dont-do.md",823539],"9662e3ed":[()=>a.e(3671).then(a.bind(a,131647)),"@site/docs/computer-science/system-design/microservice-architecture/intro.md",131647],"96875d98":[()=>a.e(62896).then(a.bind(a,843445)),"@site/docs/knowledge/law/judgements-2023.md",843445],"9694a59b":[()=>a.e(8280).then(a.bind(a,857605)),"@site/docs/devops/devops-intro/chaos-engineering.md",857605],"96c6b92c":[()=>a.e(27923).then(a.bind(a,470915)),"@site/docs/decentralized-applications/ethereum/etherjs.md",470915],"96e012b8":[()=>a.e(44140).then(a.bind(a,535946)),"@site/docs/ai/model-evaluation/readme.md",535946],"96f76ec9":[()=>a.e(26489).then(a.bind(a,254974)),"@site/docs/ai/llm/fintech-use-cases.md",254974],"970aa3e0":[()=>a.e(69869).then(a.bind(a,430146)),"@site/docs/ai/ml-fundamentals/ml-classification.md",430146],"976c7b0c":[()=>a.e(2121).then(a.bind(a,231511)),"@site/docs/languages/php/codeigniter/configurations.md",231511],"97be60be":[()=>a.e(21595).then(a.bind(a,820611)),"@site/docs/frontend/react/components.md",820611],"97d7a345":[()=>a.e(74110).then(a.bind(a,740946)),"@site/docs/mathematics/statistics/crash-course-statistics.md",740946],"97e83203":[()=>a.e(81278).then(a.bind(a,561253)),"@site/docs/about-me/projects/80-stashfin.md",561253],98138944:[()=>a.e(34460).then(a.bind(a,607839)),"@site/docs/data-structures/hashtable/chord.md",607839],"98336a82":[()=>a.e(30039).then(a.bind(a,669771)),"@site/docs/languages/frameworks/android/jetpack.md",669771],"983c0810":[()=>a.e(28607).then(a.bind(a,282651)),"@site/docs/devops/terminal-bash/1-linux-general-unix-linux-commands.md",282651],"98815d02":[()=>a.e(90759).then(a.bind(a,659058)),"@site/docs/about-me/projects/49-data-practical-use-cases.md",659058],"988cda22":[()=>a.e(97202).then(a.bind(a,6527)),"@site/docs/languages/java/knowledge.md",6527],98970508:[()=>a.e(41900).then(a.bind(a,485573)),"@site/docs/languages/java/collections.md",485573],"98f8f798":[()=>a.e(41955).then(a.bind(a,870966)),"@site/docs/data-structures/hierarchical-data-structure/b-tree.md",870966],"992a565d":[()=>a.e(9645).then(a.bind(a,842836)),"@site/docs/python/advanced/concurrency.md",842836],"992fc8fe":[()=>a.e(17186).then(a.bind(a,398919)),"@site/docs/knowledge/biology/muscles.md",398919],99369098:[()=>a.e(34645).then(a.bind(a,4751)),"@site/docs/python/documentation/python-howtos.md",4751],"995ca961":[()=>a.e(91389).then(a.bind(a,388427)),"@site/docs/python/python-intro/data-structure/dict-evolution.md",388427],"99aab209":[()=>a.e(90921).then(a.bind(a,378647)),"@site/docs/cloud/others/firebase/automatic-collected-events.md",378647],"99b20856":[()=>a.e(15673).then(a.bind(a,189763)),"@site/docs/databases/sql-databases/mysql/connection-handling.md",189763],"99bf0b39":[()=>a.e(1393).then(a.bind(a,215494)),"@site/docs/algorithms/algorithmic-complexity/turing-vs-non-turing-machine.md",215494],"9a132240":[()=>a.e(95046).then(a.bind(a,692272)),"@site/docs/python/documentation/02-built-in-functions.md",692272],"9a148426":[()=>a.e(70492).then(a.bind(a,516562)),"@site/docs/ai/big-data/tools.md",516562],"9a5bd61e":[()=>a.e(90372).then(a.bind(a,793442)),"@site/docs/about-me/projects/66-iot-case-studies.md",793442],"9a714aed":[()=>a.e(16721).then(a.bind(a,805045)),"@site/docs/courses/course-credit-risk-modeling/decision-areas-and-credit-scorecards.md",805045],"9a9b746d":[()=>a.e(80270).then(a.bind(a,906015)),"@site/docs/databases/concepts/concurrency-control.md",906015],"9abf256d":[()=>a.e(24065).then(a.bind(a,146136)),"@site/docs/mathematics/geometry/circles.md",146136],"9afb0772":[()=>a.e(24769).then(a.bind(a,209487)),"@site/docs/networking/networking-concepts/data-center-networking.md",209487],"9b0206b3":[()=>a.e(32932).then(a.bind(a,608907)),"@site/docs/decentralized-applications/ethereum/upgrades.md",608907],"9b231b49":[()=>a.e(38314).then(a.bind(a,843658)),"@site/docs/knowledge/language/languages-others.md",843658],"9b402c8b":[()=>a.e(89157).then(a.bind(a,659494)),"@site/docs/devops/others/coresync-pacemaker.md",659494],"9b5d774a":[()=>a.e(17322).then(a.bind(a,419677)),"@site/docs/book-summaries/alchemy-the-surprising-power-of-ideas-that-dont-make-sense.md",419677],"9b5fde7e":[()=>a.e(96840).then(a.bind(a,104982)),"@site/docs/data-structures/linear-data-structure/randomized-queue.md",104982],"9b9df7e0":[()=>a.e(70915).then(a.bind(a,444634)),"@site/docs/algorithms/graphtheory/prim-algorithm-for-mst.md",444634],"9ba447e4":[()=>a.e(86107).then(a.bind(a,351488)),"@site/docs/networking/protocols/others.md",351488],"9bca345b":[()=>a.e(29411).then(a.bind(a,810282)),"@site/docs/algorithms/advanced-algorithms/travelling-salesman-problem.md",810282],"9bd06824":[()=>a.e(99749).then(a.bind(a,607791)),"@site/docs/technologies/elasticsearch/commands.md",607791],"9bd29296":[()=>a.e(54942).then(a.bind(a,467337)),"@site/docs/databases/sql-databases/mysql/percona-xtrabackup.md",467337],"9bd96f97":[()=>a.e(64751).then(a.bind(a,597192)),"@site/docs/management/mental-models.md",597192],"9c18c66a":[()=>a.e(15397).then(a.bind(a,634534)),"@site/docs/psychology/learning/speed-reading.md",634534],"9c2a6400":[()=>a.e(90223).then(a.bind(a,565135)),"@site/docs/languages/golang/tools.md",565135],"9c353e4a":[()=>a.e(55731).then(a.bind(a,155126)),"@site/docs/languages/golang/syntax.md",155126],"9c454ee4":[()=>a.e(47063).then(a.bind(a,416009)),"@site/docs/knowledge/quotes-proverbs/habits.md",416009],"9c5e5418":[()=>a.e(1712).then(a.bind(a,602870)),"@site/docs/python/others/readme.md",602870],"9c6635e1":[()=>a.e(88611).then(a.bind(a,727849)),"@site/docs/management/people-management/readme.md",727849],"9ce06ec6":[()=>a.e(83458).then(a.bind(a,693142)),"@site/docs/devops/kubernetes/intro.md",693142],"9cea67db":[()=>a.e(46352).then(a.bind(a,564401)),"@site/docs/databases/nosql-databases/cassandra/intro.md",564401],"9d020796":[()=>a.e(44616).then(a.bind(a,632892)),"@site/docs/algorithms/graphtheory/bellman-ford-algorithm.md",632892],"9d28d800":[()=>a.e(14929).then(a.bind(a,23973)),"@site/docs/data-structures/linear-data-structure/array.md",23973],"9d2ca8d9":[()=>a.e(86406).then(a.bind(a,787381)),"@site/docs/computer-science/interview-question/system-design-mmog-game.md",787381],"9d64ea7e":[()=>a.e(49962).then(a.bind(a,374130)),"@site/docs/databases/nosql-databases/snowflake/optimizations.md",374130],"9d662a74":[()=>a.e(92408).then(a.bind(a,709558)),"@site/docs/algorithms/data-compression/bitmap-compression-algorithms.md",709558],"9d76647d":[()=>a.e(72454).then(a.bind(a,194135)),"@site/docs/knowledge/quotes-proverbs/readme.md",194135],"9d7ebe7a":[()=>a.e(51085).then(a.bind(a,766379)),"@site/docs/data-structures/linear-data-structure/bag-data-structure.md",766379],"9d866e9e":[()=>a.e(38374).then(a.bind(a,714250)),"@site/docs/cloud/aws/developer-tools/intro.md",714250],"9db34e5e":[()=>a.e(34506).then(a.bind(a,468719)),"@site/docs/computer-science/security/authentication/siem.md",468719],"9dc6c069":[()=>a.e(2472).then(a.bind(a,344985)),"@site/docs/cloud/aws/networking-content-delivery/aws-elb.md",344985],"9dcffb2d":[()=>a.e(5491).then(a.bind(a,174214)),"@site/docs/python/documentation/12-data-persistence.md",174214],"9e3af1ac":[()=>a.e(5160).then(a.bind(a,767604)),"@site/docs/knowledge/law/constitution-of-india/others.md",767604],"9e6ac71e":[()=>a.e(60322).then(a.bind(a,745149)),"@site/docs/data-structures/hierarchical-data-structure/binary-heap.md",745149],"9e6de952":[()=>a.e(8179).then(a.bind(a,988537)),"@site/docs/languages/frameworks/intro.md",988537],"9ea068e3":[()=>a.e(7674).then(a.bind(a,84321)),"@site/docs/ai/libraries/deep-learning-frameworks.md",84321],"9ec873a5":[()=>a.e(83893).then(a.bind(a,447592)),"@site/docs/technologies/apache/readme.md",447592],"9f2042b5":[()=>a.e(21e3).then(a.bind(a,255797)),"@site/docs/cloud/others/sap.md",255797],"9f335dfa":[()=>a.e(89977).then(a.bind(a,374237)),"@site/docs/ai/ml-algorithms/feature-engineering.md",374237],"9f408ede":[()=>a.e(11793).then(a.bind(a,136626)),"@site/docs/frontend/frontend-intro/seo-aso.md",136626],"9f6dbe96":[()=>a.e(80299).then(a.bind(a,794179)),"@site/docs/computer-science/programming-paradigms/creational-abstract-factory.md",794179],"9f709a3d":[()=>a.e(18327).then(a.bind(a,137477)),"@site/docs/algorithms/general/quick-select.md",137477],"9f781f75":[()=>a.e(98526).then(a.bind(a,952623)),"@site/docs/computer-science/interview-question/system-design-uber-lyft-ride-sharing-services.md",952623],"9fef29a1":[()=>a.e(21070).then(a.bind(a,540895)),"@site/docs/networking/networking-concepts/peer-to-peer.md",540895],a0115220:[()=>a.e(84722).then(a.bind(a,23630)),"@site/docs/book-summaries/predictably-irrational.md",23630],a019fd64:[()=>a.e(33375).then(a.bind(a,711022)),"@site/docs/psychology/learning/readme.md",711022],a036732d:[()=>a.e(27818).then(a.bind(a,535746)),"@site/docs/databases/indexing/database-index.md",535746],a042049c:[()=>a.e(4976).then(a.bind(a,713575)),"@site/docs/technologies/apache/apache-samza.md",713575],a05f09bc:[()=>a.e(61679).then(a.bind(a,59769)),"@site/docs/about-me/readme.md",59769],a073360f:[()=>a.e(76861).then(a.bind(a,177050)),"@site/docs/book-summaries/the-seven-habits-of-highly-effective-people.md",177050],a07b8561:[()=>a.e(16634).then(a.bind(a,548987)),"@site/docs/computer-science/interview-question/aws-tech-other-questions.md",548987],a07df199:[()=>a.e(34815).then(a.bind(a,548924)),"@site/docs/frontend/html-css/html-intro/readme.md",548924],a0c7ccba:[()=>a.e(23700).then(a.bind(a,989486)),"@site/docs/networking/networking-concepts/intro.md",989486],a0d32397:[()=>a.e(87752).then(a.bind(a,72450)),"@site/docs/ai/model-evaluation/evaluation.md",72450],a0f3a250:[()=>a.e(55349).then(a.bind(a,58316)),"@site/docs/algorithms/algorithmic-complexity/halting-problem.md",58316],a114c79d:[()=>a.e(13591).then(a.bind(a,804796)),"@site/docs/about-me/projects/readme.md",804796],a1438c39:[()=>a.e(23647).then(a.bind(a,27114)),"@site/docs/technologies/databricks/02-databricks-getting-started.md",27114],a14c4f8f:[()=>a.e(9807).then(a.bind(a,689464)),"@site/docs/algorithms/dynamic-programming/levenshtein-distance-or-edit-distance.md",689464],a14fff3b:[()=>a.e(60890).then(a.bind(a,632336)),"@site/docs/technologies/kafka/others.md",632336],a1692373:[()=>a.e(17568).then(a.bind(a,215320)),"@site/docs/devops/docker/containers.md",215320],a184fd68:[()=>a.e(9458).then(a.bind(a,789906)),"@site/docs/data-structures/hierarchical-data-structure/segment-tree.md",789906],a1d97c6a:[()=>a.e(99095).then(a.bind(a,971657)),"@site/docs/mathematics/statistics/percentiles.md",971657],a2062ddc:[()=>a.e(59724).then(a.bind(a,924447)),"@site/docs/algorithms/algorithmic-complexity/analysis-of-algorithms.md",924447],a2416ea7:[()=>a.e(51231).then(a.bind(a,135479)),"@site/docs/knowledge/biology/nutrition/recipe.md",135479],a2458787:[()=>a.e(90301).then(a.bind(a,108850)),"@site/docs/knowledge/law/laws.md",108850],a255df31:[()=>a.e(87888).then(a.bind(a,14308)),"@site/docs/computer-science/general/readme.md",14308],a25ca477:[()=>a.e(96769).then(a.bind(a,301965)),"@site/docs/ai/data-visualization/matplotlib.md",301965],a272e954:[()=>a.e(49134).then(a.bind(a,692783)),"@site/docs/mathematics/linear-algebra/cheatsheet.md",692783],a27bd544:[()=>a.e(54978).then(a.bind(a,266433)),"@site/docs/algorithms/complex-systems/intro.md",266433],a2806318:[()=>a.e(81103).then(a.bind(a,561130)),"@site/docs/knowledge/physics/crash-course-physics.md",561130],a28f780b:[()=>a.e(9e3).then(a.bind(a,354184)),"@site/docs/ai/llm/natural-language-to-sql.md",354184],a2a9cdae:[()=>a.e(4668).then(a.bind(a,861669)),"@site/docs/cloud/aws/developer-tools/code-build.md",861669],a2ec148a:[()=>a.e(66124).then(a.bind(a,177845)),"@site/docs/management/project-management/project-contraints.md",177845],a2f74ece:[()=>a.e(64382).then(a.bind(a,447399)),"@site/docs/ai/model-evaluation/optimization.md",447399],a31e1871:[()=>a.e(17030).then(a.bind(a,952189)),"@site/docs/devops/devops-intro/distributed-tracing.md",952189],a34c0fc4:[()=>a.e(22485).then(a.bind(a,481184)),"@site/docs/languages/sql/others.md",481184],a3549b4a:[()=>a.e(89279).then(a.bind(a,77285)),"@site/docs/mathematics/calculus/gradient.md",77285],a36285be:[()=>a.e(49562).then(a.bind(a,601656)),"@site/docs/psychology/self-control-will-power.md",601656],a37aea16:[()=>a.e(49956).then(a.bind(a,670991)),"@site/docs/computer-science/operating-system/compilers.md",670991],a38bf0a6:[()=>a.e(15210).then(a.bind(a,311276)),"@site/docs/data-structures/hierarchical-data-structure/binary-search-tree.md",311276],a3a2b5d3:[()=>a.e(14443).then(a.bind(a,11922)),"@site/docs/ai/libraries/tensorflow/estimator-api.md",11922],a3c34550:[()=>a.e(82994).then(a.bind(a,483179)),"@site/docs/computer-science/security/vulnerabilities.md",483179],a3c81ad9:[()=>a.e(20799).then(a.bind(a,879596)),"@site/docs/databases/nosql-databases/column-family.md",879596],a3f7380e:[()=>a.e(77536).then(a.bind(a,431855)),"@site/docs/databases/nosql-databases/mongodb/others.md",431855],a3fc3cfe:[()=>a.e(33998).then(a.bind(a,504935)),"@site/docs/psychology/travelling.md",504935],a42b237d:[()=>a.e(90524).then(a.bind(a,549378)),"@site/docs/computer-science/security/attacks.md",549378],a4487309:[()=>a.e(10020).then(a.bind(a,752582)),"@site/docs/mathematics/general/fermat-little-theorem.md",752582],a452b269:[()=>a.e(52921).then(a.bind(a,450353)),"@site/docs/management/roles/principle-software-engineer.md",450353],a456d708:[()=>a.e(50928).then(a.bind(a,385466)),"@site/docs/databases/data-warehousing/03-slowly-changing-dimension-scd.md",385466],a45ae645:[()=>a.e(39229).then(a.bind(a,771597)),"@site/docs/knowledge/geography/countries.md",771597],a47a173f:[()=>a.e(42052).then(a.bind(a,210045)),"@site/docs/economics/mutual-funds/debentures-bonds.md",210045],a49f9fea:[()=>a.e(87943).then(a.bind(a,213344)),"@site/docs/python/python-intro/input-output-template.md",213344],a4a9daca:[()=>a.e(86813).then(a.bind(a,927626)),"@site/docs/computer-science/system-design/microservice-architecture/design-patterns.md",927626],a4aea578:[()=>a.e(24817).then(a.bind(a,650046)),"@site/docs/management/community-building.md",650046],a4d22a17:[()=>a.e(35336).then(a.bind(a,525909)),"@site/docs/frontend/others/nextjs/others.md",525909],a4fcd72c:[()=>a.e(5184).then(a.t.bind(a,807085,19)),"/home/runner/work/deepaksood619.github.io/deepaksood619.github.io/.docusaurus/docusaurus-theme-search-algolia/default/plugin-route-context-module-100.json",807085],a4fe0faa:[()=>a.e(68761).then(a.bind(a,732975)),"@site/docs/ai/nlp/chatbot-chatops.md",732975],a50963a0:[()=>a.e(68458).then(a.bind(a,901472)),"@site/docs/databases/nosql-databases/redis/redis-py.md",901472],a522a296:[()=>a.e(41126).then(a.bind(a,900270)),"@site/docs/ai/data-science/statistics.md",900270],a52e203a:[()=>a.e(43876).then(a.bind(a,97591)),"@site/docs/databases/nosql-databases/time-series-db/influxdb/influx.md",97591],a530aa1e:[()=>a.e(89666).then(a.bind(a,491397)),"@site/docs/python/documentation/18-interprocess-communication-and-networking.md",491397],a5b89950:[()=>a.e(77990).then(a.bind(a,811155)),"@site/docs/mathematics/general/golden-ratio-phi.md",811155],a5d513a8:[()=>a.e(35665).then(a.bind(a,652023)),"@site/docs/knowledge/language/general.md",652023],a5f340a6:[()=>a.e(78799).then(a.bind(a,223678)),"@site/docs/databases/sql-databases/mysql/mysqlbinlog.md",223678],a617bbab:[()=>a.e(74398).then(a.bind(a,27618)),"@site/docs/book-summaries/the-grid.md",27618],a6191a10:[()=>a.e(86725).then(a.bind(a,163803)),"@site/docs/management/growth-hacking.md",163803],a63bec92:[()=>a.e(5263).then(a.bind(a,32254)),"@site/docs/cloud/others/business-rule-engine.md",32254],a651ce98:[()=>a.e(58240).then(a.bind(a,520689)),"@site/docs/algorithms/general/competitive-programming.md",520689],a6668d8a:[()=>a.e(76019).then(a.bind(a,198498)),"@site/docs/devops/terminal-bash/3-library-functions.md",198498],a67e9e47:[()=>a.e(37761).then(a.bind(a,781862)),"@site/docs/book-summaries/the-power-of-regret.md",781862],a6c30594:[()=>a.e(71769).then(a.bind(a,330976)),"@site/docs/courses/course-credit-risk-modeling/fraud-detection-and-prevention.md",330976],a6ca678f:[()=>a.e(76189).then(a.bind(a,153323)),"@site/docs/technologies/apache/cncf.md",153323],a6f8edb9:[()=>a.e(26423).then(a.bind(a,818855)),"@site/docs/databases/sql-databases/mysql/intro.md",818855],a6fe51f0:[()=>a.e(63790).then(a.bind(a,116351)),"@site/docs/cloud/others/vmware.md",116351],a70a32be:[()=>a.e(35703).then(a.bind(a,812962)),"@site/docs/mathematics/combinatorics/birthday-paradox.md",812962],a71454af:[()=>a.e(21819).then(a.bind(a,345609)),"@site/docs/python/documentation/08-data-types.md",345609],a74bf5e2:[()=>a.e(66908).then(a.bind(a,942735)),"@site/docs/python/documentation/the-python-standard-library.md",942735],a74d43ac:[()=>a.e(39848).then(a.bind(a,581576)),"@site/docs/knowledge/general/mental-models.md",581576],a767ce44:[()=>a.e(57162).then(a.bind(a,350482)),"@site/docs/ai/deep-learning/resources.md",350482],a79494fe:[()=>a.e(85806).then(a.bind(a,159759)),"@site/docs/devops/kubernetes/services-loadbalancing-and-networking/others.md",159759],a7991b53:[()=>a.e(97495).then(a.bind(a,651592)),"@site/docs/databases/nosql-databases/snowflake/recovery.md",651592],a7adcbcb:[()=>a.e(83630).then(a.bind(a,364332)),"@site/docs/technologies/kafka/intro.md",364332],a7bb7c59:[()=>a.e(62971).then(a.bind(a,912835)),"@site/docs/databases/nosql-databases/mongodb/questions.md",912835],a7bd4aaa:[()=>a.e(18518).then(a.bind(a,760604)),"@theme/DocVersionRoot",760604],a7c92b83:[()=>a.e(47917).then(a.bind(a,312614)),"@site/docs/devops/kubernetes/cluster-administration/readme.md",312614],a7d9678d:[()=>a.e(58663).then(a.bind(a,795261)),"@site/docs/knowledge/biology/exercise-stretching/home-exercise-routine.md",795261],a800e4fe:[()=>a.e(21071).then(a.bind(a,219307)),"@site/docs/devops/monitoring/istio/commands.md",219307],a810e9ed:[()=>a.e(73633).then(a.bind(a,80359)),"@site/docs/computer-science/interview-question/toptal.md",80359],a8271ad7:[()=>a.e(59731).then(a.bind(a,279534)),"@site/docs/frontend/others/angularjs/03-modules.md",279534],a85ba1d3:[()=>a.e(11572).then(a.bind(a,40826)),"@site/docs/devops/kubernetes/tools-scaling.md",40826],a8acf0e1:[()=>a.e(81594).then(a.bind(a,885663)),"@site/docs/economics/accounting-for-finance/3a-balance-sheet-comparisons.md",885663],a8b4e166:[()=>a.e(84278).then(a.bind(a,292159)),"@site/docs/python/python-intro/requirements-file.md",292159],a8c61f3c:[()=>a.e(65744).then(a.bind(a,887007)),"@site/docs/decentralized-applications/liquidity-mining.md",887007],a8edc3e6:[()=>a.e(29879).then(a.bind(a,616492)),"@site/docs/mathematics/combinatorics/pigeonhole-principle.md",616492],a8f24829:[()=>a.e(45004).then(a.bind(a,1216)),"@site/docs/book-summaries/doughnut-economics.md",1216],a909214e:[()=>a.e(56294).then(a.bind(a,306289)),"@site/docs/courses/course-credit-risk-modeling/credit-and-debt.md",306289],a90e7288:[()=>a.e(71526).then(a.bind(a,9621)),"@site/docs/data-structures/linear-data-structure/sets.md",9621],a93b9059:[()=>a.e(45079).then(a.bind(a,519711)),"@site/docs/decentralized-applications/on-chain-analytics.md",519711],a94703ab:[()=>Promise.all([a.e(40532),a.e(94368)]).then(a.bind(a,103699)),"@theme/DocRoot",103699],a94e0d0b:[()=>a.e(70072).then(a.bind(a,568485)),"@site/docs/book-summaries/find-your-element.md",568485],a9618c96:[()=>a.e(53950).then(a.bind(a,805183)),"@site/docs/devops/kubernetes/concepts-and-overview/configuration/secrets.md",805183],a974f32d:[()=>a.e(42998).then(a.bind(a,601148)),"@site/docs/cloud/others/mdm-mobile-device-management.md",601148],a9cd352a:[()=>a.e(76940).then(a.bind(a,98908)),"@site/docs/devops/docker/others.md",98908],a9f69e46:[()=>a.e(5406).then(a.bind(a,462519)),"@site/docs/python/others/pymysql.md",462519],aa0cfe82:[()=>a.e(27217).then(a.bind(a,320046)),"@site/docs/data-structures/hierarchical-data-structure/avl-tree.md",320046],aa109339:[()=>a.e(98331).then(a.bind(a,840776)),"@site/docs/ai/data-science/topics.md",840776],aa1f44dd:[()=>a.e(51309).then(a.bind(a,466113)),"@site/docs/python/python-intro/time-complexities.md",466113],aa28a1d1:[()=>a.e(44631).then(a.bind(a,46590)),"@site/docs/ai/ml-algorithms/readme.md",46590],aa2e5273:[()=>a.e(62785).then(a.bind(a,446134)),"@site/docs/languages/golang/readme.md",446134],aa491342:[()=>a.e(93594).then(a.bind(a,483698)),"@site/docs/book-summaries/switch-on-your-brain.md",483698],aa5965b9:[()=>a.e(64084).then(a.bind(a,821986)),"@site/docs/courses/course-time-series-analysis/exponential-smoothing.md",821986],aa5f0e56:[()=>a.e(7880).then(a.bind(a,637524)),"@site/docs/data-structures/general/disjoint-set-data-structure.md",637524],aa7d61f3:[()=>a.e(34454).then(a.bind(a,125656)),"@site/docs/algorithms/mathematics/readme.md",125656],aa973af4:[()=>a.e(94535).then(a.bind(a,712051)),"@site/docs/computer-science/operating-system/concurrency-threading.md",712051],aa9b09c3:[()=>a.e(29040).then(a.bind(a,560888)),"@site/docs/algorithms/graphtheory/acyclic-edge-weighted-digraphs.md",560888],aadafa25:[()=>a.e(17187).then(a.bind(a,345486)),"@site/docs/mathematics/statistics/hypothesis-testing.md",345486],ab025422:[()=>a.e(54812).then(a.bind(a,335030)),"@site/docs/knowledge/law/others.md",335030],ab054258:[()=>a.e(19431).then(a.bind(a,60825)),"@site/docs/python/others/fastapi/readme.md",60825],ab08b04a:[()=>a.e(72472).then(a.bind(a,806441)),"@site/docs/computer-science/system-design/others.md",806441],ab0b9038:[()=>a.e(85328).then(a.bind(a,258940)),"@site/docs/frontend/html-css/component-libraries/others.md",258940],ab2acc14:[()=>a.e(75073).then(a.bind(a,159793)),"@site/docs/psychology/thinking-mental-models.md",159793],ab64c407:[()=>a.e(90368).then(a.bind(a,599963)),"@site/docs/courses/course-intro-to-tensorflow.md",599963],ab7dc55e:[()=>a.e(29523).then(a.bind(a,689734)),"@site/docs/knowledge/biology/exercise-stretching/intro.md",689734],ab808dc3:[()=>a.e(97422).then(a.bind(a,468287)),"@site/docs/decentralized-applications/coins-tokens-chains/usdt.md",468287],abb45a07:[()=>a.e(34598).then(a.bind(a,554597)),"@site/docs/decentralized-applications/coins-tokens-chains/bitcoin.md",554597],abbf8cca:[()=>a.e(39912).then(a.bind(a,889003)),"@site/docs/devops/kubernetes/api-resources.md",889003],ac0b59d9:[()=>a.e(22488).then(a.bind(a,493534)),"@site/docs/ai/llm/code-generators.md",493534],ac2f88c5:[()=>a.e(56681).then(a.bind(a,870591)),"@site/docs/computer-science/testing/iperf3-testing.md",870591],ac5d4022:[()=>a.e(74194).then(a.bind(a,470402)),"@site/docs/technologies/apache/celery/workers.md",470402],ac7f7560:[()=>a.e(25068).then(a.bind(a,561018)),"@site/docs/devops/kubernetes/workloads/readme.md",561018],acae6e0a:[()=>a.e(69132).then(a.bind(a,632253)),"@site/docs/databases/nosql-databases/druid/intro.md",632253],acb9c068:[()=>a.e(15205).then(a.bind(a,286133)),"@site/docs/economics/mutual-funds/debt-mutual-funds-analysis.md",286133],ad0a7b48:[()=>a.e(4774).then(a.bind(a,371038)),"@site/docs/mathematics/geometry/others.md",371038],ad18ce4d:[()=>a.e(41024).then(a.bind(a,629097)),"@site/docs/psychology/defence-mechanisms.md",629097],ad322a53:[()=>a.e(74543).then(a.bind(a,131648)),"@site/docs/networking/mqtt/security.md",131648],ad47c7e1:[()=>a.e(1669).then(a.bind(a,545565)),"@site/docs/languages/others/yaml.md",545565],ad5e2e1d:[()=>a.e(93223).then(a.bind(a,570108)),"@site/docs/databases/sql-databases/mysql/backup-types.md",570108],adaee1bd:[()=>a.e(33996).then(a.bind(a,198258)),"@site/docs/ai/libraries/keras.md",198258],adb05602:[()=>a.e(72843).then(a.bind(a,751392)),"@site/docs/mathematics/statistics/sampling.md",751392],adf6d4b4:[()=>a.e(82815).then(a.bind(a,277046)),"@site/docs/economics/market-terms/others.md",277046],ae5ace98:[()=>a.e(52144).then(a.bind(a,831985)),"@site/docs/databases/data-warehousing/etl-extract-transform-load.md",831985],ae6a565f:[()=>a.e(26271).then(a.bind(a,394556)),"@site/docs/frontend/react/hooks.md",394556],ae7dec45:[()=>a.e(12422).then(a.bind(a,554562)),"@site/docs/databases/concepts/intro.md",554562],ae90db92:[()=>a.e(75708).then(a.bind(a,746574)),"@site/docs/computer-science/others/tech-books.md",746574],aea7f5b4:[()=>a.e(8310).then(a.bind(a,936903)),"@site/docs/databases/nosql-databases/redis/redis-streams-pubsub.md",936903],aeb953c2:[()=>a.e(95665).then(a.bind(a,967974)),"@site/docs/databases/sql-databases/aws-redshift/documentation.md",967974],aef3ae0e:[()=>a.e(99201).then(a.bind(a,42244)),"@site/docs/management/roles/others.md",42244],aefd78a4:[()=>a.e(51567).then(a.bind(a,935293)),"@site/docs/technologies/others/readme.md",935293],af06d8cc:[()=>a.e(158).then(a.bind(a,726729)),"@site/docs/languages/sql/databricks-sql.md",726729],af0bf442:[()=>a.e(18226).then(a.bind(a,662293)),"@site/docs/computer-science/security/readme.md",662293],af278195:[()=>a.e(2136).then(a.bind(a,197695)),"@site/docs/databases/concepts/readme.md",197695],af328601:[()=>a.e(5844).then(a.bind(a,242122)),"@site/docs/book-summaries/off-the-clock.md",242122],af3a10fa:[()=>a.e(85907).then(a.bind(a,898784)),"@site/docs/technologies/databricks/readme.md",898784],af3a6766:[()=>a.e(84194).then(a.bind(a,275130)),"@site/docs/about-me/ideas/readme.md",275130],af90a389:[()=>a.e(26576).then(a.bind(a,973479)),"@site/docs/knowledge/history/histomap.md",973479],af9dc3c0:[()=>a.e(89625).then(a.bind(a,267794)),"@site/docs/computer-science/system-design/addressing-failures.md",267794],af9fb13b:[()=>a.e(99643).then(a.bind(a,545691)),"@site/docs/book-summaries/the-5-am-club.md",545691],afa04449:[()=>a.e(81605).then(a.bind(a,139063)),"@site/docs/knowledge/biology/nutrition/ecology.md",139063],afa40129:[()=>a.e(28791).then(a.bind(a,945700)),"@site/docs/economics/accounting-for-finance/6-accouting-financial-ratios-profitability-measures.md",945700],afc9a20a:[()=>a.e(79180).then(a.bind(a,804304)),"@site/docs/python/advanced/web-scraping.md",804304],afcc3037:[()=>a.e(99071).then(a.bind(a,346181)),"@site/docs/algorithms/mathematics/powerset.md",346181],b033b3b4:[()=>a.e(56307).then(a.bind(a,888734)),"@site/docs/algorithms/graphtheory/seam-carving.md",888734],b044e779:[()=>a.e(56251).then(a.bind(a,230853)),"@site/docs/databases/modeling/er-tools.md",230853],b04d9e1b:[()=>a.e(52662).then(a.bind(a,473171)),"@site/docs/technologies/apache/apache-spark/04-key-points.md",473171],b06600c9:[()=>a.e(35412).then(a.bind(a,538283)),"@site/docs/economics/mutual-funds/fixed-income.md",538283],b0b038e5:[()=>a.e(75142).then(a.bind(a,96013)),"@site/docs/about-me/ideas/non-profit.md",96013],b0b2d59c:[()=>a.e(18386).then(a.bind(a,519713)),"@site/docs/computer-science/system-design/enterprise-integration-patterns.md",519713],b0b8b140:[()=>a.e(2882).then(a.bind(a,280419)),"@site/docs/mathematics/statistics/other-statistics.md",280419],b0d60437:[()=>a.e(57700).then(a.bind(a,8837)),"@site/docs/data-structures/trie/patricia-trie.md",8837],b0ec48e6:[()=>a.e(51733).then(a.bind(a,271663)),"@site/docs/economics/finance-investing/quotes.md",271663],b0f3a596:[()=>a.e(1020).then(a.bind(a,269062)),"@site/docs/computer-science/programming-paradigms/behavioral-state.md",269062],b0f56fdf:[()=>a.e(39569).then(a.bind(a,496637)),"@site/docs/about-me/projects/98-others.md",496637],b0fb0d0d:[()=>a.e(33332).then(a.bind(a,736314)),"@site/docs/management/project-management/pert-and-cpm.md",736314],b11a1444:[()=>a.e(32130).then(a.bind(a,576606)),"@site/docs/algorithms/searching-sorting/3-way-quick-sort.md",576606],b138bd67:[()=>a.e(67648).then(a.bind(a,453185)),"@site/docs/ai/ml-algorithms/boosting-and-adaboost.md",453185],b13e7d33:[()=>a.e(2885).then(a.bind(a,358397)),"@site/docs/python/python-intro/file-io.md",358397],b15484eb:[()=>a.e(1253).then(a.bind(a,326288)),"@site/docs/decentralized-applications/ethereum/solidity.md",326288],b1791028:[()=>a.e(67231).then(a.bind(a,829318)),"@site/docs/knowledge/language/spanish.md",829318],b1f23998:[()=>a.e(10825).then(a.bind(a,235370)),"@site/docs/algorithms/graphtheory/readme.md",235370],b1f9def7:[()=>a.e(76582).then(a.bind(a,473920)),"@site/docs/ai/deep-learning/commands.md",473920],b20842e3:[()=>a.e(95148).then(a.bind(a,504485)),"@site/docs/economics/mental-models/microeconomics.md",504485],b2234e4d:[()=>a.e(46136).then(a.bind(a,351814)),"@site/docs/technologies/brokers/smap.md",351814],b225e282:[()=>a.e(80218).then(a.bind(a,508147)),"@site/docs/frontend/frontend-intro/intro.md",508147],b22a5f61:[()=>a.e(47127).then(a.bind(a,468218)),"@site/docs/about-me/ideas/donations.md",468218],b2533fa8:[()=>a.e(71441).then(a.bind(a,742082)),"@site/docs/mathematics/general/gcd-lcm.md",742082],b25fdf03:[()=>a.e(87877).then(a.bind(a,765148)),"@site/docs/databases/sql-databases/aws-redshift/architecture.md",765148],b2648ba6:[()=>a.e(41542).then(a.bind(a,86628)),"@site/docs/python/python-intro/data-structure/list.md",86628],b2748025:[()=>a.e(30330).then(a.bind(a,953477)),"@site/docs/devops/monitoring/istio/readme.md",953477],b28ace89:[()=>a.e(92381).then(a.bind(a,881922)),"@site/docs/computer-science/testing/postman.md",881922],b2b7b086:[()=>a.e(46824).then(a.bind(a,9566)),"@site/docs/ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics.md",9566],b2de6a9d:[()=>a.e(10783).then(a.bind(a,207911)),"@site/docs/mathematics/probability/intro-to-probability/14.-intro-to-bayesian-inference.md",207911],b2deb35b:[()=>a.e(11858).then(a.bind(a,25716)),"@site/docs/economics/finance-investing/huf-private-trust.md",25716],b2e11bff:[()=>a.e(330).then(a.bind(a,591043)),"@site/docs/knowledge/readme.md",591043],b2e28cf4:[()=>a.e(5716).then(a.bind(a,71498)),"@site/docs/knowledge/biology/nutrition/fatigue.md",71498],b2e6bc1b:[()=>a.e(89690).then(a.bind(a,605187)),"@site/docs/courses/365-data-science-program.md",605187],b30e2a0c:[()=>a.e(99566).then(a.bind(a,892560)),"@site/docs/knowledge/general/important-dates-timelines.md",892560],b33de3f0:[()=>a.e(39675).then(a.bind(a,679395)),"@site/docs/knowledge/law/readme.md",679395],b3c5c743:[()=>a.e(85681).then(a.bind(a,831849)),"@site/docs/ai/big-data/data-preprocessing.md",831849],b3c5f9d0:[()=>a.e(38592).then(a.bind(a,854017)),"@site/docs/databases/sql-databases/aws-aurora/readme.md",854017],b3daffd7:[()=>a.e(5447).then(a.bind(a,444659)),"@site/docs/data-structures/hashtable/dht-distributed-hash-tables.md",444659],b40f3bef:[()=>a.e(26873).then(a.bind(a,127343)),"@site/docs/book-summaries/power-and-prediction.md",127343],b412f849:[()=>a.e(84923).then(a.bind(a,86712)),"@site/docs/knowledge/language/parts-of-speech.md",86712],b4305754:[()=>a.e(78134).then(a.bind(a,294057)),"@site/docs/python/documentation/python-language-reference.md",294057],b43fd945:[()=>a.e(182).then(a.bind(a,858913)),"@site/docs/book-summaries/the-almanack-of-naval-ravikant.md",858913],b4615639:[()=>a.e(46445).then(a.bind(a,20820)),"@site/docs/data-structures/hierarchical-data-structure/k-ary-heap-d-ary-heap-d-way-heap.md",20820],b4a37b02:[()=>a.e(65649).then(a.bind(a,522502)),"@site/docs/management/product-management/product-manager-role.md",522502],b4d07ea1:[()=>a.e(37732).then(a.bind(a,532499)),"@site/docs/languages/sql/keys.md",532499],b4d57b46:[()=>a.e(88721).then(a.bind(a,766917)),"@site/docs/algorithms/graphtheory/kruskal-algorithm-for-mst.md",766917],b4df7443:[()=>a.e(4533).then(a.bind(a,47175)),"@site/docs/languages/c++/intro.md",47175],b4e55d2d:[()=>a.e(16065).then(a.bind(a,64390)),"@site/docs/databases/nosql-databases/cassandra/cql-cassandra-query-language.md",64390],b5048bc0:[()=>a.e(35827).then(a.bind(a,242618)),"@site/docs/ai/llm/limitations-problems.md",242618],b515c803:[()=>a.e(40348).then(a.bind(a,370147)),"@site/docs/devops/kubernetes/helm.md",370147],b524da4b:[()=>a.e(68715).then(a.bind(a,4417)),"@site/docs/languages/frameworks/dash.md",4417],b527f751:[()=>a.e(94424).then(a.bind(a,820145)),"@site/docs/python/documentation/28-debugging-and-profiling.md",820145],b56d47ca:[()=>a.e(48087).then(a.bind(a,98612)),"@site/docs/management/product-management/kano-model.md",98612],b575c55f:[()=>a.e(55743).then(a.bind(a,774245)),"@site/docs/python/others/libraries.md",774245],b5780673:[()=>a.e(77799).then(a.bind(a,802322)),"@site/docs/computer-science/operating-system/unix-linux-file-system.md",802322],b5c7deb4:[()=>a.e(39672).then(a.bind(a,858601)),"@site/docs/databases/sql-databases/aws-aurora/aurora-documentation.md",858601],b5f1cc58:[()=>a.e(47822).then(a.bind(a,93543)),"@site/docs/mathematics/probability/intro-to-probability/12.-sums-of-independent-rv-covariance-and-correlation.md",93543],b62e1aad:[()=>a.e(16775).then(a.bind(a,989216)),"@site/docs/mathematics/algebra/root.md",989216],b658eae2:[()=>a.e(89767).then(a.bind(a,759907)),"@site/docs/python/advanced/cpython.md",759907],b66163d8:[()=>a.e(97867).then(a.bind(a,482601)),"@site/docs/devops/ides/jupyter-jupyterlab-notebook/template.md",482601],b66b9dbe:[()=>a.e(55797).then(a.bind(a,828674)),"@site/docs/databases/indexing/mysql-indexing.md",828674],b69ef573:[()=>a.e(7915).then(a.bind(a,3349)),"@site/docs/decentralized-applications/blockchain.md",3349],b6c73b95:[()=>a.e(43014).then(a.bind(a,385936)),"@site/docs/computer-science/interview-question/system-design-parking-lot.md",385936],b6d8765e:[()=>a.e(73285).then(a.bind(a,448903)),"@site/docs/mathematics/probability/365-ds-probability.md",448903],b6f4e1ab:[()=>a.e(39787).then(a.bind(a,470954)),"@site/docs/networking/others/grpc/commands.md",470954],b6f6debb:[()=>a.e(38618).then(a.bind(a,311765)),"@site/docs/decentralized-applications/others.md",311765],b6fcf0b8:[()=>a.e(10970).then(a.bind(a,280392)),"@site/docs/devops/kubernetes/reference/rbac.md",280392],b7040f36:[()=>a.e(86590).then(a.bind(a,107075)),"@site/docs/frontend/others/nodejs/nodejs-frameworks.md",107075],b70595eb:[()=>a.e(96120).then(a.bind(a,996468)),"@site/docs/mathematics/general/ackermann-function.md",996468],b7362c44:[()=>a.e(59601).then(a.bind(a,609644)),"@site/docs/computer-science/operating-system/concurrency-models-async.md",609644],b75f1492:[()=>a.e(94017).then(a.bind(a,417167)),"@site/docs/data-structures/linear-data-structure/priority-queue.md",417167],b76b01c2:[()=>a.e(70076).then(a.bind(a,511360)),"@site/docs/devops/monitoring/istio/others.md",511360],b7cce21e:[()=>a.e(38984).then(a.bind(a,113771)),"@site/docs/mathematics/probability/intro-to-probability/1.-probability-models-and-axioms.md",113771],b7cd30f9:[()=>a.e(74577).then(a.bind(a,501276)),"@site/docs/devops/others/devtron.md",501276],b7f08802:[()=>a.e(62350).then(a.bind(a,579130)),"@site/docs/databases/sql-databases/aws-aurora/storage.md",579130],b7f5454c:[()=>a.e(53251).then(a.bind(a,49460)),"@site/docs/databases/nosql-databases/druid/faqs.md",49460],b7fa75ac:[()=>a.e(85212).then(a.bind(a,631345)),"@site/docs/cloud/aws/aws-services-list.md",631345],b8070a5b:[()=>a.e(342).then(a.bind(a,129178)),"@site/docs/knowledge/biology/alternative-medicine.md",129178],b81970b6:[()=>a.e(46811).then(a.bind(a,316439)),"@site/docs/knowledge/history/crash-course-history-of-science.md",316439],b87132e4:[()=>a.e(49654).then(a.bind(a,859108)),"@site/docs/frontend/readme.md",859108],b8755f58:[()=>a.e(87568).then(a.bind(a,524350)),"@site/docs/computer-science/distributed-system/intro.md",524350],b875b7e2:[()=>a.e(54750).then(a.bind(a,694995)),"@site/docs/databases/others/database-migration-tools.md",694995],b880d8d6:[()=>a.e(24311).then(a.bind(a,433563)),"@site/docs/ai/big-data/intro.md",433563],b89a6dba:[()=>a.e(49758).then(a.bind(a,271462)),"@site/docs/devops/ides/medium-blogging.md",271462],b8b56775:[()=>a.e(82406).then(a.bind(a,983740)),"@site/docs/decentralized-applications/ethereum/dao.md",983740],b8c29717:[()=>a.e(71705).then(a.bind(a,717198)),"@site/docs/technologies/apache/apache-hadoop/mapreduce-examples.md",717198],b8dd516b:[()=>a.e(21234).then(a.bind(a,652019)),"@site/docs/knowledge/games/chess.md",652019],b8eb7062:[()=>a.e(15580).then(a.bind(a,111190)),"@site/docs/algorithms/mathematics/mo-algorithm.md",111190],b9076747:[()=>a.e(29290).then(a.bind(a,266842)),"@site/docs/psychology/personality.md",266842],b917e4ee:[()=>a.e(5282).then(a.bind(a,420627)),"@site/docs/python/advanced/architecture.md",420627],b9246567:[()=>a.e(49482).then(a.bind(a,368336)),"@site/docs/devops/devops-intro/sre-site-reliability-engineering.md",368336],b927db4f:[()=>a.e(17326).then(a.bind(a,594147)),"@site/docs/python/django/admin-site.md",594147],b93292a5:[()=>a.e(76909).then(a.bind(a,450665)),"@site/docs/knowledge/language/mistakes.md",450665],b9417b4f:[()=>a.e(85572).then(a.bind(a,813467)),"@site/docs/python/documentation/15-cryptographic-services.md",813467],b9cb8e54:[()=>a.e(26682).then(a.bind(a,154629)),"@site/docs/devops/others/jenkins.md",154629],b9d278ec:[()=>a.e(60145).then(a.bind(a,440290)),"@site/docs/algorithms/advanced-algorithms/multi-armed-bandit-mab.md",440290],b9e3d0b1:[()=>a.e(49946).then(a.bind(a,772478)),"@site/docs/technologies/apache/apache-storm.md",772478],b9ea67ee:[()=>a.e(81991).then(a.bind(a,809506)),"@site/docs/economics/accounting-for-finance/6a-ratio-analysis.md",809506],b9f664ea:[()=>a.e(17711).then(a.bind(a,54450)),"@site/docs/data-structures/general/mutable-immutable-data-structures.md",54450],ba102e45:[()=>a.e(55794).then(a.bind(a,404038)),"@site/docs/mathematics/general/readme.md",404038],ba4adc45:[()=>a.e(627).then(a.bind(a,904012)),"@site/docs/book-summaries/dollars-and-sense.md",904012],ba4e493b:[()=>a.e(19437).then(a.bind(a,877430)),"@site/docs/technologies/git/readme.md",877430],ba53b495:[()=>a.e(17580).then(a.bind(a,515608)),"@site/docs/mathematics/algebra/cheatsheet.md",515608],ba559799:[()=>a.e(40621).then(a.bind(a,766228)),"@site/docs/knowledge/quotes-proverbs/science.md",766228],ba927853:[()=>a.e(71454).then(a.bind(a,237408)),"@site/docs/algorithms/graphtheory/strong-components.md",237408],bad288b1:[()=>a.e(47264).then(a.bind(a,837271)),"@site/docs/ai/big-data/characteristics.md",837271],bae47db6:[()=>a.e(22775).then(a.bind(a,527264)),"@site/docs/computer-science/operating-system/journaling-file-system.md",527264],bae68937:[()=>a.e(40900).then(a.bind(a,585857)),"@site/docs/decentralized-applications/references-learning.md",585857],bb18bbf5:[()=>a.e(23131).then(a.bind(a,938860)),"@site/docs/management/product-management/coursera-pm.md",938860],bb1c1fe6:[()=>a.e(10907).then(a.bind(a,532008)),"@site/docs/about-me/projects/58-aws-gen-ai-hackathon-rag.md",532008],bb1c90a8:[()=>a.e(94511).then(a.bind(a,593184)),"@site/docs/technologies/elasticsearch/getting-started.md",593184],bb311866:[()=>a.e(59476).then(a.bind(a,553720)),"@site/docs/knowledge/youtube-podcasts-magazine-apps.md",553720],bb423491:[()=>a.e(36953).then(a.bind(a,823158)),"@site/docs/economics/accounting-for-finance/5-cleaning-up-accounting.md",823158],bb686a38:[()=>a.e(91692).then(a.bind(a,463508)),"@site/docs/data-structures/trie/suffix-array.md",463508],bb6df15d:[()=>a.e(5005).then(a.bind(a,338014)),"@site/docs/computer-science/interview-question/system-design-autocomplete-or-typeahead.md",338014],bb72dca4:[()=>a.e(8820).then(a.bind(a,221743)),"@site/docs/computer-science/system-design/twelve-factor-app.md",221743],bb8c182d:[()=>a.e(66763).then(a.bind(a,505793)),"@site/docs/management/jobs/hiring-plan-hr-recruiting.md",505793],bb938ede:[()=>a.e(67860).then(a.bind(a,946169)),"@site/docs/computer-science/iot/edge-computing.md",946169],bbc42cd9:[()=>a.e(51725).then(a.bind(a,733405)),"@site/docs/databases/sql-databases/aws-aurora/high-availability-ha.md",733405],bc1a26f8:[()=>a.e(6625).then(a.bind(a,267655)),"@site/docs/frontend/js-javascript/others.md",267655],bc25b73b:[()=>a.e(95849).then(a.bind(a,15257)),"@site/docs/knowledge/biology/nerves-system.md",15257],bc47dbd0:[()=>a.e(43431).then(a.bind(a,969029)),"@site/docs/book-summaries/social-intelligence.md",969029],bc901dfc:[()=>a.e(8365).then(a.bind(a,553203)),"@site/docs/economics/market-terms/swing-trading.md",553203],bcc1187d:[()=>a.e(90401).then(a.bind(a,711043)),"@site/docs/databases/nosql-databases/redis/documentation.md",711043],bcdff59f:[()=>a.e(48347).then(a.bind(a,102417)),"@site/docs/databases/nosql-databases/mongodb/overview.md",102417],bd20fe8a:[()=>a.e(57281).then(a.bind(a,799046)),"@site/docs/decentralized-applications/ethereum/07-blocks.md",799046],bd7f1b8f:[()=>a.e(67360).then(a.bind(a,545916)),"@site/docs/algorithms/graphtheory/minimum-spanning-tree.md",545916],bde2df36:[()=>a.e(76286).then(a.bind(a,185498)),"@site/docs/courses/data-integration-specialist-aws.md",185498],be00f405:[()=>a.e(2193).then(a.bind(a,965337)),"@site/docs/cloud/others/cdn-cache-invalidation.md",965337],be04eaee:[()=>a.e(55984).then(a.bind(a,681115)),"@site/docs/devops/servers/apache-server.md",681115],be0a9f6e:[()=>a.e(11314).then(a.bind(a,35200)),"@site/docs/computer-science/programming-concepts/others.md",35200],be19e1d5:[()=>a.e(53262).then(a.bind(a,304151)),"@site/docs/management/people-management/culture.md",304151],be1d5c82:[()=>a.e(51876).then(a.bind(a,149290)),"@site/docs/data-structures/hashtable/hash-functions.md",149290],be3e4fe1:[()=>a.e(43566).then(a.bind(a,271296)),"@site/docs/computer-science/operating-system/cache-coherence-invalidation.md",271296],be74349b:[()=>a.e(33597).then(a.bind(a,959899)),"@site/docs/knowledge/general/outline-of-knowledge.md",959899],be91c586:[()=>a.e(9948).then(a.bind(a,542132)),"@site/docs/frontend/frontend-intro/performance.md",542132],beb22820:[()=>a.e(89111).then(a.bind(a,183824)),"@site/docs/computer-science/distributed-system/byzantine-generals-problem.md",183824],bec21548:[()=>a.e(32250).then(a.bind(a,911317)),"@site/docs/knowledge/history/indian-history-timeline.md",911317],beebdab0:[()=>a.e(50902).then(a.bind(a,651894)),"@site/docs/data-structures/graph/adjacency-list.md",651894],bef674ea:[()=>a.e(77782).then(a.bind(a,353313)),"@site/docs/ai/data-visualization/tableau/augmented-analytics.md",353313],beff3a47:[()=>a.e(83119).then(a.bind(a,920169)),"@site/docs/networking/others/protocol-buffers-protobuf.md",920169],bf055f75:[()=>a.e(46840).then(a.bind(a,70150)),"@site/docs/ai/scikit-learn/scipy-cheatsheet.md",70150],bf2a7286:[()=>a.e(23868).then(a.bind(a,253915)),"@site/docs/algorithms/searching-sorting/knuth-shuffle.md",253915],bf300302:[()=>a.e(3748).then(a.bind(a,809686)),"@site/docs/ai/llm/models.md",809686],bf3412c9:[()=>a.e(78675).then(a.bind(a,982044)),"@site/docs/knowledge/quotes-proverbs/poems.md",982044],bf7076ce:[()=>a.e(70329).then(a.bind(a,520410)),"@site/docs/psychology/parenting.md",520410],bfa047fa:[()=>a.e(94593).then(a.bind(a,395088)),"@site/docs/book-summaries/the-distraction-addiction.md",395088],bfbc7760:[()=>a.e(15459).then(a.bind(a,296253)),"@site/docs/technologies/brokers/rabbitmq.md",296253],bfc94c09:[()=>a.e(92398).then(a.bind(a,838295)),"@site/docs/computer-science/system-design/api-gateway.md",838295],c00062fe:[()=>a.e(84992).then(a.bind(a,721964)),"@site/docs/computer-science/security/cryptography/post-quantum-cryptography.md",721964],c00a8218:[()=>a.e(52339).then(a.bind(a,361752)),"@site/docs/frontend/frontend-intro/readme.md",361752],c0165b2f:[()=>a.e(78079).then(a.bind(a,873191)),"@site/docs/ai/move-37/5-rl-in-continuous-space.md",873191],c02ab5b2:[()=>a.e(56177).then(a.bind(a,697167)),"@site/docs/languages/php/frameworks.md",697167],c03a9fc5:[()=>a.e(3617).then(a.bind(a,502956)),"@site/docs/book-summaries/talking-across-divide.md",502956],c06a6acd:[()=>a.e(17601).then(a.bind(a,983412)),"@site/docs/management/jobs/questions-to-company.md",983412],c07c9892:[()=>a.e(66852).then(a.bind(a,29829)),"@site/docs/databases/data-warehousing/tools.md",29829],c0b2aaee:[()=>a.e(62184).then(a.bind(a,217250)),"@site/docs/psychology/human-psychology-and-thinking.md",217250],c0d24781:[()=>a.e(1172).then(a.bind(a,54274)),"@site/docs/book-summaries/the-slight-edge.md",54274],c0e121ea:[()=>a.e(38325).then(a.bind(a,816702)),"@site/docs/knowledge/history/crash-course-world-history.md",816702],c0efee4a:[()=>a.e(25991).then(a.bind(a,683814)),"@site/docs/management/project-management/readme.md",683814],c0f007da:[()=>a.e(50096).then(a.bind(a,880731)),"@site/docs/networking/networking-concepts/sockets.md",880731],c10b2e89:[()=>a.e(45109).then(a.bind(a,38808)),"@site/docs/book-summaries/atomic-habits.md",38808],c12f7a7e:[()=>a.e(60362).then(a.bind(a,361054)),"@site/docs/ai/data-visualization/tableau/architecture-components.md",361054],c13e7d9c:[()=>a.e(38747).then(a.bind(a,575692)),"@site/docs/databases/concepts/disk-oriented-vs-in-memory-dbs.md",575692],c15f9260:[()=>a.e(34010).then(a.bind(a,475166)),"@site/docs/data-structures/general/readme.md",475166],c1a24813:[()=>a.e(74171).then(a.bind(a,570706)),"@site/docs/databases/nosql-databases/time-series-db/timescaledb.md",570706],c1ed5211:[()=>a.e(16813).then(a.bind(a,36825)),"@site/docs/economics/learning.md",36825],c226fa82:[()=>a.e(84036).then(a.bind(a,988901)),"@site/docs/decentralized-applications/ethereum/40-proof-of-stake.md",988901],c231574d:[()=>a.e(44514).then(a.bind(a,843378)),"@site/docs/frontend/html-css/css-intro/css-positions.md",843378],c257c048:[()=>a.e(8755).then(a.bind(a,430857)),"@site/docs/psychology/strategic-thinking.md",430857],c2682d57:[()=>a.e(81337).then(a.bind(a,976572)),"@site/docs/computer-science/distributed-system/consistency.md",976572],c28621dc:[()=>a.e(6546).then(a.bind(a,745444)),"@site/docs/knowledge/history/human-history-anthropology.md",745444],c2a0948b:[()=>a.e(6118).then(a.bind(a,904615)),"@site/docs/devops/terminal-bash/bash-metacharacters.md",904615],c2d1b4ee:[()=>a.e(78992).then(a.bind(a,530662)),"@site/docs/networking/networking-concepts/readme.md",530662],c2f77f66:[()=>a.e(47804).then(a.bind(a,692738)),"@site/docs/algorithms/string-algorithms/rabin-karp.md",692738],c2f7a6ea:[()=>a.e(85430).then(a.bind(a,604465)),"@site/docs/technologies/elasticsearch/internal-working.md",604465],c316c1ad:[()=>a.e(66987).then(a.bind(a,423875)),"@site/docs/computer-science/iot/industrial-iot-iiot.md",423875],c329d557:[()=>a.e(72940).then(a.bind(a,816769)),"@site/docs/python/django/unicode.md",816769],c32c59f5:[()=>a.e(81525).then(a.bind(a,974430)),"@site/docs/economics/market-terms/technical-analysis.md",974430],c3505156:[()=>a.e(35140).then(a.bind(a,346649)),"@site/docs/languages/frameworks/android/service.md",346649],c36ab1bd:[()=>a.e(77275).then(a.bind(a,925711)),"@site/docs/algorithms/searching-sorting/convex-hull.md",925711],c372e2c9:[()=>a.e(16294).then(a.bind(a,505108)),"@site/docs/book-summaries/the-knowledge-illusion.md",505108],c3900d40:[()=>a.e(96039).then(a.bind(a,306726)),"@site/docs/technologies/databricks/30-unity-catalog.md",306726],c391f84c:[()=>a.e(79531).then(a.bind(a,493554)),"@site/docs/technologies/apache/airflow/concepts.md",493554],c3ad09c3:[()=>a.e(66465).then(a.bind(a,123368)),"@site/docs/devops/monitoring/grafana.md",123368],c3adc699:[()=>a.e(39713).then(a.bind(a,606707)),"@site/docs/python/python-intro/keywords.md",606707],c3e6e88e:[()=>a.e(95820).then(a.bind(a,717275)),"@site/docs/about-me/projects/67-data-engineering-battle-cards.md",717275],c3e79756:[()=>a.e(56303).then(a.bind(a,276929)),"@site/docs/frontend/frontend-intro/design-system.md",276929],c3e939ce:[()=>a.e(7769).then(a.bind(a,305673)),"@site/docs/ai/pandas/commands.md",305673],c431f366:[()=>a.e(55144).then(a.bind(a,930822)),"@site/docs/python/django/django-rest-framework-drf.md",930822],c44000da:[()=>a.e(70906).then(a.bind(a,87092)),"@site/docs/databases/nosql-databases/druid/documentation.md",87092],c45cb948:[()=>a.e(9817).then(a.bind(a,648196)),"@site/docs/databases/sql-databases/aws-aurora/backup.md",648196],c467afa5:[()=>a.e(73782).then(a.bind(a,888470)),"@site/docs/mathematics/probability/intro-to-probability/3.-independence.md",888470],c4703826:[()=>a.e(71141).then(a.bind(a,31823)),"@site/docs/knowledge/biology/organ-systems.md",31823],c4b51740:[()=>a.e(88227).then(a.bind(a,605394)),"@site/docs/cloud/tools.md",605394],c4cf7d63:[()=>a.e(59238).then(a.bind(a,809375)),"@site/docs/databases/nosql-databases/tidb.md",809375],c51c1c74:[()=>a.e(41218).then(a.bind(a,82569)),"@site/docs/networking/protocols/readme.md",82569],c5272b08:[()=>a.e(17589).then(a.bind(a,345693)),"@site/docs/cloud/others/azure/microsoft-biztalk.md",345693],c52adcee:[()=>a.e(26396).then(a.bind(a,95629)),"@site/docs/cloud/aws/analytics/amazon-athena.md",95629],c54c39fb:[()=>a.e(81156).then(a.bind(a,344246)),"@site/docs/algorithms/string-algorithms/boyer-moore.md",344246],c5593764:[()=>a.e(14810).then(a.bind(a,154229)),"@site/docs/management/product-management/retail-offline-sales.md",154229],c55abab5:[()=>a.e(92159).then(a.bind(a,672710)),"@site/docs/mathematics/readme.md",672710],c564d086:[()=>a.e(99662).then(a.bind(a,490748)),"@site/docs/computer-science/software-engineering/readme.md",490748],c56cedd5:[()=>a.e(60454).then(a.bind(a,286574)),"@site/docs/python/python-intro/operators.md",286574],c57745bd:[()=>a.e(40770).then(a.bind(a,241158)),"@site/docs/python/python-intro/sorting.md",241158],c588d1c0:[()=>a.e(48113).then(a.bind(a,541808)),"@site/docs/cloud/aws/storage/amazon-s3-pricing.md",541808],c5a6f2e4:[()=>a.e(3531).then(a.bind(a,906348)),"@site/docs/databases/nosql-databases/druid/architecture.md",906348],c5a8c861:[()=>a.e(21226).then(a.bind(a,509589)),"@site/docs/languages/frameworks/android/tools.md",509589],c5f13ae4:[()=>a.e(14222).then(a.bind(a,142443)),"@site/docs/languages/php/readme.md",142443],c62c47a1:[()=>a.e(63810).then(a.bind(a,784291)),"@site/docs/mathematics/geometry/analytic-geometry.md",784291],c6317b5c:[()=>a.e(1265).then(a.bind(a,911665)),"@site/docs/ai/big-data/design-of-key-value-stores.md",911665],c6467846:[()=>a.e(95695).then(a.bind(a,298917)),"@site/docs/computer-science/programming-paradigms/behavioral-memento.md",298917],c65f2b06:[()=>a.e(79232).then(a.bind(a,859314)),"@site/docs/algorithms/data-compression/run-length-encoding.md",859314],c6ae45bd:[()=>a.e(70512).then(a.bind(a,105297)),"@site/docs/python/documentation/21-structured-markup-processing-tools.md",105297],c6db823f:[()=>a.e(29688).then(a.bind(a,336152)),"@site/docs/about-me/projects/48-rag-genai-presentation.md",336152],c6e8dfa8:[()=>a.e(44986).then(a.bind(a,952492)),"@site/docs/languages/frameworks/stacks.md",952492],c704f9ba:[()=>a.e(70765).then(a.bind(a,168903)),"@site/docs/databases/concepts/amazon-databases.md",168903],c7198950:[()=>a.e(76746).then(a.bind(a,434068)),"@site/docs/languages/others/ruby.md",434068],c72a4712:[()=>a.e(40680).then(a.bind(a,789209)),"@site/docs/computer-science/software-engineering/intro.md",789209],c733cdb7:[()=>a.e(35917).then(a.bind(a,699764)),"@site/docs/book-summaries/how-to-have-impossible-conversations.md",699764],c75161d4:[()=>a.e(27229).then(a.bind(a,456226)),"@site/docs/knowledge/games/others.md",456226],c7ac3740:[()=>a.e(99852).then(a.bind(a,914045)),"@site/docs/databases/sql-databases/aws-aurora/aurora-serverless.md",914045],c7ac7e59:[()=>a.e(30267).then(a.bind(a,748730)),"@site/docs/devops/ides/obsidian.md",748730],c7c2570f:[()=>a.e(76978).then(a.bind(a,306398)),"@site/docs/ai/nlp/readme.md",306398],c7d2cba2:[()=>a.e(64780).then(a.bind(a,249835)),"@site/docs/about-me/projects/81-stashfin-terms.md",249835],c807a952:[()=>a.e(36162).then(a.bind(a,662403)),"@site/docs/databases/nosql-databases/readme.md",662403],c810624d:[()=>a.e(88422).then(a.bind(a,254282)),"@site/docs/ai/deep-learning/others.md",254282],c8221725:[()=>a.e(84957).then(a.bind(a,403115)),"@site/docs/networking/mqtt/mqtt-5.0.md",403115],c82767e8:[()=>a.e(94656).then(a.bind(a,351461)),"@site/docs/frontend/others/nextjs/data-fetching.md",351461],c83bd3fe:[()=>a.e(21253).then(a.bind(a,352115)),"@site/docs/ai/move-37/q-learning-algorithms.md",352115],c83cfd4a:[()=>a.e(48974).then(a.bind(a,852455)),"@site/docs/languages/others/readme.md",852455],c85f0934:[()=>a.e(60829).then(a.bind(a,649918)),"@site/docs/economics/investment-terms.md",649918],c88e9bba:[()=>a.e(62584).then(a.bind(a,582596)),"@site/docs/technologies/readme.md",582596],c8a154e5:[()=>a.e(59910).then(a.bind(a,51461)),"@site/docs/psychology/soft-skills/writing.md",51461],c8a9b736:[()=>a.e(99667).then(a.bind(a,578039)),"@site/docs/courses/course-data-mining-nptel.md",578039],c8ad60a8:[()=>a.e(27053).then(a.bind(a,747774)),"@site/docs/languages/java/questions.md",747774],c8d90b2c:[()=>a.e(39898).then(a.bind(a,591164)),"@site/docs/computer-science/security/cryptography/diffie-hellman-key-exchange.md",591164],c8dd794d:[()=>a.e(97776).then(a.bind(a,561892)),"@site/docs/python/python-intro/resources.md",561892],c8eb20f4:[()=>a.e(12413).then(a.bind(a,408944)),"@site/docs/mathematics/probability/intro-to-probability/4.-counting.md",408944],c8ecd240:[()=>a.e(19691).then(a.bind(a,340929)),"@site/docs/devops/kubernetes/configuration.md",340929],c8f0ef4c:[()=>a.e(52718).then(a.bind(a,934511)),"@site/docs/frontend/html-css/css-intro/centering.md",934511],c8f4185a:[()=>a.e(7522).then(a.bind(a,703688)),"@site/docs/technologies/apache/apache-hudi.md",703688],c90d0280:[()=>a.e(14383).then(a.bind(a,736829)),"@site/docs/ai/numpy/internals.md",736829],c93a9903:[()=>a.e(71761).then(a.bind(a,353073)),"@site/docs/management/project-management/template.md",353073],c93e60ce:[()=>a.e(6039).then(a.bind(a,66199)),"@site/docs/databases/concepts/comparisions.md",66199],c9891c49:[()=>a.e(48177).then(a.bind(a,953120)),"@site/docs/technologies/brokers/readme.md",953120],c99a5c0c:[()=>a.e(62802).then(a.bind(a,335758)),"@site/docs/algorithms/advanced-algorithms/disk-scheduling-algorithms.md",335758],c9e735bf:[()=>a.e(60037).then(a.bind(a,76392)),"@site/docs/frontend/react/jsx.md",76392],c9f1543a:[()=>a.e(91564).then(a.bind(a,859799)),"@site/docs/networking/networking-concepts/osi-layers.md",859799],ca09ef23:[()=>a.e(52285).then(a.bind(a,889208)),"@site/docs/about-me/projects/47-genai-case-study-careers360.md",889208],ca0aac9a:[()=>a.e(61749).then(a.bind(a,619991)),"@site/docs/python/documentation/33-python-language-services.md",619991],ca110a81:[()=>a.e(80487).then(a.bind(a,852189)),"@site/docs/ai/nlp/intro.md",852189],ca13a905:[()=>a.e(9037).then(a.bind(a,692499)),"@site/docs/management/project-management/atlas.md",692499],ca683491:[()=>a.e(76516).then(a.bind(a,298926)),"@site/docs/ai/pandas/examples.md",298926],ca71a369:[()=>a.e(29087).then(a.bind(a,257391)),"@site/docs/algorithms/searching-sorting/binary-search.md",257391],ca7d293f:[()=>a.e(96237).then(a.bind(a,279840)),"@site/docs/devops/devops-intro/load-balancing-algorithms.md",279840],ca8001eb:[()=>a.e(93372).then(a.bind(a,187931)),"@site/docs/computer-science/general/uuid-guid.md",187931],ca925540:[()=>a.e(45383).then(a.bind(a,616814)),"@site/docs/mathematics/linear-algebra/vectors-and-spaces.md",616814],ca9c5bba:[()=>a.e(50406).then(a.bind(a,595084)),"@site/docs/decentralized-applications/defi.md",595084],cafcc54c:[()=>a.e(96959).then(a.bind(a,896468)),"@site/docs/management/business/service-based-model.md",896468],cbb95bc3:[()=>a.e(36462).then(a.bind(a,768757)),"@site/docs/computer-science/general/common.md",768757],cbd5628f:[()=>a.e(75967).then(a.bind(a,745190)),"@site/docs/languages/java/spring.md",745190],cc14da3a:[()=>a.e(14392).then(a.bind(a,180374)),"@site/docs/devops/ides/others.md",180374],cc33128a:[()=>a.e(18695).then(a.bind(a,15949)),"@site/docs/ai/llm/design-patterns.md",15949],cc34a8e8:[()=>a.e(71421).then(a.bind(a,581837)),"@site/docs/computer-science/operating-system/disk-io.md",581837],cc50dead:[()=>a.e(6682).then(a.bind(a,962205)),"@site/docs/computer-science/interview-question/system-design-tinyurl.md",962205],cc56b7cc:[()=>a.e(32873).then(a.bind(a,937279)),"@site/docs/psychology/brain.md",937279],cc698da5:[()=>a.e(45446).then(a.bind(a,910924)),"@site/docs/devops/monitoring/open-tracing.md",910924],cc7463bb:[()=>a.e(18316).then(a.bind(a,578455)),"@site/docs/python/others/flask/others.md",578455],cc77d3b0:[()=>a.e(42898).then(a.bind(a,497801)),"@site/docs/ai/llm/intro.md",497801],cc8144f8:[()=>a.e(50078).then(a.bind(a,424294)),"@site/docs/decentralized-applications/coins-tokens-chains/nft-non-fungible-tokens.md",424294],cca0f3d8:[()=>a.e(17716).then(a.bind(a,863766)),"@site/docs/python/django/authentication-authorization.md",863766],ccb63f17:[()=>a.e(34624).then(a.bind(a,198414)),"@site/docs/technologies/kafka/confluent-kafka.md",198414],cd0a470d:[()=>a.e(51485).then(a.bind(a,312870)),"@site/docs/management/people-management/people-team-management.md",312870],cd241184:[()=>a.e(51881).then(a.bind(a,793562)),"@site/docs/computer-science/links.md",793562],cd3e60c9:[()=>a.e(95097).then(a.bind(a,834448)),"@site/docs/management/project-management/pm101.md",834448],cd42044e:[()=>a.e(63713).then(a.bind(a,423182)),"@site/docs/databases/others/databases-others.md",423182],cd53372a:[()=>a.e(38741).then(a.bind(a,908059)),"@site/docs/psychology/people.md",908059],cd5469f3:[()=>a.e(59211).then(a.bind(a,917643)),"@site/docs/computer-science/programming-concepts/dependency-injection.md",917643],cd64faf8:[()=>a.e(78395).then(a.bind(a,696829)),"@site/docs/python/documentation/07-binary-data-services.md",696829],cd6c3109:[()=>a.e(13952).then(a.bind(a,315032)),"@site/docs/computer-science/others/readme.md",315032],cd7ca406:[()=>a.e(414).then(a.bind(a,914978)),"@site/docs/technologies/kafka/kafka-listeners.md",914978],cd9b1589:[()=>a.e(60068).then(a.bind(a,688786)),"@site/docs/python/python-intro/map-reduce-filter.md",688786],cdc3ba10:[()=>a.e(65773).then(a.bind(a,848291)),"@site/docs/computer-science/software-engineering/modeling-languages.md",848291],cdcc5fa3:[()=>a.e(41759).then(a.bind(a,642038)),"@site/docs/languages/java/concurrency.md",642038],cdcf058e:[()=>a.e(46256).then(a.bind(a,110679)),"@site/docs/economics/market-terms/readme.md",110679],cddf3852:[()=>a.e(44569).then(a.bind(a,611283)),"@site/docs/python/python-intro/generators.md",611283],cde21a8e:[()=>a.e(45594).then(a.bind(a,682681)),"@site/docs/networking/protocols/rest-representational-state-transfer-restful.md",682681],cdec6549:[()=>a.e(27912).then(a.bind(a,522677)),"@site/docs/python/documentation/16-generic-operating-system-services-logging.md",522677],cdf4a2ec:[()=>a.e(40320).then(a.bind(a,243182)),"@site/docs/ai/move-37/others.md",243182],ce0642b2:[()=>a.e(29285).then(a.bind(a,82116)),"@site/docs/data-structures/hashtable/count-min-sketch.md",82116],ce2c24be:[()=>a.e(71976).then(a.bind(a,62928)),"@site/docs/knowledge/general/intro.md",62928],ce592090:[()=>a.e(28370).then(a.bind(a,956186)),"@site/docs/cloud/aws/security-identity-compliance/tools.md",956186],ce5f3bbd:[()=>a.e(35025).then(a.bind(a,476863)),"@site/docs/python/django/advanced.md",476863],ce709fa2:[()=>a.e(30310).then(a.bind(a,276447)),"@site/docs/ai/data-science/intro.md",276447],ce8198de:[()=>a.e(43083).then(a.bind(a,749649)),"@site/docs/courses/course-credit-risk-modeling/intro.md",749649],ce9add6b:[()=>a.e(81243).then(a.bind(a,969638)),"@site/docs/languages/frameworks/server-driven-mobile-uis.md",969638],ce9ea299:[()=>a.e(25081).then(a.bind(a,442927)),"@site/docs/knowledge/biology/nutrition/chart.md",442927],ce9feb30:[()=>a.e(2577).then(a.bind(a,762229)),"@site/docs/algorithms/complex-systems/readme.md",762229],cea849cf:[()=>a.e(86270).then(a.bind(a,720984)),"@site/docs/ai/nlp/word-embedding-to-transformers.md",720984],cecc582b:[()=>a.e(19849).then(a.bind(a,332305)),"@site/docs/technologies/others/other-technologies.md",332305],cf0995e5:[()=>a.e(8594).then(a.bind(a,854851)),"@site/docs/python/python-intro/oops.md",854851],cf15446c:[()=>a.e(65373).then(a.bind(a,566240)),"@site/docs/python/readme.md",566240],cf5b13a0:[()=>a.e(27607).then(a.bind(a,804571)),"@site/docs/databases/data-warehousing/05-characteristics.md",804571],cf6bdd7c:[()=>a.e(98747).then(a.bind(a,842635)),"@site/docs/book-summaries/solve-for-happy.md",842635],cf86b07c:[()=>a.e(19527).then(a.bind(a,153412)),"@site/docs/languages/java/intro.md",153412],cf8e3490:[()=>a.e(87409).then(a.bind(a,665557)),"@site/docs/ai/data-science/data-governance.md",665557],cf97801c:[()=>a.e(65044).then(a.bind(a,143446)),"@site/docs/python/others/sqlalchemy/orm.md",143446],cf993bc7:[()=>a.e(59514).then(a.bind(a,399997)),"@site/docs/computer-science/operating-system/caching-strategies-topologies.md",399997],cfa2ce09:[()=>a.e(25977).then(a.bind(a,145745)),"@site/docs/knowledge/others/politics/types-of-governments.md",145745],cff363c4:[()=>a.e(94758).then(a.bind(a,599673)),"@site/docs/databases/data-warehousing/master-data-management-mdm.md",599673],d03df7a0:[()=>a.e(27728).then(a.bind(a,742980)),"@site/docs/decentralized-applications/coins-tokens-chains/cardano.md",742980],d096a42b:[()=>a.e(58255).then(a.bind(a,490288)),"@site/docs/computer-science/others/digital-circuits.md",490288],d0c4708b:[()=>a.e(66859).then(a.bind(a,266835)),"@site/docs/python/python-intro/datetime.md",266835],d0d09311:[()=>a.e(85668).then(a.bind(a,630945)),"@site/docs/mathematics/geometry/transformations.md",630945],d114c4b0:[()=>a.e(53362).then(a.bind(a,941174)),"@site/docs/devops/kubernetes/readme.md",941174],d14167f1:[()=>a.e(22880).then(a.bind(a,558585)),"@site/docs/devops/others/keycloak.md",558585],d1581b0c:[()=>a.e(82142).then(a.bind(a,633939)),"@site/docs/courses/mordern-algorithm-design.md",633939],d1b33a18:[()=>a.e(38975).then(a.bind(a,241409)),"@site/docs/courses/course-feature-engineering.md",241409],d1c9aa76:[()=>a.e(53527).then(a.bind(a,430763)),"@site/docs/computer-science/programming-concepts/marshalling.md",430763],d1ff2058:[()=>a.e(9511).then(a.bind(a,798753)),"@site/docs/frontend/react/react-native.md",798753],d22d9b6d:[()=>a.e(8972).then(a.bind(a,965469)),"@site/docs/databases/nosql-databases/aws-dynamodb/capacity-modes.md",965469],d2316923:[()=>a.e(5290).then(a.bind(a,136045)),"@site/docs/ai/llm/llm-building.md",136045],d293a106:[()=>a.e(28729).then(a.bind(a,292607)),"@site/docs/python/python-intro/iterators.md",292607],d294ef1a:[()=>a.e(19932).then(a.bind(a,849833)),"@site/docs/algorithms/dynamic-programming/how-to-find-dp.md",849833],d2af2fde:[()=>a.e(50611).then(a.bind(a,620132)),"@site/docs/about-me/projects/90-stashfin-tech-stack-infra.md",620132],d2c050f8:[()=>a.e(46687).then(a.bind(a,900054)),"@site/docs/data-structures/hashtable/list-of-hash-functions.md",900054],d2ce5b93:[()=>a.e(24063).then(a.bind(a,990061)),"@site/docs/data-structures/graph/readme.md",990061],d3039818:[()=>a.e(38690).then(a.bind(a,948874)),"@site/docs/languages/others/rust.md",948874],d34274e2:[()=>a.e(51608).then(a.bind(a,402782)),"@site/docs/management/project-management/sdlc-methodologies.md",402782],d35fc51e:[()=>a.e(86721).then(a.bind(a,450661)),"@site/docs/book-summaries/the-tangled-tree.md",450661],d368e665:[()=>a.e(84853).then(a.bind(a,986724)),"@site/docs/cloud/readme.md",986724],d3727675:[()=>a.e(55977).then(a.bind(a,941460)),"@site/docs/mathematics/statistics/intro.md",941460],d377857d:[()=>a.e(67446).then(a.bind(a,657907)),"@site/docs/languages/php/intro.md",657907],d37a131f:[()=>a.e(30986).then(a.bind(a,291529)),"@site/docs/psychology/productivity-productive-time-management-todo.md",291529],d38d2381:[()=>a.e(11740).then(a.bind(a,562592)),"@site/docs/frontend/react/libraries.md",562592],d3a862da:[()=>a.e(77689).then(a.bind(a,644130)),"@site/docs/ai/data-visualization/metabase.md",644130],d3b69c52:[()=>a.e(79870).then(a.bind(a,549429)),"@site/docs/knowledge/games/touch-typing.md",549429],d3c0b677:[()=>a.e(10281).then(a.bind(a,412236)),"@site/docs/knowledge/games/swimming.md",412236],d3c17cf8:[()=>a.e(45418).then(a.bind(a,170727)),"@site/docs/frontend/frontend-intro/wordpress.md",170727],d41071dd:[()=>a.e(87426).then(a.bind(a,630437)),"@site/docs/computer-science/iot/edgexfoundary.md",630437],d426ac74:[()=>a.e(98167).then(a.bind(a,873)),"@site/docs/economics/accounting-for-finance/3-balance-sheets.md",873],d468f64b:[()=>a.e(56832).then(a.bind(a,105692)),"@site/docs/databases/concepts/types-of-databases.md",105692],d47564c4:[()=>a.e(18512).then(a.bind(a,784742)),"@site/docs/decentralized-applications/coins-tokens-chains/ordinals.md",784742],d48167fb:[()=>a.e(55223).then(a.bind(a,132372)),"@site/docs/languages/php/documentation.md",132372],d4af3fcf:[()=>a.e(26667).then(a.bind(a,962674)),"@site/docs/devops/others/other-cicd.md",962674],d4e25030:[()=>a.e(10795).then(a.bind(a,163558)),"@site/docs/ai/libraries/readme.md",163558],d507a037:[()=>a.e(7936).then(a.bind(a,388515)),"@site/docs/decentralized-applications/ethereum/erc-4337.md",388515],d50dfd50:[()=>a.e(41776).then(a.bind(a,344629)),"@site/docs/mathematics/probability/intro-to-probability/8.-probability-density-functions.md",344629],d5139e95:[()=>a.e(29714).then(a.bind(a,134816)),"@site/docs/devops/kubernetes/tools.md",134816],d529bbb9:[()=>a.e(54179).then(a.bind(a,289503)),"@site/docs/mathematics/aptitude/distance-speed-and-time.md",289503],d533a339:[()=>a.e(865).then(a.bind(a,571910)),"@site/docs/devops/devops-intro/intro.md",571910],d537425d:[()=>a.e(40638).then(a.bind(a,785758)),"@site/docs/about-me/projects/45-traditional-ai-case-studies.md",785758],d584c66b:[()=>a.e(72449).then(a.bind(a,396989)),"@site/docs/about-me/projects/99-ciso-cybersecurity.md",396989],d58ae76d:[()=>a.e(3741).then(a.bind(a,445444)),"@site/docs/ai/data-visualization/tableau/concepts.md",445444],d59848a8:[()=>a.e(45754).then(a.bind(a,118044)),"@site/docs/economics/corporate-finance/readme.md",118044],d5997a8b:[()=>a.e(96128).then(a.bind(a,555962)),"@site/docs/frontend/js-javascript/questions.md",555962],d5d59f0a:[()=>a.e(40580).then(a.bind(a,731961)),"@site/docs/algorithms/general/sweep-line-algorithm.md",731961],d6007645:[()=>a.e(68126).then(a.bind(a,685949)),"@site/docs/ai/libraries/distributed-training.md",685949],d627edab:[()=>a.e(10301).then(a.bind(a,235807)),"@site/docs/computer-science/interview-question/system-design-messenger-whatsapp.md",235807],d639b208:[()=>a.e(69215).then(a.bind(a,659882)),"@site/docs/databases/others/database-activity-monitoring-dam.md",659882],d68baeea:[()=>a.e(9837).then(a.bind(a,450894)),"@site/docs/cloud/aws/course-architecting-on-aws.md",450894],d68f3dc1:[()=>a.e(31468).then(a.bind(a,353259)),"@site/docs/algorithms/graphtheory/intro.md",353259],d6a283c1:[()=>a.e(7156).then(a.bind(a,638243)),"@site/docs/algorithms/general/reverse-polish-notation-postfix-notation.md",638243],d6b4ec17:[()=>a.e(80334).then(a.bind(a,472106)),"@site/docs/frontend/others/nodejs/readme.md",472106],d6bdce32:[()=>a.e(47054).then(a.bind(a,200817)),"@site/docs/ai/big-data/readme.md",200817],d6bf1de4:[()=>a.e(46405).then(a.bind(a,405820)),"@site/docs/devops/monitoring/istio/observability.md",405820],d6f20820:[()=>a.e(14025).then(a.bind(a,864072)),"@site/docs/databases/nosql-databases/etcd.md",864072],d729392a:[()=>a.e(67944).then(a.bind(a,378246)),"@site/docs/data-structures/hierarchical-data-structure/readme.md",378246],d731b30a:[()=>a.e(39533).then(a.bind(a,355794)),"@site/docs/ai/move-37/readme.md",355794],d7aa0938:[()=>a.e(41481).then(a.bind(a,529596)),"@site/docs/computer-science/testing/selenium.md",529596],d81549b3:[()=>a.e(28003).then(a.bind(a,553334)),"@site/docs/ai/ml-fundamentals/preliminaries.md",553334],d8219638:[()=>a.e(93253).then(a.bind(a,11657)),"@site/docs/languages/frameworks/others.md",11657],d823d01d:[()=>a.e(91297).then(a.bind(a,150644)),"@site/docs/networking/networking-concepts/network-sockets-ports.md",150644],d83a3d0b:[()=>a.e(39436).then(a.bind(a,706843)),"@site/docs/data-structures/linear-data-structure/problems.md",706843],d841969e:[()=>a.e(7988).then(a.bind(a,136880)),"@site/docs/databases/nosql-databases/time-series-db/influxdb/readme.md",136880],d84ed3ad:[()=>a.e(49240).then(a.bind(a,934116)),"@site/docs/computer-science/security/cryptography/cryptography-terms.md",934116],d8664968:[()=>a.e(90110).then(a.bind(a,676557)),"@site/docs/databases/nosql-databases/redis/redis-queues.md",676557],d87c0237:[()=>a.e(7260).then(a.bind(a,133102)),"@site/docs/algorithms/general/algorithms-questions.md",133102],d8a6bad3:[()=>a.e(8216).then(a.bind(a,979005)),"@site/docs/courses/aws-certified-developer-associate.md",979005],d8c58372:[()=>a.e(66463).then(a.bind(a,794981)),"@site/docs/ai/ml-fundamentals/ml-process.md",794981],d8d41ab8:[()=>a.e(65794).then(a.bind(a,319276)),"@site/docs/ai/ml-algorithms/dimensionality-reduction.md",319276],d8f2b11a:[()=>a.e(18668).then(a.bind(a,262941)),"@site/docs/book-summaries/leadership-and-the-rise-of-great-powers.md",262941],d8fe0c2c:[()=>a.e(54127).then(a.bind(a,291942)),"@site/docs/languages/others/javascript-templating.md",291942],d900fa9c:[()=>a.e(55103).then(a.bind(a,478345)),"@site/docs/networking/protocols/intro.md",478345],d9019d19:[()=>a.e(57425).then(a.bind(a,487874)),"@site/docs/computer-science/others/bioinformatics-biotechnology.md",487874],d9138238:[()=>a.e(58212).then(a.bind(a,124728)),"@site/docs/languages/java/frameworks.md",124728],d97cef4a:[()=>a.e(94098).then(a.bind(a,359719)),"@site/docs/knowledge/physics/astronomy.md",359719],d98ddacb:[()=>a.e(46668).then(a.bind(a,620372)),"@site/docs/technologies/elasticsearch/architecture.md",620372],d9af1197:[()=>a.e(46091).then(a.bind(a,786602)),"@site/docs/book-summaries/skin-in-the-game.md",786602],d9e605a3:[()=>a.e(13565).then(a.bind(a,802507)),"@site/docs/technologies/apache/apache-spark/99-others.md",802507],da542f6a:[()=>a.e(74015).then(a.bind(a,723761)),"@site/docs/knowledge/quotes-proverbs/motivation.md",723761],da635f2e:[()=>a.e(7889).then(a.bind(a,257781)),"@site/docs/decentralized-applications/consensus-protocols.md",257781],da6560fe:[()=>a.e(10302).then(a.bind(a,223254)),"@site/docs/knowledge/quotes-proverbs/coding.md",223254],da7f7179:[()=>a.e(6822).then(a.bind(a,82331)),"@site/docs/algorithms/dynamic-programming/readme.md",82331],da943af9:[()=>a.e(50947).then(a.bind(a,125458)),"@site/docs/python/documentation/17-concurrent-execution.md",125458],da9c04d6:[()=>a.e(49289).then(a.bind(a,968487)),"@site/docs/devops/kubernetes/kubeedge.md",968487],da9f8a46:[()=>a.e(62019).then(a.bind(a,536649)),"@site/docs/languages/php/codeigniter/application-architecture.md",536649],dae27688:[()=>a.e(89359).then(a.bind(a,681461)),"@site/docs/languages/sql/partiql.md",681461],dae501b9:[()=>a.e(81302).then(a.bind(a,115947)),"@site/docs/devops/devops-intro/readme.md",115947],db136261:[()=>a.e(38484).then(a.bind(a,617514)),"@site/docs/frontend/frontend-intro/others.md",617514],db1d5af5:[()=>a.e(41978).then(a.bind(a,762564)),"@site/docs/economics/finance-investing/returns-tax-taxes-itr.md",762564],db2ca997:[()=>a.e(13586).then(a.bind(a,664597)),"@site/docs/devops/monitoring/service-mesh.md",664597],db64d0e5:[()=>a.e(17737).then(a.bind(a,656761)),"@site/docs/languages/others/r-language.md",656761],dba7f4b5:[()=>a.e(61218).then(a.bind(a,925587)),"@site/docs/cloud/others/azure/commands.md",925587],dbb62a2a:[()=>a.e(97897).then(a.bind(a,794271)),"@site/docs/algorithms/searching-sorting/insertion-sort.md",794271],dbcab21f:[()=>a.e(11086).then(a.bind(a,197125)),"@site/docs/management/project-management/jira.md",197125],dbe61e74:[()=>a.e(74396).then(a.bind(a,931948)),"@site/docs/frontend/others/angularjs/01-intro.md",931948],dbed93d3:[()=>a.e(10276).then(a.bind(a,555334)),"@site/docs/decentralized-applications/crypto-news.md",555334],dbf20724:[()=>a.e(91317).then(a.bind(a,74989)),"@site/docs/cloud/others/gcp-anthos.md",74989],dbf6cae9:[()=>a.e(16117).then(a.bind(a,889649)),"@site/docs/cloud/aws/storage/iops.md",889649],dc1ace8c:[()=>a.e(17356).then(a.bind(a,966115)),"@site/docs/languages/java/template-fastio.md",966115],dc6842ee:[()=>a.e(29146).then(a.bind(a,800176)),"@site/docs/mathematics/linear-algebra/3blue1brown.md",800176],dc7a35b7:[()=>a.e(48920).then(a.bind(a,114223)),"@site/docs/databases/sql-databases/aws-redshift/etl-redshift.md",114223],dca812e2:[()=>a.e(94701).then(a.bind(a,318339)),"@site/docs/languages/c++/readme.md",318339],dd0472cd:[()=>a.e(55229).then(a.bind(a,709472)),"@site/docs/languages/golang/hello-world.md",709472],dd1bc69e:[()=>a.e(98171).then(a.bind(a,544160)),"@site/docs/devops/servers/nginx/readme.md",544160],dd2c11b4:[()=>a.e(77705).then(a.bind(a,663372)),"@site/docs/devops/kubernetes/tools-serverless.md",663372],dd33531e:[()=>a.e(63162).then(a.bind(a,703569)),"@site/docs/cloud/aws/compute/aws-lambda.md",703569],dd5275d7:[()=>a.e(10875).then(a.bind(a,10950)),"@site/docs/languages/sql/dcl-data-control-language.md",10950],dd5e46bd:[()=>a.e(90341).then(a.bind(a,518104)),"@site/docs/technologies/elasticsearch/others.md",518104],dd618cf0:[()=>a.e(40691).then(a.bind(a,553424)),"@site/docs/devops/kubernetes/concepts-and-overview/readme.md",553424],dd8c3804:[()=>a.e(10913).then(a.bind(a,306858)),"@site/docs/languages/frameworks/android/testing.md",306858],ddccaa2c:[()=>a.e(58618).then(a.bind(a,383547)),"@site/docs/languages/frameworks/android/questions.md",383547],ddd728ec:[()=>a.e(50289).then(a.bind(a,637688)),"@site/docs/computer-science/programming-concepts/type-introspection-and-reflection.md",637688],de01c036:[()=>a.e(61181).then(a.bind(a,570262)),"@site/docs/ai/big-data/parameter-servers.md",570262],de179cdb:[()=>a.e(92074).then(a.bind(a,124494)),"@site/docs/data-structures/hashtable/hash-tables.md",124494],de28d039:[()=>a.e(57396).then(a.bind(a,553922)),"@site/docs/algorithms/algorithmic-complexity/finite-state-machine.md",553922],de2c012e:[()=>a.e(13581).then(a.bind(a,781760)),"@site/docs/knowledge/others/international-relations-ir.md",781760],de5048fa:[()=>a.e(2242).then(a.bind(a,207641)),"@site/docs/databases/sql-databases/partitioning-sharding.md",207641],de58c38c:[()=>a.e(82196).then(a.bind(a,741366)),"@site/docs/mathematics/probability/others.md",741366],de8218f3:[()=>a.e(59939).then(a.bind(a,617168)),"@site/docs/computer-science/distributed-system/distributed-logging.md",617168],deb8deea:[()=>a.e(98569).then(a.bind(a,688882)),"@site/docs/knowledge/language/linguistics.md",688882],debc2ac0:[()=>a.e(29758).then(a.bind(a,997499)),"@site/docs/book-summaries/on-writing-well.md",997499],df4b7cc5:[()=>a.e(72361).then(a.bind(a,190553)),"@site/docs/psychology/course-mindshift.md",190553],df6b95bd:[()=>a.e(60691).then(a.bind(a,776297)),"@site/docs/data-structures/hashtable/questions.md",776297],df736c07:[()=>a.e(82920).then(a.bind(a,610222)),"@site/docs/databases/others/technologies-tools.md",610222],df933f11:[()=>a.e(55834).then(a.bind(a,95482)),"@site/docs/knowledge/applied-sciences/electrical-engineering.md",95482],df9fe7ba:[()=>a.e(11221).then(a.bind(a,956095)),"@site/docs/algorithms/searching-sorting/selection-sort.md",956095],dfa4e97b:[()=>a.e(67188).then(a.bind(a,578643)),"@site/docs/book-summaries/deep-work.md",578643],dfb31c2f:[()=>a.e(80940).then(a.bind(a,383459)),"@site/docs/devops/monitoring/istio/examples.md",383459],e00878e0:[()=>a.e(71005).then(a.bind(a,366771)),"@site/docs/economics/monetary-policies.md",366771],e020122f:[()=>a.e(85083).then(a.bind(a,597742)),"@site/docs/devops/docker/networking.md",597742],e026f506:[()=>a.e(55693).then(a.bind(a,253358)),"@site/docs/databases/modeling/readme.md",253358],e02d4261:[()=>a.e(92988).then(a.bind(a,503523)),"@site/docs/devops/kubernetes/concepts-and-overview/configuration/readme.md",503523],e035c743:[()=>a.e(71247).then(a.bind(a,441841)),"@site/docs/technologies/databricks/01-databricks.md",441841],e055a8e0:[()=>a.e(72346).then(a.bind(a,862399)),"@site/docs/about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering.md",862399],e096acea:[()=>a.e(63157).then(a.bind(a,673385)),"@site/docs/cloud/aws/aws-sqs.md",673385],e0cb0678:[()=>a.e(41331).then(a.bind(a,402309)),"@site/docs/networking/others/file-formats.md",402309],e0d2cd7d:[()=>a.e(24795).then(a.bind(a,519904)),"@site/docs/mathematics/probability/intro-to-probability/5.-probability-mass-functions-and-expectations.md",519904],e0e5fa6e:[()=>a.e(27456).then(a.bind(a,616447)),"@site/docs/computer-science/operating-system/caches-caching.md",616447],e0ede7b0:[()=>a.e(47695).then(a.bind(a,881402)),"@site/docs/ai/data-visualization/tableau/others.md",881402],e106b148:[()=>a.e(68633).then(a.bind(a,985167)),"@site/docs/python/documentation/22-internet-protocols-and-support.md",985167],e107b173:[()=>a.e(56754).then(a.bind(a,974315)),"@site/docs/management/product-management/product-market-fit-pmf.md",974315],e1167f59:[()=>a.e(25034).then(a.bind(a,524046)),"@site/docs/python/python-intro/mathematics.md",524046],e120b4f9:[()=>a.e(209).then(a.bind(a,782877)),"@site/docs/book-summaries/what-philosophy-can-teach-you-about-being-a-better-leader.md",782877],e15c040a:[()=>a.e(79783).then(a.bind(a,789476)),"@site/docs/computer-science/operating-system/scheduling.md",789476],e164095a:[()=>a.e(91701).then(a.bind(a,31833)),"@site/docs/databases/nosql-databases/time-series-db/influxdb/concepts.md",31833],e18b2af1:[()=>a.e(35884).then(a.bind(a,352038)),"@site/docs/databases/nosql-databases/mongodb/commands.md",352038],e1b20be9:[()=>a.e(72506).then(a.bind(a,812273)),"@site/docs/psychology/learning/chunking-the-essentials.md",812273],e1ce5f43:[()=>a.e(96282).then(a.bind(a,772795)),"@site/docs/frontend/others/angularjs/11-services.md",772795],e1e1542e:[()=>a.e(36945).then(a.bind(a,103056)),"@site/docs/devops/readme.md",103056],e2026f46:[()=>a.e(5693).then(a.bind(a,910429)),"@site/docs/management/others.md",910429],e23035c7:[()=>a.e(58038).then(a.bind(a,489701)),"@site/docs/mathematics/probability/intro-to-probability/intro-syllabus.md",489701],e23e2ae1:[()=>a.e(55216).then(a.bind(a,688607)),"@site/docs/management/business/readme.md",688607],e260012a:[()=>a.e(31566).then(a.bind(a,67073)),"@site/docs/databases/nosql-databases/cassandra/working.md",67073],e26217ff:[()=>a.e(75339).then(a.bind(a,879817)),"@site/docs/mathematics/general/advanced-topics.md",879817],e28efc2d:[()=>a.e(53848).then(a.bind(a,512945)),"@site/docs/data-structures/graph/adjacency-matrix.md",512945],e2b18b0b:[()=>a.e(75430).then(a.bind(a,186418)),"@site/docs/networking/mqtt/topics-and-best-practices.md",186418],e2c820cb:[()=>a.e(17456).then(a.bind(a,698011)),"@site/docs/databases/concepts/acid-and-base.md",698011],e2d9413a:[()=>a.e(29977).then(a.bind(a,454457)),"@site/docs/mathematics/statistics/inferential-statistics.md",454457],e2f6bfb9:[()=>a.e(17893).then(a.bind(a,199817)),"@site/docs/devops/devops-intro/gitops.md",199817],e2ff36f5:[()=>a.e(73536).then(a.bind(a,149860)),"@site/docs/decentralized-applications/ethereum/ethereum-staking.md",149860],e30700e1:[()=>a.e(22597).then(a.bind(a,24715)),"@site/docs/networking/protocols/websockets.md",24715],e3108717:[()=>a.e(33928).then(a.bind(a,202095)),"@site/docs/python/python-intro/data-structure/dictionary-architecture.md",202095],e31507fb:[()=>a.e(90764).then(a.bind(a,563223)),"@site/docs/databases/data-warehousing/09-kimball-inmon-architecture.md",563223],e33518f0:[()=>a.e(37203).then(a.bind(a,924532)),"@site/docs/algorithms/graphtheory/eulerian-trail.md",924532],e35009c9:[()=>a.e(18046).then(a.bind(a,369387)),"@site/docs/devops/devops-intro/deployment-strategies.md",369387],e390ffa8:[()=>a.e(13676).then(a.bind(a,874980)),"@site/docs/ai/data-science/readme.md",874980],e3a4555e:[()=>a.e(11525).then(a.bind(a,836340)),"@site/docs/computer-science/operating-system/write-ahead-log-wal.md",836340],e3d2b31d:[()=>a.e(61388).then(a.bind(a,244317)),"@site/docs/courses/course-data-storage-and-processing-edx.md",244317],e3e4de53:[()=>a.e(29690).then(a.bind(a,807849)),"@site/docs/algorithms/searching-sorting/quick-sort.md",807849],e3e99992:[()=>a.e(23679).then(a.bind(a,754889)),"@site/docs/devops/docker/service-configuration-reference.md",754889],e41fb257:[()=>a.e(71466).then(a.bind(a,477909)),"@site/docs/knowledge/geography/indian-states-and-uts.md",477909],e43bd2da:[()=>a.e(62984).then(a.bind(a,304696)),"@site/docs/ai/llm/rag-retrieval-augmented-generation.md",304696],e44c29dd:[()=>a.e(48313).then(a.bind(a,756542)),"@site/docs/mathematics/calculus/others.md",756542],e44f2d3a:[()=>a.e(94260).then(a.bind(a,610694)),"@site/docs/computer-science/security/cryptography/cryptographic-algorithms.md",610694],e4540bbd:[()=>a.e(55498).then(a.bind(a,341831)),"@site/docs/devops/monitoring/prometheus/rules.md",341831],e47654be:[()=>a.e(32733).then(a.bind(a,440424)),"@site/docs/databases/nosql-databases/time-series-db/influxdb/tools.md",440424],e4b9dfdf:[()=>a.e(25306).then(a.bind(a,761138)),"@site/docs/algorithms/bit-manipulation/examples.md",761138],e4c6ffa9:[()=>a.e(75749).then(a.bind(a,409134)),"@site/docs/algorithms/algorithmic-complexity/complexity-zoo.md",409134],e4f61c4e:[()=>a.e(54767).then(a.bind(a,654164)),"@site/docs/databases/nosql-databases/redis/redis-concepts.md",654164],e5178119:[()=>a.e(75855).then(a.bind(a,415182)),"@site/docs/technologies/git/branching-strategies.md",415182],e51f07b9:[()=>a.e(14952).then(a.bind(a,635402)),"@site/docs/python/documentation/11-file-and-directory-access.md",635402],e5267f78:[()=>a.e(76710).then(a.bind(a,220146)),"@site/docs/languages/frameworks/readme.md",220146],e549c26c:[()=>a.e(88720).then(a.bind(a,413881)),"@site/docs/languages/sql/postgres-commands.md",413881],e5573cd9:[()=>a.e(64073).then(a.bind(a,507157)),"@site/docs/computer-science/programming-paradigms/functional-programming.md",507157],e57355cb:[()=>a.e(28815).then(a.bind(a,257275)),"@site/docs/knowledge/language/figures-of-speech.md",257275],e5b9ecad:[()=>a.e(61997).then(a.bind(a,983489)),"@site/docs/databases/data-warehousing/01-intro.md",983489],e5f641b0:[()=>a.e(35267).then(a.bind(a,847294)),"@site/docs/python/others/sqlalchemy/models.md",847294],e5f8b095:[()=>a.e(10245).then(a.bind(a,144542)),"@site/docs/mathematics/linear-algebra/others.md",144542],e65adc75:[()=>a.e(10146).then(a.bind(a,141435)),"@site/docs/economics/mental-models/inequality.md",141435],e65b3f53:[()=>a.e(56573).then(a.bind(a,953202)),"@site/docs/technologies/apache/apache-projects.md",953202],e65fdc7b:[()=>a.e(35238).then(a.bind(a,187244)),"@site/docs/networking/protocols/rsocket.md",187244],e660cbf6:[()=>a.e(15060).then(a.bind(a,644196)),"@site/docs/about-me/projects/52-pull-request-risk-tagging-heuristics.md",644196],e68e0ea5:[()=>a.e(50913).then(a.bind(a,776976)),"@site/docs/python/documentation/pep.md",776976],e6a0bcd2:[()=>a.e(70738).then(a.bind(a,41731)),"@site/docs/frontend/others/nestjs/readme.md",41731],e6a4ea59:[()=>a.e(87946).then(a.bind(a,24066)),"@site/docs/knowledge/others/others.md",24066],e6afa1ff:[()=>a.e(70574).then(a.bind(a,687846)),"@site/docs/psychology/soft-skills/listening.md",687846],e6ba063e:[()=>a.e(18671).then(a.bind(a,26556)),"@site/docs/databases/indexing/indexing-questions.md",26556],e6fb533f:[()=>a.e(18235).then(a.bind(a,647388)),"@site/docs/ai/pandas/data-structures.md",647388],e7496e50:[()=>a.e(84516).then(a.bind(a,53877)),"@site/docs/ai/deep-learning/roadmap.md",53877],e74fc6ad:[()=>a.e(45240).then(a.bind(a,498587)),"@site/docs/cloud/aws/analytics/amazon-devops-guru.md",498587],e75bc432:[()=>a.e(95641).then(a.bind(a,562218)),"@site/docs/mathematics/algebra/sets.md",562218],e760ae37:[()=>a.e(94549).then(a.bind(a,892469)),"@site/docs/decentralized-applications/coins-tokens-chains/uniswap.md",892469],e76757ba:[()=>a.e(31745).then(a.bind(a,371947)),"@site/docs/algorithms/complex-systems/minimax-algorithm.md",371947],e77a8723:[()=>a.e(4968).then(a.bind(a,222690)),"@site/docs/languages/others/general.md",222690],e7c0e905:[()=>a.e(62730).then(a.bind(a,661363)),"@site/docs/management/jobs/finance-equity-stocks-esops-questions.md",661363],e83e3026:[()=>a.e(83053).then(a.bind(a,730661)),"@site/docs/ai/nlp/chatbot-saas.md",730661],e84ec42e:[()=>a.e(25261).then(a.bind(a,831275)),"@site/docs/databases/data-warehousing/data-engineering.md",831275],e8598cfb:[()=>a.e(20310).then(a.bind(a,660725)),"@site/docs/decentralized-applications/coins-tokens-chains/readme.md",660725],e85f9bbd:[()=>a.e(48807).then(a.bind(a,666108)),"@site/docs/technologies/git/theory.md",666108],e87d62ba:[()=>a.e(5681).then(a.bind(a,632106)),"@site/docs/databases/sql-databases/mysql/mysqldump.md",632106],e89298c5:[()=>a.e(75664).then(a.bind(a,324826)),"@site/docs/courses/course-credit-risk-modeling/fraud-types.md",324826],e8b86052:[()=>a.e(74405).then(a.bind(a,841645)),"@site/docs/devops/others/readme.md",841645],e8d15684:[()=>a.e(93294).then(a.bind(a,990933)),"@site/docs/economics/finance-investing/readme.md",990933],e8dffcb3:[()=>a.e(33603).then(a.bind(a,285620)),"@site/docs/languages/php/web-concepts.md",285620],e905ba4c:[()=>a.e(15748).then(a.bind(a,928950)),"@site/docs/ai/ml-fundamentals/loss-function.md",928950],e96a01a5:[()=>a.e(89086).then(a.bind(a,765655)),"@site/docs/databases/modeling/er-diagrams-entity-relationships.md",765655],e97437cb:[()=>a.e(98532).then(a.bind(a,388082)),"@site/docs/computer-science/system-design/reactive-microservices-manifesto.md",388082],e9954bc0:[()=>a.e(99392).then(a.bind(a,264603)),"@site/docs/ai/numpy/readme.md",264603],e9aa7a07:[()=>a.e(83084).then(a.bind(a,333120)),"@site/docs/devops/kubernetes/cluster-administration/others.md",333120],e9bba891:[()=>a.e(41681).then(a.bind(a,786157)),"@site/docs/databases/nosql-databases/others.md",786157],e9cd5ec7:[()=>a.e(395).then(a.bind(a,543877)),"@site/docs/data-structures/trie/ternary-search-tries-tst.md",543877],e9dd33b6:[()=>a.e(92311).then(a.bind(a,460343)),"@site/docs/decentralized-applications/crypto-future.md",460343],e9e616d1:[()=>a.e(3417).then(a.bind(a,132425)),"@site/docs/ai/scikit-learn/intro.md",132425],ea165559:[()=>a.e(56378).then(a.bind(a,938474)),"@site/docs/economics/market-terms/valuation-metrics.md",938474],ea3ec73d:[()=>a.e(53417).then(a.bind(a,848456)),"@site/docs/python/django/queryset-and-query-expressions.md",848456],ea7744f3:[()=>a.e(62003).then(a.bind(a,893225)),"@site/docs/courses/readme.md",893225],ea8aa239:[()=>a.e(97645).then(a.bind(a,921747)),"@site/docs/algorithms/general/1d-range-search.md",921747],eaa328c4:[()=>a.e(65343).then(a.bind(a,782122)),"@site/docs/decentralized-applications/ethereum/polygon.md",782122],eabdda22:[()=>a.e(28056).then(a.bind(a,891035)),"@site/docs/about-me/projects/44-agri-tech-digital-transformation-case-study.md",891035],eac62260:[()=>a.e(47537).then(a.bind(a,532997)),"@site/docs/book-summaries/secrets-of-power-negotiating.md",532997],eacd3193:[()=>a.e(99763).then(a.bind(a,949817)),"@site/docs/book-summaries/the-courage-to-be-happy.md",949817],eaf1a824:[()=>a.e(57564).then(a.bind(a,187654)),"@site/docs/cloud/others/cloudflare.md",187654],eaf6200f:[()=>a.e(70536).then(a.bind(a,952370)),"@site/docs/technologies/others/others-distributed-systems.md",952370],eb035d83:[()=>a.e(25405).then(a.bind(a,664380)),"@site/docs/computer-science/system-design/retries.md",664380],eb175f0b:[()=>a.e(98998).then(a.bind(a,598158)),"@site/docs/python/documentation/27-development-tools/readme.md",598158],eb3563af:[()=>a.e(45734).then(a.bind(a,829550)),"@site/docs/algorithms/algorithmic-complexity/readme.md",829550],eb488214:[()=>a.e(71036).then(a.bind(a,418177)),"@site/docs/knowledge/history/readme.md",418177],eb4c94a4:[()=>a.e(10183).then(a.bind(a,164823)),"@site/docs/cloud/aws/networking-content-delivery/amazon-vpc.md",164823],eb4ea52d:[()=>a.e(27901).then(a.bind(a,622924)),"@site/docs/computer-science/distributed-system/readme.md",622924],eb820843:[()=>a.e(85842).then(a.bind(a,64282)),"@site/docs/computer-science/system-design/event-driven-architecture.md",64282],ebbb129c:[()=>a.e(64807).then(a.bind(a,983048)),"@site/docs/computer-science/security/cryptography/readme.md",983048],ebfe7e03:[()=>a.e(66456).then(a.bind(a,200043)),"@site/docs/frontend/frontend-intro/microfrontend-architecture.md",200043],ec54265c:[()=>a.e(75068).then(a.bind(a,224228)),"@site/docs/psychology/learning/concentration-mindfulness-attention-focus-hard-work.md",224228],ec66ec9c:[()=>a.e(72870).then(a.bind(a,132749)),"@site/docs/python/python-intro/readme.md",132749],ec93542a:[()=>a.e(4747).then(a.bind(a,994486)),"@site/docs/knowledge/games/marathon-running.md",994486],eca1b8b1:[()=>a.e(14955).then(a.bind(a,599085)),"@site/docs/databases/nosql-databases/cassandra/design.md",599085],ecb93c98:[()=>a.e(75247).then(a.bind(a,115602)),"@site/docs/databases/sql-databases/aws-redshift/redshift-sql-queries-commands.md",115602],ecb9843c:[()=>a.e(40841).then(a.bind(a,656593)),"@site/docs/devops/terraform/commands.md",656593],ed08c8cc:[()=>a.e(17887).then(a.bind(a,668440)),"@site/docs/knowledge/others/clothes-textiles.md",668440],ed28be15:[()=>a.e(66064).then(a.bind(a,111392)),"@site/docs/devops/kubernetes/services-loadbalancing-and-networking/ingress.md",111392],ed69edac:[()=>a.e(95122).then(a.bind(a,982698)),"@site/docs/about-me/projects/75-bake-io-data-engineering.md",982698],ed8d35ec:[()=>a.e(59058).then(a.bind(a,999829)),"@site/docs/economics/accounting-for-finance/4a-cash-flow-statement-comparisons.md",999829],ed99c0dc:[()=>a.e(29525).then(a.bind(a,482553)),"@site/docs/decentralized-applications/coins-tokens-chains/litecoin.md",482553],ede3c0ca:[()=>a.e(53235).then(a.bind(a,519428)),"@site/docs/mathematics/statistics/correlation-and-covariance.md",519428],ede88100:[()=>a.e(2382).then(a.bind(a,619814)),"@site/docs/languages/java/libraries.md",619814],ee0cc2c9:[()=>a.e(75109).then(a.bind(a,878151)),"@site/docs/networking/protocols/video-live-streaming.md",878151],ee0d3d50:[()=>a.e(10254).then(a.bind(a,399854)),"@site/docs/decentralized-applications/trilemmas.md",399854],ee3c98c1:[()=>a.e(73475).then(a.bind(a,888586)),"@site/docs/mathematics/probability/central-limit-theorem.md",888586],ee7edddd:[()=>a.e(83298).then(a.bind(a,836297)),"@site/docs/cloud/aws/security-identity-compliance/iam.md",836297],eebce009:[()=>a.e(1502).then(a.bind(a,31344)),"@site/docs/algorithms/general/recursion.md",31344],eef71d91:[()=>a.e(14469).then(a.bind(a,388775)),"@site/docs/algorithms/graphtheory/ford-fulkerson-algorithm.md",388775],ef08311a:[()=>a.e(5793).then(a.bind(a,546666)),"@site/docs/book-summaries/the-squiggly-career.md",546666],ef292925:[()=>a.e(20488).then(a.bind(a,76174)),"@site/docs/ai/llm/prompt-engineering.md",76174],ef39e646:[()=>a.e(71383).then(a.bind(a,762487)),"@site/docs/book-summaries/the-life-you-can-save.md",762487],ef59cb6b:[()=>a.e(94467).then(a.bind(a,931297)),"@site/docs/languages/sql/dql-data-query-language/readme.md",931297],ef6225ac:[()=>a.e(50178).then(a.bind(a,104543)),"@site/docs/ai/computer-vision-cv/others.md",104543],ef87d184:[()=>a.e(53521).then(a.bind(a,207724)),"@site/docs/data-structures/linear-data-structure/stack-lifo.md",207724],ef89a91f:[()=>a.e(88845).then(a.bind(a,211053)),"@site/docs/devops/docker/docker-compose.md",211053],ef98d73e:[()=>a.e(80760).then(a.bind(a,745083)),"@site/docs/ai/ml-algorithms/graph-neural-networks-gnn.md",745083],efa97c06:[()=>a.e(85150).then(a.bind(a,217735)),"@site/docs/databases/nosql-databases/time-series-db/influxdb/write-protocols.md",217735],f00be910:[()=>a.e(80923).then(a.bind(a,875236)),"@site/docs/knowledge/others/education-phd.md",875236],f0196f47:[()=>a.e(7923).then(a.bind(a,341758)),"@site/docs/python/python-intro/virtualenv-and-pip.md",341758],f03acf04:[()=>a.e(45426).then(a.bind(a,535635)),"@site/docs/ai/llm/prompt-examples.md",535635],f03d2646:[()=>a.e(94519).then(a.bind(a,987398)),"@site/docs/cloud/aws/readme.md",987398],f0541df1:[()=>a.e(50363).then(a.bind(a,149465)),"@site/docs/computer-science/programming-paradigms/structural-bridge.md",149465],f0685e9b:[()=>a.e(16057).then(a.bind(a,492124)),"@site/docs/python/documentation/readme.md",492124],f0bf3507:[()=>a.e(6184).then(a.bind(a,170526)),"@site/docs/languages/java/threading-in-javafx.md",170526],f0d10d4e:[()=>a.e(1347).then(a.bind(a,754931)),"@site/docs/data-structures/others/large-objects.md",754931],f0e13f26:[()=>a.e(25354).then(a.bind(a,39941)),"@site/docs/data-structures/others/sstables-sorted-string-tables.md",39941],f117244d:[()=>a.e(76233).then(a.bind(a,16913)),"@site/docs/mathematics/statistics/ranking.md",16913],f14d85d6:[()=>a.e(53178).then(a.bind(a,116610)),"@site/docs/python/advanced/super.md",116610],f15a6b92:[()=>a.e(10843).then(a.bind(a,811651)),"@site/docs/devops/devops-intro/finops.md",811651],f17818d9:[()=>a.e(56631).then(a.bind(a,354891)),"@site/docs/data-structures/linear-data-structure/indexed-priority-queue.md",354891],f1a18b9f:[()=>a.e(25956).then(a.bind(a,290202)),"@site/docs/technologies/kafka/kafka-schema-registry.md",290202],f1b09cbf:[()=>a.e(72464).then(a.bind(a,311210)),"@site/docs/mathematics/probability/normal-distributions.md",311210],f1b664f9:[()=>a.e(88215).then(a.bind(a,938519)),"@site/docs/networking/protocols/http-status-code.md",938519],f1bb0e01:[()=>a.e(52322).then(a.bind(a,73521)),"@site/docs/courses/course-time-series-analysis/syllabus.md",73521],f1e8edce:[()=>a.e(54918).then(a.bind(a,362677)),"@site/docs/decentralized-applications/ethereum/layer-2-protocols.md",362677],f207d4b9:[()=>a.e(65595).then(a.bind(a,740466)),"@site/docs/frontend/js-javascript/web-api.md",740466],f20d3f92:[()=>a.e(65019).then(a.bind(a,415307)),"@site/docs/psychology/stoicism.md",415307],f211a507:[()=>a.e(45977).then(a.bind(a,593575)),"@site/docs/languages/c++/stl-containers.md",593575],f214ab3f:[()=>a.e(53122).then(a.bind(a,650034)),"@site/docs/economics/accounting-for-finance/0-accounting-for-finance.md",650034],f220cf36:[()=>a.e(13457).then(a.bind(a,312676)),"@site/docs/computer-science/security/improving-security-posture.md",312676],f22a17f7:[()=>a.e(76010).then(a.bind(a,11431)),"@site/docs/economics/mutual-funds/equity-mutual-funds.md",11431],f239a73a:[()=>a.e(67451).then(a.bind(a,565914)),"@site/docs/databases/data-warehousing/debezium.md",565914],f268c0ab:[()=>a.e(20625).then(a.bind(a,325961)),"@site/docs/computer-science/system-design/architecture-guide.md",325961],f274ac30:[()=>a.e(14306).then(a.bind(a,721765)),"@site/docs/ai/deep-learning/dl-specialization.md",721765],f27ae87f:[()=>a.e(88309).then(a.bind(a,463621)),"@site/docs/management/project-management/scrum-meetings.md",463621],f2bd6e03:[()=>a.e(83363).then(a.bind(a,44718)),"@site/docs/courses/customer-analytics-in-python/intro.md",44718],f2c746ab:[()=>a.e(44020).then(a.bind(a,121194)),"@site/docs/book-summaries/ultralearning.md",121194],f2e84540:[()=>a.e(49987).then(a.bind(a,857525)),"@site/docs/knowledge/biology/exercise-stretching/readme.md",857525],f2edfb9b:[()=>a.e(93283).then(a.bind(a,977843)),"@site/docs/knowledge/history/religion.md",977843],f36d8747:[()=>a.e(13481).then(a.bind(a,200300)),"@site/docs/python/advanced/others.md",200300],f3a00c6b:[()=>a.e(86786).then(a.bind(a,642708)),"@site/docs/languages/golang/testing.md",642708],f3b7383a:[()=>a.e(42793).then(a.bind(a,602044)),"@site/docs/knowledge/biology/others.md",602044],f3efef1b:[()=>a.e(98776).then(a.bind(a,904226)),"@site/docs/data-structures/others/bitmap.md",904226],f4083393:[()=>a.e(90908).then(a.bind(a,392195)),"@site/docs/frontend/others/static-site-generators.md",392195],f4264591:[()=>a.e(61208).then(a.bind(a,279592)),"@site/docs/data-structures/trie/others.md",279592],f42dfe5a:[()=>a.e(77710).then(a.bind(a,106174)),"@site/docs/devops/devops-intro/high-availability.md",106174],f45b387b:[()=>a.e(57105).then(a.bind(a,740611)),"@site/docs/economics/financial-facts.md",740611],f46bb617:[()=>a.e(22844).then(a.bind(a,100068)),"@site/docs/networking/mqtt/retained-messages.md",100068],f48a2864:[()=>a.e(68530).then(a.bind(a,381089)),"@site/docs/languages/others/swift.md",381089],f4a19ee3:[()=>a.e(79830).then(a.bind(a,969500)),"@site/docs/ai/pandas/user_guide.md",969500],f4ad0fd3:[()=>a.e(14021).then(a.bind(a,338006)),"@site/docs/databases/data-warehousing/02-concepts.md",338006],f51889da:[()=>a.e(94675).then(a.bind(a,973297)),"@site/docs/psychology/learning/memory.md",973297],f521e2b6:[()=>a.e(59912).then(a.bind(a,904550)),"@site/docs/data-structures/linear-data-structure/queue-fifo.md",904550],f527699c:[()=>a.e(45805).then(a.bind(a,767248)),"@site/docs/languages/others/json.md",767248],f52e9f97:[()=>a.e(60517).then(a.bind(a,962584)),"@site/docs/technologies/apache/airflow/others.md",962584],f53f33f4:[()=>a.e(98948).then(a.bind(a,565904)),"@site/docs/algorithms/graphtheory/topological-sort-algorithm.md",565904],f5503245:[()=>a.e(43772).then(a.bind(a,757021)),"@site/docs/databases/nosql-databases/time-series-db/influxdb/upgrades.md",757021],f56962b7:[()=>a.e(47359).then(a.bind(a,773856)),"@site/docs/technologies/kafka/kafka-connect.md",773856],f58d83a0:[()=>a.e(19140).then(a.bind(a,740679)),"@site/docs/frontend/react/redux.md",740679],f5a11976:[()=>a.e(67436).then(a.bind(a,385408)),"@site/docs/databases/nosql-databases/cassandra/readme.md",385408],f5b314ad:[()=>a.e(45835).then(a.bind(a,678412)),"@site/docs/computer-science/general/standards.md",678412],f5bbfeaa:[()=>a.e(82436).then(a.bind(a,703104)),"@site/docs/ai/libraries/tensorflow/intro.md",703104],f5d63916:[()=>a.e(72357).then(a.bind(a,451166)),"@site/docs/computer-science/software-engineering/developer-roles.md",451166],f5e69c40:[()=>a.e(22738).then(a.bind(a,842113)),"@site/docs/knowledge/biology/nutrition/honey.md",842113],f5efcba6:[()=>a.e(60041).then(a.bind(a,790919)),"@site/docs/networking/protocols/weave.md",790919],f65a56f1:[()=>a.e(15789).then(a.bind(a,993296)),"@site/docs/python/django/overview.md",993296],f67b003e:[()=>a.e(81885).then(a.bind(a,381203)),"@site/docs/data-structures/hierarchical-data-structure/2-3-search-trees.md",381203],f683f156:[()=>a.e(77417).then(a.bind(a,49144)),"@site/docs/cloud/others/azure/services.md",49144],f6ad7db3:[()=>a.e(90483).then(a.bind(a,549603)),"@site/docs/courses/course-time-series-analysis/intro-time-series.md",549603],f6c6f03e:[()=>a.e(64755).then(a.bind(a,59240)),"@site/docs/languages/others/regular-expressions-regex.md",59240],f6cf4039:[()=>a.e(55941).then(a.bind(a,908247)),"@site/docs/frontend/js-javascript/promises.md",908247],f6f8d3d7:[()=>a.e(13605).then(a.bind(a,782659)),"@site/docs/databases/sql-databases/aws-aurora/intro.md",782659],f6f93ef6:[()=>a.e(21378).then(a.bind(a,610506)),"@site/docs/languages/sql/ddl-data-definition-language/truncate-delete.md",610506],f735d14f:[()=>a.e(24679).then(a.bind(a,26541)),"@site/docs/mathematics/algebra/others.md",26541],f7382781:[()=>a.e(6174).then(a.bind(a,72378)),"@site/docs/devops/devops-intro/infra-as-code-iac.md",72378],f74577ed:[()=>a.e(68416).then(a.bind(a,840378)),"@site/docs/algorithms/general/orthogonal-rectangle-intersection-search.md",840378],f74c03e9:[()=>a.e(36850).then(a.bind(a,463973)),"@site/docs/cloud/aws/storage/amazon-ebs.md",463973],f78aebde:[()=>a.e(49873).then(a.bind(a,779172)),"@site/docs/knowledge/quotes-proverbs/business-management.md",779172],f78ba5d8:[()=>a.e(67651).then(a.bind(a,176108)),"@site/docs/devops/terminal-bash/sysctl.md",176108],f7bb134a:[()=>a.e(6433).then(a.bind(a,699102)),"@site/docs/data-structures/hashtable/kademlia.md",699102],f7c74259:[()=>a.e(63769).then(a.bind(a,887499)),"@site/docs/networking/mqtt/messages.md",887499],f7d8f1fe:[()=>a.e(49783).then(a.bind(a,973290)),"@site/docs/about-me/projects/62-application-management-case-study-telecom.md",973290],f821f4c3:[()=>a.e(83806).then(a.bind(a,393677)),"@site/docs/languages/sql/dql-data-query-language/analytical-queries.md",393677],f8369866:[()=>a.e(62416).then(a.bind(a,597812)),"@site/docs/book-summaries/time-and-how-to-spend-it.md",597812],f8824680:[()=>a.e(60587).then(a.bind(a,518569)),"@site/docs/knowledge/applied-sciences/readme.md",518569],f88946f1:[()=>a.e(96408).then(a.bind(a,245545)),"@site/docs/computer-science/iot/iot-intro.md",245545],f892eb37:[()=>a.e(67968).then(a.bind(a,817195)),"@site/docs/management/jobs/resume-keywords-pointers.md",817195],f8934918:[()=>a.e(62266).then(a.bind(a,770830)),"@site/docs/computer-science/security/authentication/http-authentication.md",770830],f8a60d72:[()=>a.e(46081).then(a.bind(a,144989)),"@site/docs/ai/ml-algorithms/bayes-classification.md",144989],f8c47996:[()=>a.e(7557).then(a.bind(a,313983)),"@site/docs/book-summaries/sell-like-crazy.md",313983],f90f54bf:[()=>a.e(33754).then(a.bind(a,207056)),"@site/docs/management/project-management/agile.md",207056],f920e27c:[()=>a.e(33715).then(a.bind(a,287398)),"@site/docs/languages/c++/storage-classes.md",287398],f9225e33:[()=>a.e(77927).then(a.bind(a,55009)),"@site/docs/algorithms/advanced-algorithms/a-search-algorithm.md",55009],f923b969:[()=>a.e(96117).then(a.bind(a,199063)),"@site/docs/ai/data-visualization/readme.md",199063],f9799c44:[()=>a.e(46579).then(a.bind(a,611882)),"@site/docs/knowledge/physics/others.md",611882],f97dbcee:[()=>a.e(23049).then(a.bind(a,959612)),"@site/docs/cloud/aws/intro.md",959612],f989ac58:[()=>a.e(53509).then(a.bind(a,980794)),"@site/docs/data-structures/hierarchical-data-structure/problems.md",980794],f9b7bfc3:[()=>a.e(48056).then(a.bind(a,900044)),"@site/docs/databases/sql-databases/postgres/readme.md",900044],f9cec272:[()=>a.e(72690).then(a.bind(a,172037)),"@site/docs/economics/accounting-for-finance/readme.md",172037],f9ec14f2:[()=>a.e(46686).then(a.bind(a,336479)),"@site/docs/ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis.md",336479],f9ef4921:[()=>a.e(51402).then(a.bind(a,16017)),"@site/docs/databases/nosql-databases/mongodb/sharding-replication.md",16017],f9f53c6b:[()=>a.e(51978).then(a.bind(a,250401)),"@site/docs/computer-science/testing/test-pyramid.md",250401],fa00348c:[()=>a.e(99295).then(a.bind(a,67704)),"@site/docs/mathematics/aptitude/chinese-remainder-theorem.md",67704],fa1837cc:[()=>a.e(22927).then(a.bind(a,907943)),"@site/docs/databases/sql-databases/aws-redshift/deep-dive-best-practices.md",907943],fa2e59df:[()=>a.e(1404).then(a.bind(a,157833)),"@site/docs/management/jobs/companies.md",157833],fa2eb464:[()=>a.e(1390).then(a.bind(a,651605)),"@site/docs/knowledge/games/family-games-gifts.md",651605],fa308e3f:[()=>a.e(49155).then(a.bind(a,542500)),"@site/docs/psychology/consumerism.md",542500],fa341f26:[()=>a.e(34124).then(a.bind(a,186835)),"@site/docs/databases/nosql-databases/time-series-db/influxdb/administration.md",186835],fa3a1734:[()=>a.e(97719).then(a.bind(a,159380)),"@site/docs/technologies/apache/apache-hadoop/big-data-hadoop-stack.md",159380],fa3da8fe:[()=>a.e(64175).then(a.bind(a,308023)),"@site/docs/python/others/fastapi/internal-working.md",308023],fa41b5a2:[()=>a.e(49586).then(a.bind(a,745477)),"@site/docs/technologies/apache/apache-hadoop/others.md",745477],fa84dd75:[()=>a.e(94928).then(a.bind(a,783462)),"@site/docs/ai/move-37/open-ai-gym.md",783462],faa94ee9:[()=>a.e(57404).then(a.bind(a,269437)),"@site/docs/technologies/elasticsearch/elastalert.md",269437],faacfd6e:[()=>a.e(32033).then(a.bind(a,591965)),"@site/docs/knowledge/law/constitution-of-india/schedules.md",591965],fad442eb:[()=>a.e(68577).then(a.bind(a,778650)),"@site/docs/algorithms/graphtheory/maximum-flow-and-minimum-cut.md",778650],faed44fc:[()=>a.e(61088).then(a.bind(a,774856)),"@site/docs/about-me/achievements-activities-awards.md",774856],fb09ee0e:[()=>a.e(6838).then(a.bind(a,202070)),"@site/docs/ai/ml-fundamentals/practical-ai-problems.md",202070],fb5754a3:[()=>a.e(75550).then(a.bind(a,977968)),"@site/docs/decentralized-applications/coins-tokens-chains/dtokens.md",977968],fba3774f:[()=>a.e(31146).then(a.bind(a,306612)),"@site/docs/databases/nosql-databases/cassandra/consistency.md",306612],fbb35180:[()=>a.e(19414).then(a.bind(a,387420)),"@site/docs/networking/mqtt/intro.md",387420],fbe39656:[()=>a.e(95437).then(a.bind(a,708837)),"@site/docs/databases/sql-databases/postgres/documentation.md",708837],fbe8e077:[()=>a.e(98628).then(a.bind(a,586953)),"@site/docs/ai/computer-vision-cv/cv-libraries-tools.md",586953],fbfb141c:[()=>a.e(84014).then(a.bind(a,346584)),"@site/docs/frontend/react/tools.md",346584],fbfc0a8b:[()=>a.e(47116).then(a.bind(a,664532)),"@site/docs/knowledge/quotes-proverbs/hindi.md",664532],fc1df5ff:[()=>a.e(80931).then(a.bind(a,673769)),"@site/docs/economics/finance-investing/company-analysis.md",673769],fc3c5690:[()=>a.e(81274).then(a.bind(a,620707)),"@site/docs/devops/devops-intro/others.md",620707],fc3cc8f8:[()=>a.e(70363).then(a.bind(a,474709)),"@site/docs/about-me/projects/63-mlops-master-document.md",474709],fc433304:[()=>a.e(50268).then(a.bind(a,859274)),"@site/docs/mathematics/general/others.md",859274],fc43dedf:[()=>a.e(31703).then(a.bind(a,469329)),"@site/docs/networking/others/delta-lake.md",469329],fc4b4c37:[()=>a.e(34854).then(a.bind(a,646342)),"@site/docs/computer-science/programming-paradigms/structural-adapter.md",646342],fc4ec2e8:[()=>a.e(10746).then(a.bind(a,462617)),"@site/docs/mathematics/probability/intro-to-probability/11.-derived-distributions.md",462617],fc7ae345:[()=>a.e(60895).then(a.bind(a,761907)),"@site/docs/psychology/others.md",761907],fc965cda:[()=>a.e(4828).then(a.bind(a,321447)),"@site/docs/psychology/ikigai.md",321447],fca0bf20:[()=>a.e(51716).then(a.bind(a,384122)),"@site/docs/devops/kubernetes/cluster-administration/logging-architecture.md",384122],fce35695:[()=>a.e(45814).then(a.bind(a,476366)),"@site/docs/languages/c++/tc-pl4.md",476366],fd0571f6:[()=>a.e(93268).then(a.bind(a,872258)),"@site/docs/databases/nosql-databases/time-series-db/readme.md",872258],fd06c886:[()=>a.e(89110).then(a.bind(a,985702)),"@site/docs/mathematics/algebra/intro.md",985702],fd368a2a:[()=>a.e(97822).then(a.bind(a,58151)),"@site/docs/data-structures/hashtable/probabilistic-data-structure.md",58151],fd6a9c06:[()=>a.e(59293).then(a.bind(a,409355)),"@site/docs/computer-science/interview-question/coding-interview-questions.md",409355],fdae5f8b:[()=>a.e(73470).then(a.bind(a,112151)),"@site/docs/computer-science/interview-question/system-design-youtube.md",112151],fdb6cd19:[()=>a.e(94364).then(a.bind(a,606740)),"@site/docs/ai/data-visualization/plotly.md",606740],fdbd4f52:[()=>a.e(27129).then(a.bind(a,936860)),"@site/docs/courses/microsoft-excel-google-sheets.md",936860],fdcb80cd:[()=>a.e(47345).then(a.bind(a,596112)),"@site/docs/ai/model-evaluation/model-validation-monitoring.md",596112],fdcef081:[()=>a.e(57854).then(a.bind(a,788454)),"@site/docs/devops/monitoring/grafana-loki.md",788454],fddd49e7:[()=>a.e(81579).then(a.bind(a,448464)),"@site/docs/ai/pandas/readme.md",448464],fe01ae3c:[()=>a.e(41485).then(a.bind(a,99161)),"@site/docs/mathematics/general/fermat-last-theorem.md",99161],fe0adabc:[()=>a.e(64518).then(a.bind(a,29893)),"@site/docs/python/python-intro/data-structure/set.md",29893],fe5aae7c:[()=>a.e(17637).then(a.bind(a,191874)),"@site/docs/technologies/git/github.md",191874],fe6dbb54:[()=>a.e(87191).then(a.bind(a,976532)),"@site/docs/computer-science/security/others.md",976532],fe9eef06:[()=>a.e(51742).then(a.bind(a,203665)),"@site/docs/mathematics/linear-algebra/readme.md",203665],fec19b23:[()=>a.e(32890).then(a.bind(a,173666)),"@site/docs/data-structures/hashtable/hashing.md",173666],fefb3968:[()=>a.e(13600).then(a.bind(a,183429)),"@site/docs/algorithms/searching-sorting/msd-radix-sort.md",183429],fefb45d7:[()=>a.e(30152).then(a.bind(a,645666)),"@site/docs/data-structures/hierarchical-data-structure/kd-trees.md",645666],fefec831:[()=>a.e(20763).then(a.bind(a,208908)),"@site/docs/decentralized-applications/ethereum/03-intro-to-dapps.md",208908],ff23387e:[()=>a.e(9178).then(a.bind(a,738535)),"@site/docs/mathematics/aptitude/cube-cutting.md",738535],ff39f25c:[()=>a.e(87582).then(a.bind(a,676505)),"@site/docs/courses/course-credit-risk-modeling/fraud-features.md",676505],ff3aa1a5:[()=>a.e(29849).then(a.bind(a,594025)),"@site/docs/frontend/react/intro.md",594025],ff577458:[()=>a.e(78024).then(a.bind(a,739678)),"@site/docs/databases/nosql-databases/cassandra/commands.md",739678],ff604660:[()=>a.e(48223).then(a.bind(a,299108)),"@site/docs/languages/c++/frameworks.md",299108],ffa8ad79:[()=>a.e(66440).then(a.bind(a,640569)),"@site/docs/ai/pandas/pandas-intro.md",640569],ffae1dee:[()=>a.e(37638).then(a.bind(a,601507)),"@site/docs/computer-science/testing/terms.md",601507],ffc2bc40:[()=>a.e(79376).then(a.bind(a,214711)),"@site/docs/computer-science/others/game-development.md",214711],ffd3c696:[()=>a.e(6620).then(a.bind(a,584330)),"@site/docs/about-me/ideas/others.md",584330],ffde6f3c:[()=>a.e(55360).then(a.bind(a,453552)),"@site/docs/knowledge/biology/genetics.md",453552]};var r=a(785893);function c(e){let{error:t,retry:a,pastDelay:o}=e;return t?(0,r.jsxs)("div",{style:{textAlign:"center",color:"#fff",backgroundColor:"#fa383e",borderColor:"#fa383e",borderStyle:"solid",borderRadius:"0.25rem",borderWidth:"1px",boxSizing:"border-box",display:"block",padding:"1rem",flex:"0 0 50%",marginLeft:"25%",marginRight:"25%",marginTop:"5rem",maxWidth:"50%",width:"100%"},children:[(0,r.jsx)("p",{children:String(t)}),(0,r.jsx)("div",{children:(0,r.jsx)("button",{type:"button",onClick:a,children:"Retry"})})]}):o?(0,r.jsx)("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:(0,r.jsx)("svg",{id:"loader",style:{width:128,height:110,position:"absolute",top:"calc(100vh - 64%)"},viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",stroke:"#61dafb",children:(0,r.jsxs)("g",{fill:"none",fillRule:"evenodd",transform:"translate(1 1)",strokeWidth:"2",children:[(0,r.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,r.jsx)("animate",{attributeName:"r",begin:"1.5s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,r.jsx)("animate",{attributeName:"stroke-opacity",begin:"1.5s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,r.jsx)("animate",{attributeName:"stroke-width",begin:"1.5s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,r.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,r.jsx)("animate",{attributeName:"r",begin:"3s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,r.jsx)("animate",{attributeName:"stroke-opacity",begin:"3s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,r.jsx)("animate",{attributeName:"stroke-width",begin:"3s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,r.jsx)("circle",{cx:"22",cy:"22",r:"8",children:(0,r.jsx)("animate",{attributeName:"r",begin:"0s",dur:"1.5s",values:"6;1;2;3;4;5;6",calcMode:"linear",repeatCount:"indefinite"})})]})})}):null}var d=a(205304),l=a(469656);function m(e,t){if("*"===e)return i()({loading:c,loader:()=>a.e(60868).then(a.bind(a,260868)),modules:["@theme/NotFound"],webpack:()=>[260868],render(e,t){const a=e.default;return(0,r.jsx)(l.z,{value:{plugin:{name:"native",id:"default"}},children:(0,r.jsx)(a,{...t})})}});const o=n[`${e}-${t}`],m={},p=[],u=[],b=(0,d.Z)(o);return Object.entries(b).forEach((e=>{let[t,a]=e;const o=s[a];o&&(m[t]=o[0],p.push(o[1]),u.push(o[2]))})),i().Map({loading:c,loader:m,modules:p,webpack:()=>u,render(t,a){const i=JSON.parse(JSON.stringify(o));Object.entries(t).forEach((t=>{let[a,o]=t;const n=o.default;if(!n)throw new Error(`The page component at ${e} doesn't have a default export. This makes it impossible to render anything. Consider default-exporting a React component.`);"object"!=typeof n&&"function"!=typeof n||Object.keys(o).filter((e=>"default"!==e)).forEach((e=>{n[e]=o[e]}));let s=i;const r=a.split(".");r.slice(0,-1).forEach((e=>{s=s[e]})),s[r[r.length-1]]=n}));const n=i.__comp;delete i.__comp;const s=i.__context;return delete i.__context,(0,r.jsx)(l.z,{value:s,children:(0,r.jsx)(n,{...i,...a})})}})}const p=[{path:"/search",component:m("/search","d76"),exact:!0},{path:"/",component:m("/","edd"),routes:[{path:"/",component:m("/","e1d"),routes:[{path:"/",component:m("/","4b5"),routes:[{path:"/about-me/",component:m("/about-me/","647"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/achievements-activities-awards",component:m("/about-me/achievements-activities-awards","1a6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/experience",component:m("/about-me/experience","f9b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/faqs",component:m("/about-me/faqs","ff3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/ideas/",component:m("/about-me/ideas/","4b0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/ideas/creating-a-business-startup",component:m("/about-me/ideas/creating-a-business-startup","540"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/ideas/donations",component:m("/about-me/ideas/donations","d2f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/ideas/education",component:m("/about-me/ideas/education","251"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/ideas/improvements-feedbacks",component:m("/about-me/ideas/improvements-feedbacks","d90"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/ideas/intro",component:m("/about-me/ideas/intro","8a1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/ideas/non-profit",component:m("/about-me/ideas/non-profit","c32"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/ideas/others",component:m("/about-me/ideas/others","b4a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/ideas/society",component:m("/about-me/ideas/society","6ec"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/ideas/startup-ideas-physical",component:m("/about-me/ideas/startup-ideas-physical","99c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/ideas/startup-quotes",component:m("/about-me/ideas/startup-quotes","8da"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/ideas/startups-ideas-saas",component:m("/about-me/ideas/startups-ideas-saas","589"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/ideas/thoughts-future-ideas-vision-prediction",component:m("/about-me/ideas/thoughts-future-ideas-vision-prediction","ee8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/paper-publications-references",component:m("/about-me/paper-publications-references","bdb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/personality",component:m("/about-me/personality","850"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/",component:m("/about-me/projects/","46d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/44-agri-tech-digital-transformation-case-study",component:m("/about-me/projects/44-agri-tech-digital-transformation-case-study","903"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/45-traditional-ai-case-studies",component:m("/about-me/projects/45-traditional-ai-case-studies","400"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering",component:m("/about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering","660"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/47-genai-case-study-careers360",component:m("/about-me/projects/47-genai-case-study-careers360","883"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/48-rag-genai-presentation",component:m("/about-me/projects/48-rag-genai-presentation","e17"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/49-data-practical-use-cases",component:m("/about-me/projects/49-data-practical-use-cases","f4c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/50-use-cases-aiml-logistics-warehousing",component:m("/about-me/projects/50-use-cases-aiml-logistics-warehousing","258"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/51-case-study-anomaly-detection",component:m("/about-me/projects/51-case-study-anomaly-detection","911"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/52-pull-request-risk-tagging-heuristics",component:m("/about-me/projects/52-pull-request-risk-tagging-heuristics","e3f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/53-mozark-cloud-cost-optimization",component:m("/about-me/projects/53-mozark-cloud-cost-optimization","c20"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/54-airflow-kafka-migration",component:m("/about-me/projects/54-airflow-kafka-migration","eb9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/55-azure-social-media-analytics",component:m("/about-me/projects/55-azure-social-media-analytics","86a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/56-freecharge-cost-optimization-dba",component:m("/about-me/projects/56-freecharge-cost-optimization-dba","a84"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/57-careers360-cost-optimization",component:m("/about-me/projects/57-careers360-cost-optimization","f28"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/58-aws-gen-ai-hackathon-rag",component:m("/about-me/projects/58-aws-gen-ai-hackathon-rag","660"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/59-data-engineering-product-pitch-iot-industry",component:m("/about-me/projects/59-data-engineering-product-pitch-iot-industry","552"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/60-data-engineering-case-studies",component:m("/about-me/projects/60-data-engineering-case-studies","84c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/61-general-application-management-case-study",component:m("/about-me/projects/61-general-application-management-case-study","2c7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/62-application-management-case-study-telecom",component:m("/about-me/projects/62-application-management-case-study-telecom","26d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/63-mlops-master-document",component:m("/about-me/projects/63-mlops-master-document","1d0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/64-mlops-case-studies",component:m("/about-me/projects/64-mlops-case-studies","d7c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/65-problems-in-iot-industry",component:m("/about-me/projects/65-problems-in-iot-industry","a34"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/66-iot-case-studies",component:m("/about-me/projects/66-iot-case-studies","e72"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/67-data-engineering-battle-cards",component:m("/about-me/projects/67-data-engineering-battle-cards","637"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/70-interview-datainsight-alerting-engine",component:m("/about-me/projects/70-interview-datainsight-alerting-engine","621"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/71-opstree-standard-proposal-format",component:m("/about-me/projects/71-opstree-standard-proposal-format","f36"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/75-bake-io-data-engineering",component:m("/about-me/projects/75-bake-io-data-engineering","378"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/80-stashfin",component:m("/about-me/projects/80-stashfin","ff3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/81-stashfin-terms",component:m("/about-me/projects/81-stashfin-terms","7d3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/82-stashfin-metrics",component:m("/about-me/projects/82-stashfin-metrics","b39"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/85-stashfin-twitter-bot",component:m("/about-me/projects/85-stashfin-twitter-bot","e66"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/86-stashfin-customer-support",component:m("/about-me/projects/86-stashfin-customer-support","d7b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/87-stashfin-team-management-culture",component:m("/about-me/projects/87-stashfin-team-management-culture","bb5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/88-stashfin-security-iam-apis",component:m("/about-me/projects/88-stashfin-security-iam-apis","339"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/89-stashfin-devops-overhaul",component:m("/about-me/projects/89-stashfin-devops-overhaul","b78"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/90-stashfin-tech-stack-infra",component:m("/about-me/projects/90-stashfin-tech-stack-infra","9de"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/91-stashfin-aiml-use-cases",component:m("/about-me/projects/91-stashfin-aiml-use-cases","39f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/98-others",component:m("/about-me/projects/98-others","167"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/projects/99-ciso-cybersecurity",component:m("/about-me/projects/99-ciso-cybersecurity","8f6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/about-me/social-links",component:m("/about-me/social-links","e8c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/",component:m("/ai/","176"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/big-data/",component:m("/ai/big-data/","822"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/big-data/characteristics",component:m("/ai/big-data/characteristics","8a0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/big-data/data",component:m("/ai/big-data/data","b55"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/big-data/data-masking",component:m("/ai/big-data/data-masking","f1d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/big-data/data-preprocessing",component:m("/ai/big-data/data-preprocessing","7a9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/big-data/data-quality",component:m("/ai/big-data/data-quality","7b6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/big-data/design-of-hbase",component:m("/ai/big-data/design-of-hbase","9a9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/big-data/design-of-key-value-stores",component:m("/ai/big-data/design-of-key-value-stores","434"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/big-data/design-of-zookeeper",component:m("/ai/big-data/design-of-zookeeper","ee4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/big-data/intro",component:m("/ai/big-data/intro","604"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/big-data/page-rank",component:m("/ai/big-data/page-rank","46e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/big-data/parameter-servers",component:m("/ai/big-data/parameter-servers","871"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/big-data/processing-engine",component:m("/ai/big-data/processing-engine","823"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/big-data/tools",component:m("/ai/big-data/tools","2ad"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/big-data/types-of-data",component:m("/ai/big-data/types-of-data","a18"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/computer-vision-cv/",component:m("/ai/computer-vision-cv/","670"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/computer-vision-cv/convolutional-neural-network-cnn",component:m("/ai/computer-vision-cv/convolutional-neural-network-cnn","211"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/computer-vision-cv/cv-libraries-tools",component:m("/ai/computer-vision-cv/cv-libraries-tools","032"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/computer-vision-cv/examples",component:m("/ai/computer-vision-cv/examples","f5e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/computer-vision-cv/image-data-labeling-tools",component:m("/ai/computer-vision-cv/image-data-labeling-tools","0e0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/computer-vision-cv/image-formats",component:m("/ai/computer-vision-cv/image-formats","c01"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/computer-vision-cv/imagemagick",component:m("/ai/computer-vision-cv/imagemagick","28e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/computer-vision-cv/intro",component:m("/ai/computer-vision-cv/intro","601"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow",component:m("/ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow","c12"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/computer-vision-cv/model-building-stages",component:m("/ai/computer-vision-cv/model-building-stages","90c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/computer-vision-cv/others",component:m("/ai/computer-vision-cv/others","818"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/computer-vision-cv/pre-trained-models",component:m("/ai/computer-vision-cv/pre-trained-models","bcf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-science/",component:m("/ai/data-science/","302"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-science/data-analysis",component:m("/ai/data-science/data-analysis","4a6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-science/data-governance",component:m("/ai/data-science/data-governance","efc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-science/data-mining",component:m("/ai/data-science/data-mining","1a8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-science/datasets",component:m("/ai/data-science/datasets","748"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-science/intro",component:m("/ai/data-science/intro","9c7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-science/questions",component:m("/ai/data-science/questions","c25"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-science/recommender-system",component:m("/ai/data-science/recommender-system","681"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-science/statistics",component:m("/ai/data-science/statistics","2b9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-science/topics",component:m("/ai/data-science/topics","969"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/",component:m("/ai/data-visualization/","c07"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/bi-tools",component:m("/ai/data-visualization/bi-tools","704"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/charts",component:m("/ai/data-visualization/charts","649"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/d3-data-driven-documents",component:m("/ai/data-visualization/d3-data-driven-documents","ac7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/intro",component:m("/ai/data-visualization/intro","896"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/matplotlib",component:m("/ai/data-visualization/matplotlib","a3b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/metabase",component:m("/ai/data-visualization/metabase","88e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/plotly",component:m("/ai/data-visualization/plotly","803"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/powerbi",component:m("/ai/data-visualization/powerbi","4da"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/tableau/",component:m("/ai/data-visualization/tableau/","4d5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/tableau/architecture-components",component:m("/ai/data-visualization/tableau/architecture-components","a00"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/tableau/augmented-analytics",component:m("/ai/data-visualization/tableau/augmented-analytics","13b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/tableau/concepts",component:m("/ai/data-visualization/tableau/concepts","abd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/tableau/dashboarding",component:m("/ai/data-visualization/tableau/dashboarding","a8b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/tableau/data-model",component:m("/ai/data-visualization/tableau/data-model","8ee"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/tableau/data-sources",component:m("/ai/data-visualization/tableau/data-sources","c6b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/data-visualization/tableau/others",component:m("/ai/data-visualization/tableau/others","1cb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/deep-learning/",component:m("/ai/deep-learning/","83a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/deep-learning/commands",component:m("/ai/deep-learning/commands","3fe"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/deep-learning/components",component:m("/ai/deep-learning/components","7f0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/deep-learning/dl-specialization",component:m("/ai/deep-learning/dl-specialization","e2c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/deep-learning/neural-network-and-deep-learning",component:m("/ai/deep-learning/neural-network-and-deep-learning","c06"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/deep-learning/others",component:m("/ai/deep-learning/others","3e6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/deep-learning/resources",component:m("/ai/deep-learning/resources","88c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/deep-learning/roadmap",component:m("/ai/deep-learning/roadmap","712"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/hackathons",component:m("/ai/hackathons","d9b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/libraries/",component:m("/ai/libraries/","930"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/libraries/aws-sagemaker",component:m("/ai/libraries/aws-sagemaker","ec4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/libraries/deep-learning-frameworks",component:m("/ai/libraries/deep-learning-frameworks","80e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/libraries/distributed-training",component:m("/ai/libraries/distributed-training","3d2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/libraries/jax",component:m("/ai/libraries/jax","28b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/libraries/keras",component:m("/ai/libraries/keras","85e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/libraries/ml-libraries",component:m("/ai/libraries/ml-libraries","d99"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/libraries/ml-monitoring",component:m("/ai/libraries/ml-monitoring","c49"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/libraries/mlops-model-deployment",component:m("/ai/libraries/mlops-model-deployment","47a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/libraries/tensorflow/",component:m("/ai/libraries/tensorflow/","1c6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/libraries/tensorflow/core-tensorflow",component:m("/ai/libraries/tensorflow/core-tensorflow","622"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/libraries/tensorflow/estimator-api",component:m("/ai/libraries/tensorflow/estimator-api","d8e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/libraries/tensorflow/intro",component:m("/ai/libraries/tensorflow/intro","8a0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/libraries/tools",component:m("/ai/libraries/tools","df8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/",component:m("/ai/llm/","c2a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/code-generators",component:m("/ai/llm/code-generators","5bf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/design-patterns",component:m("/ai/llm/design-patterns","fda"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/fintech-use-cases",component:m("/ai/llm/fintech-use-cases","534"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/genai-projects",component:m("/ai/llm/genai-projects","0b9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/interview-questions",component:m("/ai/llm/interview-questions","3cc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/intro",component:m("/ai/llm/intro","dcc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/libraries",component:m("/ai/llm/libraries","b0f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/limitations-problems",component:m("/ai/llm/limitations-problems","570"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/llm-building",component:m("/ai/llm/llm-building","bd6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/llm-tuning",component:m("/ai/llm/llm-tuning","17b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/models",component:m("/ai/llm/models","2b5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/natural-language-to-sql",component:m("/ai/llm/natural-language-to-sql","4bb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/prompt-engineering",component:m("/ai/llm/prompt-engineering","ad9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/prompt-examples",component:m("/ai/llm/prompt-examples","68a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/rag-hackathon-questions",component:m("/ai/llm/rag-hackathon-questions","c7a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/rag-retrieval-augmented-generation",component:m("/ai/llm/rag-retrieval-augmented-generation","8db"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/llm/tools",component:m("/ai/llm/tools","fbc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/",component:m("/ai/ml-algorithms/","c80"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/artificial-neural-networks",component:m("/ai/ml-algorithms/artificial-neural-networks","252"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/association-rules-and-apriori-algorithm",component:m("/ai/ml-algorithms/association-rules-and-apriori-algorithm","8d6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/bagging-and-random-forest",component:m("/ai/ml-algorithms/bagging-and-random-forest","c11"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/bayes-classification",component:m("/ai/ml-algorithms/bayes-classification","f93"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/boosting-and-adaboost",component:m("/ai/ml-algorithms/boosting-and-adaboost","6d8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/classification",component:m("/ai/ml-algorithms/classification","de8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/clustering",component:m("/ai/ml-algorithms/clustering","2dd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/decision-tree",component:m("/ai/ml-algorithms/decision-tree","e96"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/dimensionality-reduction",component:m("/ai/ml-algorithms/dimensionality-reduction","ea2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/embeddings-and-estimators",component:m("/ai/ml-algorithms/embeddings-and-estimators","a75"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/ensemble-algorithms",component:m("/ai/ml-algorithms/ensemble-algorithms","151"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/feature-engineering",component:m("/ai/ml-algorithms/feature-engineering","527"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/generative-adversarial-networks-gans",component:m("/ai/ml-algorithms/generative-adversarial-networks-gans","e75"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/graph-neural-networks-gnn",component:m("/ai/ml-algorithms/graph-neural-networks-gnn","e22"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/id3-c45-and-chaid",component:m("/ai/ml-algorithms/id3-c45-and-chaid","90d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/k-nearest-neighbor-knn",component:m("/ai/ml-algorithms/k-nearest-neighbor-knn","52d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/learning-vector-quantization-lvq",component:m("/ai/ml-algorithms/learning-vector-quantization-lvq","5f1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/linear-discriminant-analysis-lda",component:m("/ai/ml-algorithms/linear-discriminant-analysis-lda","544"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/linear-regression",component:m("/ai/ml-algorithms/linear-regression","aae"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/logistic-regression",component:m("/ai/ml-algorithms/logistic-regression","337"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics",component:m("/ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics","242"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/non-linear-regression",component:m("/ai/ml-algorithms/non-linear-regression","36e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/others",component:m("/ai/ml-algorithms/others","d1d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis",component:m("/ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis","90b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/predictive-analytics-1",component:m("/ai/ml-algorithms/predictive-analytics-1","7b8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/predictive-analytics-2",component:m("/ai/ml-algorithms/predictive-analytics-2","ab1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/regression",component:m("/ai/ml-algorithms/regression","27f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/regularization",component:m("/ai/ml-algorithms/regularization","326"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/rule-generation-and-pattern-evaluation",component:m("/ai/ml-algorithms/rule-generation-and-pattern-evaluation","ab5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/support-vector-machine-svm",component:m("/ai/ml-algorithms/support-vector-machine-svm","63f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-algorithms/vector-embeddings",component:m("/ai/ml-algorithms/vector-embeddings","7b9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-fundamentals/",component:m("/ai/ml-fundamentals/","ebc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-fundamentals/andrew-ng",component:m("/ai/ml-fundamentals/andrew-ng","6cf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-fundamentals/intro",component:m("/ai/ml-fundamentals/intro","ab1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-fundamentals/loss-function",component:m("/ai/ml-fundamentals/loss-function","edc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-fundamentals/ml-classification",component:m("/ai/ml-fundamentals/ml-classification","a18"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-fundamentals/ml-process",component:m("/ai/ml-fundamentals/ml-process","e85"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-fundamentals/neural-networks",component:m("/ai/ml-fundamentals/neural-networks","188"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-fundamentals/neural-networks-3b1b",component:m("/ai/ml-fundamentals/neural-networks-3b1b","09c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-fundamentals/practical-ai-problems",component:m("/ai/ml-fundamentals/practical-ai-problems","be8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-fundamentals/preliminaries",component:m("/ai/ml-fundamentals/preliminaries","072"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-fundamentals/questions",component:m("/ai/ml-fundamentals/questions","867"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/ml-fundamentals/table-of-contents",component:m("/ai/ml-fundamentals/table-of-contents","c6c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/model-evaluation/",component:m("/ai/model-evaluation/","057"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/model-evaluation/bias-variance-trade-off",component:m("/ai/model-evaluation/bias-variance-trade-off","7bc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/model-evaluation/confusion-matrix",component:m("/ai/model-evaluation/confusion-matrix","cfe"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/model-evaluation/evaluation",component:m("/ai/model-evaluation/evaluation","922"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/model-evaluation/generalization-and-sampling",component:m("/ai/model-evaluation/generalization-and-sampling","63b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/model-evaluation/model-validation-monitoring",component:m("/ai/model-evaluation/model-validation-monitoring","951"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/model-evaluation/optimization",component:m("/ai/model-evaluation/optimization","6e5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/model-evaluation/others",component:m("/ai/model-evaluation/others","289"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/move-37/",component:m("/ai/move-37/","b22"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/move-37/1-markov-decision-process",component:m("/ai/move-37/1-markov-decision-process","9be"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/move-37/2-dynamic-programming",component:m("/ai/move-37/2-dynamic-programming","650"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/move-37/3-monte-carlo-methods",component:m("/ai/move-37/3-monte-carlo-methods","cd4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/move-37/4-model-free-learning",component:m("/ai/move-37/4-model-free-learning","bc0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/move-37/5-rl-in-continuous-space",component:m("/ai/move-37/5-rl-in-continuous-space","8ae"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/move-37/algorithms",component:m("/ai/move-37/algorithms","872"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/move-37/open-ai-gym",component:m("/ai/move-37/open-ai-gym","467"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/move-37/others",component:m("/ai/move-37/others","50f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/move-37/q-learning-algorithms",component:m("/ai/move-37/q-learning-algorithms","464"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/move-37/quizzes",component:m("/ai/move-37/quizzes","ab2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/move-37/reinforcement-learning",component:m("/ai/move-37/reinforcement-learning","553"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/move-37/syllabus",component:m("/ai/move-37/syllabus","5fc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/nlp/",component:m("/ai/nlp/","ea5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/nlp/chatbot-chatops",component:m("/ai/nlp/chatbot-chatops","81a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/nlp/chatbot-saas",component:m("/ai/nlp/chatbot-saas","75c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/nlp/intro",component:m("/ai/nlp/intro","b61"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/nlp/nlp-concepts",component:m("/ai/nlp/nlp-concepts","4a6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/nlp/nltk",component:m("/ai/nlp/nltk","9f0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/nlp/word-embedding-to-transformers",component:m("/ai/nlp/word-embedding-to-transformers","08f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/numpy/",component:m("/ai/numpy/","bf3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/numpy/cheatsheet",component:m("/ai/numpy/cheatsheet","9b6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/numpy/data-types",component:m("/ai/numpy/data-types","d6c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/numpy/internals",component:m("/ai/numpy/internals","852"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/numpy/intro",component:m("/ai/numpy/intro","d85"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/numpy/ndarray-object",component:m("/ai/numpy/ndarray-object","839"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/numpy/numpy-reference",component:m("/ai/numpy/numpy-reference","fc4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/others-resources-interview-learning-courses",component:m("/ai/others-resources-interview-learning-courses","6e3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/pandas/",component:m("/ai/pandas/","e6e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/pandas/cheatsheet",component:m("/ai/pandas/cheatsheet","cad"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/pandas/commands",component:m("/ai/pandas/commands","f49"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/pandas/data-structures",component:m("/ai/pandas/data-structures","7e8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/pandas/examples",component:m("/ai/pandas/examples","7f8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/pandas/others",component:m("/ai/pandas/others","0da"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/pandas/pandas-intro",component:m("/ai/pandas/pandas-intro","2c8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/pandas/user_guide",component:m("/ai/pandas/user_guide","e3e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/scikit-learn/",component:m("/ai/scikit-learn/","b51"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/scikit-learn/commands",component:m("/ai/scikit-learn/commands","3af"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/scikit-learn/intro",component:m("/ai/scikit-learn/intro","602"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/scikit-learn/others",component:m("/ai/scikit-learn/others","3f8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/scikit-learn/scipy-cheatsheet",component:m("/ai/scikit-learn/scipy-cheatsheet","799"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/scikit-learn/scipy-intro",component:m("/ai/scikit-learn/scipy-intro","822"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/social-media-analytics-solution",component:m("/ai/social-media-analytics-solution","759"),exact:!0,sidebar:"tutorialSidebar"},{path:"/ai/solutions",component:m("/ai/solutions","259"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/",component:m("/algorithms/","1a8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/advanced-algorithms/",component:m("/algorithms/advanced-algorithms/","65c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/advanced-algorithms/a-search-algorithm",component:m("/algorithms/advanced-algorithms/a-search-algorithm","027"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/advanced-algorithms/automated-planning-and-scheduling",component:m("/algorithms/advanced-algorithms/automated-planning-and-scheduling","ca8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/advanced-algorithms/disk-scheduling-algorithms",component:m("/algorithms/advanced-algorithms/disk-scheduling-algorithms","c33"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/advanced-algorithms/informed-search-algorithms",component:m("/algorithms/advanced-algorithms/informed-search-algorithms","98c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/advanced-algorithms/intractability",component:m("/algorithms/advanced-algorithms/intractability","815"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/advanced-algorithms/linear-programming",component:m("/algorithms/advanced-algorithms/linear-programming","f24"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/advanced-algorithms/multi-armed-bandit-mab",component:m("/algorithms/advanced-algorithms/multi-armed-bandit-mab","080"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/advanced-algorithms/others",component:m("/algorithms/advanced-algorithms/others","714"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/advanced-algorithms/principle-of-deferred-decisions",component:m("/algorithms/advanced-algorithms/principle-of-deferred-decisions","09e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/advanced-algorithms/reductions",component:m("/algorithms/advanced-algorithms/reductions","702"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/advanced-algorithms/regular-expressions",component:m("/algorithms/advanced-algorithms/regular-expressions","0f3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/advanced-algorithms/travelling-salesman-problem",component:m("/algorithms/advanced-algorithms/travelling-salesman-problem","764"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/algorithmic-complexity/",component:m("/algorithms/algorithmic-complexity/","d5f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/algorithmic-complexity/analysis-of-algorithms",component:m("/algorithms/algorithmic-complexity/analysis-of-algorithms","add"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/algorithmic-complexity/complexity-zoo",component:m("/algorithms/algorithmic-complexity/complexity-zoo","0f3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/algorithmic-complexity/computational-complexity-theory",component:m("/algorithms/algorithmic-complexity/computational-complexity-theory","17e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/algorithmic-complexity/finite-state-machine",component:m("/algorithms/algorithmic-complexity/finite-state-machine","164"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/algorithmic-complexity/halting-problem",component:m("/algorithms/algorithmic-complexity/halting-problem","4ca"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/algorithmic-complexity/np-hardness",component:m("/algorithms/algorithmic-complexity/np-hardness","901"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/algorithmic-complexity/sub-linear-time",component:m("/algorithms/algorithmic-complexity/sub-linear-time","7e3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/algorithmic-complexity/time-complexities",component:m("/algorithms/algorithmic-complexity/time-complexities","812"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/algorithmic-complexity/turing-vs-non-turing-machine",component:m("/algorithms/algorithmic-complexity/turing-vs-non-turing-machine","725"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/bit-manipulation/",component:m("/algorithms/bit-manipulation/","e31"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/bit-manipulation/examples",component:m("/algorithms/bit-manipulation/examples","56f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/bit-manipulation/general",component:m("/algorithms/bit-manipulation/general","32a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/complex-systems/",component:m("/algorithms/complex-systems/","b44"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/complex-systems/game-theory",component:m("/algorithms/complex-systems/game-theory","7da"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/complex-systems/intro",component:m("/algorithms/complex-systems/intro","6a5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/complex-systems/minimax-algorithm",component:m("/algorithms/complex-systems/minimax-algorithm","3f4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/complex-systems/move-by-nature",component:m("/algorithms/complex-systems/move-by-nature","8f4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/complex-systems/others",component:m("/algorithms/complex-systems/others","1aa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/data-compression/",component:m("/algorithms/data-compression/","834"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/data-compression/bitmap-compression-algorithms",component:m("/algorithms/data-compression/bitmap-compression-algorithms","0c4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/data-compression/huffman-compression",component:m("/algorithms/data-compression/huffman-compression","cdb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/data-compression/intro",component:m("/algorithms/data-compression/intro","bb2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/data-compression/lzw-compression",component:m("/algorithms/data-compression/lzw-compression","0a3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/data-compression/others",component:m("/algorithms/data-compression/others","f98"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/data-compression/run-length-encoding",component:m("/algorithms/data-compression/run-length-encoding","c84"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/dynamic-programming/",component:m("/algorithms/dynamic-programming/","10e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/dynamic-programming/basic-gold-mines",component:m("/algorithms/dynamic-programming/basic-gold-mines","2d5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/dynamic-programming/greedy-algorithms",component:m("/algorithms/dynamic-programming/greedy-algorithms","f72"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/dynamic-programming/how-to-find-dp",component:m("/algorithms/dynamic-programming/how-to-find-dp","d21"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/dynamic-programming/intro",component:m("/algorithms/dynamic-programming/intro","895"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/dynamic-programming/knapsack-problem",component:m("/algorithms/dynamic-programming/knapsack-problem","4c3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/dynamic-programming/levenshtein-distance-or-edit-distance",component:m("/algorithms/dynamic-programming/levenshtein-distance-or-edit-distance","bc0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/",component:m("/algorithms/general/","861"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/1d-range-search",component:m("/algorithms/general/1d-range-search","c20"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/2d-orthogonal-range-search",component:m("/algorithms/general/2d-orthogonal-range-search","6ab"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/algo-ds",component:m("/algorithms/general/algo-ds","5a0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/algorithms-questions",component:m("/algorithms/general/algorithms-questions","e4b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/appel-algorithm",component:m("/algorithms/general/appel-algorithm","3cc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/competitive-programming",component:m("/algorithms/general/competitive-programming","f05"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/euclidean-algorithm-gcd",component:m("/algorithms/general/euclidean-algorithm-gcd","2d5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/flocking-boids-algorithm",component:m("/algorithms/general/flocking-boids-algorithm","861"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/knuth-shuffle",component:m("/algorithms/general/knuth-shuffle","7d8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/list-of-algorithms",component:m("/algorithms/general/list-of-algorithms","260"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/n-queens-problem",component:m("/algorithms/general/n-queens-problem","c4e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/orthogonal-rectangle-intersection-search",component:m("/algorithms/general/orthogonal-rectangle-intersection-search","8ec"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/prime-factorization",component:m("/algorithms/general/prime-factorization","e42"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/quick-select",component:m("/algorithms/general/quick-select","7cd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/recursion",component:m("/algorithms/general/recursion","4a9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/reverse-polish-notation-postfix-notation",component:m("/algorithms/general/reverse-polish-notation-postfix-notation","502"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/sweep-line-algorithm",component:m("/algorithms/general/sweep-line-algorithm","eba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/two-stack-algorithm",component:m("/algorithms/general/two-stack-algorithm","f6f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/types-of-algorithms",component:m("/algorithms/general/types-of-algorithms","f16"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/general/union-find-algorithm",component:m("/algorithms/general/union-find-algorithm","bc7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/",component:m("/algorithms/graphtheory/","c4d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/acyclic-edge-weighted-digraphs",component:m("/algorithms/graphtheory/acyclic-edge-weighted-digraphs","b15"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/bellman-ford-algorithm",component:m("/algorithms/graphtheory/bellman-ford-algorithm","008"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/breadth-first-search-bfs",component:m("/algorithms/graphtheory/breadth-first-search-bfs","b52"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/connected-components",component:m("/algorithms/graphtheory/connected-components","09e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/depth-first-search-dfs",component:m("/algorithms/graphtheory/depth-first-search-dfs","5f5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/dijkstra-algorithm",component:m("/algorithms/graphtheory/dijkstra-algorithm","ef2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/eulerian-trail",component:m("/algorithms/graphtheory/eulerian-trail","e7b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/ford-fulkerson-algorithm",component:m("/algorithms/graphtheory/ford-fulkerson-algorithm","5b1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/graph-search",component:m("/algorithms/graphtheory/graph-search","445"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/intro",component:m("/algorithms/graphtheory/intro","ca6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/kruskal-algorithm-for-mst",component:m("/algorithms/graphtheory/kruskal-algorithm-for-mst","e12"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/longest-path-in-edge-weighted-dags",component:m("/algorithms/graphtheory/longest-path-in-edge-weighted-dags","0df"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/maximum-flow-and-minimum-cut",component:m("/algorithms/graphtheory/maximum-flow-and-minimum-cut","87a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/minimum-spanning-tree",component:m("/algorithms/graphtheory/minimum-spanning-tree","046"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/other-graph-algorithms",component:m("/algorithms/graphtheory/other-graph-algorithms","62a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/prim-algorithm-for-mst",component:m("/algorithms/graphtheory/prim-algorithm-for-mst","d11"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/problems",component:m("/algorithms/graphtheory/problems","b0c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/resources",component:m("/algorithms/graphtheory/resources","fab"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/seam-carving",component:m("/algorithms/graphtheory/seam-carving","9e4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/shortest-path-algorithms",component:m("/algorithms/graphtheory/shortest-path-algorithms","46f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/strong-components",component:m("/algorithms/graphtheory/strong-components","045"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/graphtheory/topological-sort-algorithm",component:m("/algorithms/graphtheory/topological-sort-algorithm","174"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/mathematics/",component:m("/algorithms/mathematics/","f3a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/mathematics/combinatorial-optimization",component:m("/algorithms/mathematics/combinatorial-optimization","297"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/mathematics/mo-algorithm",component:m("/algorithms/mathematics/mo-algorithm","486"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/mathematics/powerset",component:m("/algorithms/mathematics/powerset","fdc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/",component:m("/algorithms/searching-sorting/","6c1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/3-way-quick-sort",component:m("/algorithms/searching-sorting/3-way-quick-sort","214"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/3-way-string-radix-quicksort",component:m("/algorithms/searching-sorting/3-way-string-radix-quicksort","d08"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/binary-search",component:m("/algorithms/searching-sorting/binary-search","3f7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/convex-hull",component:m("/algorithms/searching-sorting/convex-hull","932"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/external-sort",component:m("/algorithms/searching-sorting/external-sort","dc1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/heapsort",component:m("/algorithms/searching-sorting/heapsort","db0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/insertion-sort",component:m("/algorithms/searching-sorting/insertion-sort","831"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/intro",component:m("/algorithms/searching-sorting/intro","843"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/key-indexed-counting",component:m("/algorithms/searching-sorting/key-indexed-counting","bad"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/knuth-shuffle",component:m("/algorithms/searching-sorting/knuth-shuffle","dd2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/lsd-radix-sort",component:m("/algorithms/searching-sorting/lsd-radix-sort","f91"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/merge-sort",component:m("/algorithms/searching-sorting/merge-sort","d3b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/msd-radix-sort",component:m("/algorithms/searching-sorting/msd-radix-sort","95b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/others",component:m("/algorithms/searching-sorting/others","9c7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/quick-sort",component:m("/algorithms/searching-sorting/quick-sort","912"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/selection-sort",component:m("/algorithms/searching-sorting/selection-sort","9c0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/shell-sort",component:m("/algorithms/searching-sorting/shell-sort","3a0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/shuffle-sort",component:m("/algorithms/searching-sorting/shuffle-sort","426"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/system-sort",component:m("/algorithms/searching-sorting/system-sort","584"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/searching-sorting/timsort",component:m("/algorithms/searching-sorting/timsort","6bc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/string-algorithms/",component:m("/algorithms/string-algorithms/","08d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/string-algorithms/boyer-moore",component:m("/algorithms/string-algorithms/boyer-moore","c40"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/string-algorithms/brute-force",component:m("/algorithms/string-algorithms/brute-force","820"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/string-algorithms/intro",component:m("/algorithms/string-algorithms/intro","c76"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/string-algorithms/knuth-morris-pratt",component:m("/algorithms/string-algorithms/knuth-morris-pratt","db9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/string-algorithms/longest-common-prefix",component:m("/algorithms/string-algorithms/longest-common-prefix","320"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/string-algorithms/rabin-karp",component:m("/algorithms/string-algorithms/rabin-karp","79f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/algorithms/string-algorithms/substring-search-intro",component:m("/algorithms/string-algorithms/substring-search-intro","9d8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/",component:m("/book-summaries/","34b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/13-things-mentally-strong-parents-dont-do",component:m("/book-summaries/13-things-mentally-strong-parents-dont-do","454"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/13-things-mentally-strong-people-dont-do",component:m("/book-summaries/13-things-mentally-strong-people-dont-do","21c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/48-laws-of-power",component:m("/book-summaries/48-laws-of-power","789"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/7-powers-the-foundations-of-business-strategy",component:m("/book-summaries/7-powers-the-foundations-of-business-strategy","2e8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/alchemy-the-surprising-power-of-ideas-that-dont-make-sense",component:m("/book-summaries/alchemy-the-surprising-power-of-ideas-that-dont-make-sense","983"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/atomic-habits",component:m("/book-summaries/atomic-habits","eba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/books-blinkist-productivity",component:m("/book-summaries/books-blinkist-productivity","e09"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/books-to-read",component:m("/book-summaries/books-to-read","626"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/chasing-excellence",component:m("/book-summaries/chasing-excellence","6fc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/collaborative-intelligence",component:m("/book-summaries/collaborative-intelligence","79c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/david-and-goliath",component:m("/book-summaries/david-and-goliath","e8d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/deep-work",component:m("/book-summaries/deep-work","d71"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/didnt-see-it-coming",component:m("/book-summaries/didnt-see-it-coming","afc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/do-hard-things",component:m("/book-summaries/do-hard-things","0af"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/doing-good-better",component:m("/book-summaries/doing-good-better","49b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/dollars-and-sense",component:m("/book-summaries/dollars-and-sense","580"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/doughnut-economics",component:m("/book-summaries/doughnut-economics","354"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/economics-for-the-common-good",component:m("/book-summaries/economics-for-the-common-good","a77"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/edge-of-chaos",component:m("/book-summaries/edge-of-chaos","2ce"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/essentialism",component:m("/book-summaries/essentialism","15f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/everyday-millionaires",component:m("/book-summaries/everyday-millionaires","259"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/find-your-element",component:m("/book-summaries/find-your-element","cad"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/first-things-first",component:m("/book-summaries/first-things-first","b6a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/from-strength-to-strength",component:m("/book-summaries/from-strength-to-strength","6dc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/game-changers",component:m("/book-summaries/game-changers","5aa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/get-it",component:m("/book-summaries/get-it","113"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/getting-things-done",component:m("/book-summaries/getting-things-done","920"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/good-economics-for-hard-times",component:m("/book-summaries/good-economics-for-hard-times","051"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/how-should-we-live",component:m("/book-summaries/how-should-we-live","c73"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/how-to-be-a-stoic",component:m("/book-summaries/how-to-be-a-stoic","66b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/how-to-be-an-adult-in-relationships",component:m("/book-summaries/how-to-be-an-adult-in-relationships","cea"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/how-to-have-impossible-conversations",component:m("/book-summaries/how-to-have-impossible-conversations","a97"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/how-to-live-a-good-life",component:m("/book-summaries/how-to-live-a-good-life","f2e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/how-to-make-money-in-stocks",component:m("/book-summaries/how-to-make-money-in-stocks","983"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/how-to-take-smart-notes",component:m("/book-summaries/how-to-take-smart-notes","daf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/hyperfocus",component:m("/book-summaries/hyperfocus","8c5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/leaders-eat-last",component:m("/book-summaries/leaders-eat-last","17b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/leadership-and-the-rise-of-great-powers",component:m("/book-summaries/leadership-and-the-rise-of-great-powers","4c3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/life-is-in-the-transitions",component:m("/book-summaries/life-is-in-the-transitions","3fe"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/off-the-clock",component:m("/book-summaries/off-the-clock","072"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/on-writing-well",component:m("/book-summaries/on-writing-well","313"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/organize-tomorrow-today",component:m("/book-summaries/organize-tomorrow-today","70a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/others",component:m("/book-summaries/others","e53"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/power-and-prediction",component:m("/book-summaries/power-and-prediction","35d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/power-relationships",component:m("/book-summaries/power-relationships","7d1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/power-sex-suicide",component:m("/book-summaries/power-sex-suicide","4e2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/predictably-irrational",component:m("/book-summaries/predictably-irrational","4f8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/primed-to-perform",component:m("/book-summaries/primed-to-perform","477"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/principles",component:m("/book-summaries/principles","afd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/secrets-of-power-negotiating",component:m("/book-summaries/secrets-of-power-negotiating","684"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/sell-like-crazy",component:m("/book-summaries/sell-like-crazy","1e5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/skin-in-the-game",component:m("/book-summaries/skin-in-the-game","564"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/small-is-beautiful",component:m("/book-summaries/small-is-beautiful","65e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/social-intelligence",component:m("/book-summaries/social-intelligence","8cc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/solve-for-happy",component:m("/book-summaries/solve-for-happy","15f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/switch-on-your-brain",component:m("/book-summaries/switch-on-your-brain","77a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/talking-across-divide",component:m("/book-summaries/talking-across-divide","ed3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-22-immutable-laws-of-branding",component:m("/book-summaries/the-22-immutable-laws-of-branding","d8d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-3-minute-rule",component:m("/book-summaries/the-3-minute-rule","3a7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-4-agreements",component:m("/book-summaries/the-4-agreements","390"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-4-hour-workweek",component:m("/book-summaries/the-4-hour-workweek","f24"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-5-am-club",component:m("/book-summaries/the-5-am-club","f6d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-almanack-of-naval-ravikant",component:m("/book-summaries/the-almanack-of-naval-ravikant","566"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-art-of-impossible",component:m("/book-summaries/the-art-of-impossible","7f1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-art-of-logic",component:m("/book-summaries/the-art-of-logic","bdc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-book-of-joy",component:m("/book-summaries/the-book-of-joy","b5c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-courage-to-be-happy",component:m("/book-summaries/the-courage-to-be-happy","ef4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-dip",component:m("/book-summaries/the-dip","489"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-distraction-addiction",component:m("/book-summaries/the-distraction-addiction","38d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-elephant-in-the-brain",component:m("/book-summaries/the-elephant-in-the-brain","37b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-grid",component:m("/book-summaries/the-grid","980"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-knowledge-illusion",component:m("/book-summaries/the-knowledge-illusion","1e5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-life-you-can-save",component:m("/book-summaries/the-life-you-can-save","2ef"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-organized-mind",component:m("/book-summaries/the-organized-mind","b72"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-path-between-us",component:m("/book-summaries/the-path-between-us","b37"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-power-of-concentration",component:m("/book-summaries/the-power-of-concentration","7c0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-power-of-regret",component:m("/book-summaries/the-power-of-regret","9d9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-science-of-selling",component:m("/book-summaries/the-science-of-selling","e5e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-seven-habits-of-highly-effective-people",component:m("/book-summaries/the-seven-habits-of-highly-effective-people","e87"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-slight-edge",component:m("/book-summaries/the-slight-edge","844"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-squiggly-career",component:m("/book-summaries/the-squiggly-career","163"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-status-game",component:m("/book-summaries/the-status-game","cc4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-tangled-tree",component:m("/book-summaries/the-tangled-tree","3b4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/the-uninhabitable-earth",component:m("/book-summaries/the-uninhabitable-earth","7cd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/think-again",component:m("/book-summaries/think-again","e55"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/think-and-grow-rich",component:m("/book-summaries/think-and-grow-rich","047"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/thinking-fast-and-slow",component:m("/book-summaries/thinking-fast-and-slow","99b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/thinking-in-systems",component:m("/book-summaries/thinking-in-systems","01a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/time-and-how-to-spend-it",component:m("/book-summaries/time-and-how-to-spend-it","68c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/ultralearning",component:m("/book-summaries/ultralearning","eb9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/what-philosophy-can-teach-you-about-being-a-better-leader",component:m("/book-summaries/what-philosophy-can-teach-you-about-being-a-better-leader","283"),exact:!0,sidebar:"tutorialSidebar"},{path:"/book-summaries/who-we-are-and-how-we-got-here",component:m("/book-summaries/who-we-are-and-how-we-got-here","9ed"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/",component:m("/cloud/","d19"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/",component:m("/cloud/aws/","067"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/amazon-pinpoint",component:m("/cloud/aws/amazon-pinpoint","a12"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/analytics/",component:m("/cloud/aws/analytics/","dcd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/analytics/amazon-athena",component:m("/cloud/aws/analytics/amazon-athena","bc5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/analytics/amazon-devops-guru",component:m("/cloud/aws/analytics/amazon-devops-guru","be9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/analytics/amazon-kinesis",component:m("/cloud/aws/analytics/amazon-kinesis","826"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/aws-backup",component:m("/cloud/aws/aws-backup","700"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/aws-competency-program",component:m("/cloud/aws/aws-competency-program","0d7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/aws-database-migration-service-dms",component:m("/cloud/aws/aws-database-migration-service-dms","14a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/aws-glue",component:m("/cloud/aws/aws-glue","7d6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/aws-rekognition",component:m("/cloud/aws/aws-rekognition","f44"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/aws-services",component:m("/cloud/aws/aws-services","026"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/aws-services-list",component:m("/cloud/aws/aws-services-list","501"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/aws-sns",component:m("/cloud/aws/aws-sns","279"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/aws-sqs",component:m("/cloud/aws/aws-sqs","05a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/cli-commands",component:m("/cloud/aws/cli-commands","4d7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/compute/",component:m("/cloud/aws/compute/","b7a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/compute/amazon-ecs",component:m("/cloud/aws/compute/amazon-ecs","675"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/compute/amazon-eks",component:m("/cloud/aws/compute/amazon-eks","1f8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/compute/aws-lambda",component:m("/cloud/aws/compute/aws-lambda","e13"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/compute/burstable-instances",component:m("/cloud/aws/compute/burstable-instances","afc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/compute/ec2-instance-types",component:m("/cloud/aws/compute/ec2-instance-types","06c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/cost-optimization-explorer-billing",component:m("/cloud/aws/cost-optimization-explorer-billing","5d1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/course-architecting-on-aws",component:m("/cloud/aws/course-architecting-on-aws","d41"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/developer-tools/code-build",component:m("/cloud/aws/developer-tools/code-build","b8e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/developer-tools/intro",component:m("/cloud/aws/developer-tools/intro","8d6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/intro",component:m("/cloud/aws/intro","af7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/networking-content-delivery/amazon-cloudfront",component:m("/cloud/aws/networking-content-delivery/amazon-cloudfront","c89"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/networking-content-delivery/amazon-vpc",component:m("/cloud/aws/networking-content-delivery/amazon-vpc","0b7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/networking-content-delivery/aws-elb",component:m("/cloud/aws/networking-content-delivery/aws-elb","460"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/networking-content-delivery/intro",component:m("/cloud/aws/networking-content-delivery/intro","57c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/others",component:m("/cloud/aws/others","b5b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/security-identity-compliance/compliance",component:m("/cloud/aws/security-identity-compliance/compliance","6f6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/security-identity-compliance/compliance-mcqs",component:m("/cloud/aws/security-identity-compliance/compliance-mcqs","a4d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/security-identity-compliance/iam",component:m("/cloud/aws/security-identity-compliance/iam","ec3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/security-identity-compliance/intro",component:m("/cloud/aws/security-identity-compliance/intro","f1d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/security-identity-compliance/license-scanning",component:m("/cloud/aws/security-identity-compliance/license-scanning","2b6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/security-identity-compliance/security-guidelines",component:m("/cloud/aws/security-identity-compliance/security-guidelines","19f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/security-identity-compliance/tools",component:m("/cloud/aws/security-identity-compliance/tools","9d7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/storage/",component:m("/cloud/aws/storage/","6d4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/storage/amazon-ebs",component:m("/cloud/aws/storage/amazon-ebs","6ec"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/storage/amazon-efs",component:m("/cloud/aws/storage/amazon-efs","d40"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/storage/amazon-s3",component:m("/cloud/aws/storage/amazon-s3","b87"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/storage/amazon-s3-pricing",component:m("/cloud/aws/storage/amazon-s3-pricing","5fe"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/storage/amazon-s3-storage-classes",component:m("/cloud/aws/storage/amazon-s3-storage-classes","d53"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/aws/storage/iops",component:m("/cloud/aws/storage/iops","bf5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/",component:m("/cloud/others/","716"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/azure/",component:m("/cloud/others/azure/","986"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/azure/commands",component:m("/cloud/others/azure/commands","f4b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/azure/iam",component:m("/cloud/others/azure/iam","a50"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/azure/microsoft-biztalk",component:m("/cloud/others/azure/microsoft-biztalk","78c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/azure/services",component:m("/cloud/others/azure/services","9c9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/business-rule-engine",component:m("/cloud/others/business-rule-engine","637"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/cdn-cache-invalidation",component:m("/cloud/others/cdn-cache-invalidation","2ba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/cdn-comparision",component:m("/cloud/others/cdn-comparision","b34"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/cdn-content-delivery-network",component:m("/cloud/others/cdn-content-delivery-network","55f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/cloudflare",component:m("/cloud/others/cloudflare","6de"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/firebase/",component:m("/cloud/others/firebase/","d9e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/firebase/automatic-collected-events",component:m("/cloud/others/firebase/automatic-collected-events","96d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/firebase/fcm-notifications",component:m("/cloud/others/firebase/fcm-notifications","eab"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/firebase/firebase-google-analytics",component:m("/cloud/others/firebase/firebase-google-analytics","fa0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/firebase/web-push-notifications",component:m("/cloud/others/firebase/web-push-notifications","278"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/gcp-anthos",component:m("/cloud/others/gcp-anthos","1ba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/gcp-bigquery-big-query",component:m("/cloud/others/gcp-bigquery-big-query","4b8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/gcp-google-cloud-platform",component:m("/cloud/others/gcp-google-cloud-platform","fe6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/gcp-ml-services",component:m("/cloud/others/gcp-ml-services","53d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/imagekit",component:m("/cloud/others/imagekit","443"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/linode",component:m("/cloud/others/linode","f0e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/loan-management-system-lms",component:m("/cloud/others/loan-management-system-lms","505"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/low-code-no-code-lcnc",component:m("/cloud/others/low-code-no-code-lcnc","022"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/mdm-mobile-device-management",component:m("/cloud/others/mdm-mobile-device-management","6e5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/openstack",component:m("/cloud/others/openstack","f39"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/oracle",component:m("/cloud/others/oracle","88b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/others-saas",component:m("/cloud/others/others-saas","ccd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/sap",component:m("/cloud/others/sap","7c2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/ticketing-tms",component:m("/cloud/others/ticketing-tms","12e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/others/vmware",component:m("/cloud/others/vmware","3d6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/cloud/tools",component:m("/cloud/tools","494"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/",component:m("/computer-science/","ae4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/distributed-system/",component:m("/computer-science/distributed-system/","a47"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/distributed-system/byzantine-generals-problem",component:m("/computer-science/distributed-system/byzantine-generals-problem","ada"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/distributed-system/cap-theorem",component:m("/computer-science/distributed-system/cap-theorem","d14"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/distributed-system/clocks",component:m("/computer-science/distributed-system/clocks","e8f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/distributed-system/consensus-protocols",component:m("/computer-science/distributed-system/consensus-protocols","a09"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/distributed-system/consistency",component:m("/computer-science/distributed-system/consistency","022"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/distributed-system/distributed-logging",component:m("/computer-science/distributed-system/distributed-logging","211"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/distributed-system/fallacies-and-problems",component:m("/computer-science/distributed-system/fallacies-and-problems","0bd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/distributed-system/intro",component:m("/computer-science/distributed-system/intro","100"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/distributed-system/others",component:m("/computer-science/distributed-system/others","721"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/distributed-system/vocabulary",component:m("/computer-science/distributed-system/vocabulary","2b2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/general/",component:m("/computer-science/general/","be1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/general/common",component:m("/computer-science/general/common","095"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/general/newsletter-learning-resources",component:m("/computer-science/general/newsletter-learning-resources","aee"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/general/others",component:m("/computer-science/general/others","5bf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/general/research-papers",component:m("/computer-science/general/research-papers","5b9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/general/standards",component:m("/computer-science/general/standards","7de"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/general/uuid-guid",component:m("/computer-science/general/uuid-guid","ae5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/",component:m("/computer-science/interview-question/","8dc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/aws-tech-other-questions",component:m("/computer-science/interview-question/aws-tech-other-questions","ece"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/blogs-conferences-blogging-presentation-tech-thursdays",component:m("/computer-science/interview-question/blogs-conferences-blogging-presentation-tech-thursdays","b45"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/coding-interview-questions",component:m("/computer-science/interview-question/coding-interview-questions","5d6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/others",component:m("/computer-science/interview-question/others","767"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/system-design-autocomplete-or-typeahead",component:m("/computer-science/interview-question/system-design-autocomplete-or-typeahead","ae8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/system-design-google-com-into-browser-press-enter",component:m("/computer-science/interview-question/system-design-google-com-into-browser-press-enter","2d0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/system-design-google-search",component:m("/computer-science/interview-question/system-design-google-search","14e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/system-design-messenger-whatsapp",component:m("/computer-science/interview-question/system-design-messenger-whatsapp","a2d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/system-design-mmog-game",component:m("/computer-science/interview-question/system-design-mmog-game","f5e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/system-design-others",component:m("/computer-science/interview-question/system-design-others","8b6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/system-design-parking-lot",component:m("/computer-science/interview-question/system-design-parking-lot","58a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/system-design-tinyurl",component:m("/computer-science/interview-question/system-design-tinyurl","e7e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/system-design-twitter",component:m("/computer-science/interview-question/system-design-twitter","be7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/system-design-uber-data-architecture",component:m("/computer-science/interview-question/system-design-uber-data-architecture","f55"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/system-design-uber-lyft-ride-sharing-services",component:m("/computer-science/interview-question/system-design-uber-lyft-ride-sharing-services","750"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/system-design-youtube",component:m("/computer-science/interview-question/system-design-youtube","b0d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/interview-question/toptal",component:m("/computer-science/interview-question/toptal","3e5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/iot/",component:m("/computer-science/iot/","90c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/iot/device-management",component:m("/computer-science/iot/device-management","f1c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/iot/edge-computing",component:m("/computer-science/iot/edge-computing","75f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/iot/edgexfoundary",component:m("/computer-science/iot/edgexfoundary","b8d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/iot/industrial-iot-iiot",component:m("/computer-science/iot/industrial-iot-iiot","fea"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/iot/iot-intro",component:m("/computer-science/iot/iot-intro","018"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/iot/others",component:m("/computer-science/iot/others","1c9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/links",component:m("/computer-science/links","e19"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/",component:m("/computer-science/operating-system/","bb7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/basic-computer-organization",component:m("/computer-science/operating-system/basic-computer-organization","1fd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/cache-access-patterns",component:m("/computer-science/operating-system/cache-access-patterns","937"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/cache-coherence-invalidation",component:m("/computer-science/operating-system/cache-coherence-invalidation","31e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/caches-caching",component:m("/computer-science/operating-system/caches-caching","6c3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/caching-strategies-topologies",component:m("/computer-science/operating-system/caching-strategies-topologies","f12"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/compilers",component:m("/computer-science/operating-system/compilers","4d8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/concepts",component:m("/computer-science/operating-system/concepts","f97"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/concurrency-models-async",component:m("/computer-science/operating-system/concurrency-models-async","c27"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/concurrency-problems",component:m("/computer-science/operating-system/concurrency-problems","822"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/concurrency-threading",component:m("/computer-science/operating-system/concurrency-threading","3ac"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/coroutines",component:m("/computer-science/operating-system/coroutines","247"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/cpu-gpu-tpu",component:m("/computer-science/operating-system/cpu-gpu-tpu","b47"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/disk-io",component:m("/computer-science/operating-system/disk-io","d52"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/dram",component:m("/computer-science/operating-system/dram","8e4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/intro",component:m("/computer-science/operating-system/intro","fde"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/journaling-file-system",component:m("/computer-science/operating-system/journaling-file-system","267"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/memory",component:m("/computer-science/operating-system/memory","bdc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/memory-allocation",component:m("/computer-science/operating-system/memory-allocation","ed1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/memory-layout",component:m("/computer-science/operating-system/memory-layout","214"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/memory-mapping-mmap",component:m("/computer-science/operating-system/memory-mapping-mmap","9ec"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/microprocessor",component:m("/computer-science/operating-system/microprocessor","8d4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/others",component:m("/computer-science/operating-system/others","23a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/parallel-processing",component:m("/computer-science/operating-system/parallel-processing","e11"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/raid",component:m("/computer-science/operating-system/raid","bf6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/scheduling",component:m("/computer-science/operating-system/scheduling","d44"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/swap-paging-caching",component:m("/computer-science/operating-system/swap-paging-caching","ccb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/unix-linux",component:m("/computer-science/operating-system/unix-linux","42a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/unix-linux-file-system",component:m("/computer-science/operating-system/unix-linux-file-system","11e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/operating-system/write-ahead-log-wal",component:m("/computer-science/operating-system/write-ahead-log-wal","c97"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/others/",component:m("/computer-science/others/","1e2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/others/bioinformatics-biotechnology",component:m("/computer-science/others/bioinformatics-biotechnology","775"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/others/computer-graphics",component:m("/computer-science/others/computer-graphics","358"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/others/digital-circuits",component:m("/computer-science/others/digital-circuits","6f8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/others/game-development",component:m("/computer-science/others/game-development","146"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/others/gamification",component:m("/computer-science/others/gamification","a51"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/others/other",component:m("/computer-science/others/other","9ac"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/others/tech-books",component:m("/computer-science/others/tech-books","b7f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-concepts/",component:m("/computer-science/programming-concepts/","2ff"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-concepts/cohesion-and-coupling",component:m("/computer-science/programming-concepts/cohesion-and-coupling","21f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-concepts/dependency-injection",component:m("/computer-science/programming-concepts/dependency-injection","5a8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-concepts/inversion-of-control",component:m("/computer-science/programming-concepts/inversion-of-control","4d4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-concepts/marshalling",component:m("/computer-science/programming-concepts/marshalling","364"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-concepts/metaprogramming",component:m("/computer-science/programming-concepts/metaprogramming","37f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-concepts/others",component:m("/computer-science/programming-concepts/others","c3a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-concepts/programming-styles",component:m("/computer-science/programming-concepts/programming-styles","b47"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-concepts/type-introspection-and-reflection",component:m("/computer-science/programming-concepts/type-introspection-and-reflection","c6f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-concepts/type-systems",component:m("/computer-science/programming-concepts/type-systems","da5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/",component:m("/computer-science/programming-paradigms/","aff"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/architectural-mvvm",component:m("/computer-science/programming-paradigms/architectural-mvvm","bb1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/behavioral-chain-of-responsibility",component:m("/computer-science/programming-paradigms/behavioral-chain-of-responsibility","855"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/behavioral-iterator",component:m("/computer-science/programming-paradigms/behavioral-iterator","292"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/behavioral-mediator",component:m("/computer-science/programming-paradigms/behavioral-mediator","f46"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/behavioral-memento",component:m("/computer-science/programming-paradigms/behavioral-memento","9a8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/behavioral-observer",component:m("/computer-science/programming-paradigms/behavioral-observer","3a2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/behavioral-publisher-subscriber",component:m("/computer-science/programming-paradigms/behavioral-publisher-subscriber","0f3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/behavioral-state",component:m("/computer-science/programming-paradigms/behavioral-state","bfc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/behavioral-strategy",component:m("/computer-science/programming-paradigms/behavioral-strategy","3ad"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/concurrency-reactor",component:m("/computer-science/programming-paradigms/concurrency-reactor","b9d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/creational-abstract-factory",component:m("/computer-science/programming-paradigms/creational-abstract-factory","6c3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/creational-object-pool",component:m("/computer-science/programming-paradigms/creational-object-pool","2a7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/design-patterns",component:m("/computer-science/programming-paradigms/design-patterns","3aa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/functional-programming",component:m("/computer-science/programming-paradigms/functional-programming","cf0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/oops-solid",component:m("/computer-science/programming-paradigms/oops-solid","67c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/others",component:m("/computer-science/programming-paradigms/others","ece"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/structural-adapter",component:m("/computer-science/programming-paradigms/structural-adapter","af5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/structural-bridge",component:m("/computer-science/programming-paradigms/structural-bridge","8aa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/structural-decorator",component:m("/computer-science/programming-paradigms/structural-decorator","f1d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/structural-facade",component:m("/computer-science/programming-paradigms/structural-facade","340"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/structural-proxy",component:m("/computer-science/programming-paradigms/structural-proxy","920"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/programming-paradigms/types-of-programming-paradigm",component:m("/computer-science/programming-paradigms/types-of-programming-paradigm","fbc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/",component:m("/computer-science/security/","974"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/attacks",component:m("/computer-science/security/attacks","970"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/authentication/",component:m("/computer-science/security/authentication/","f2a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/authentication/certificates",component:m("/computer-science/security/authentication/certificates","9cc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/authentication/http-authentication",component:m("/computer-science/security/authentication/http-authentication","079"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/authentication/intro",component:m("/computer-science/security/authentication/intro","ff7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/authentication/jwt",component:m("/computer-science/security/authentication/jwt","556"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/authentication/oauth",component:m("/computer-science/security/authentication/oauth","8c4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/authentication/openid",component:m("/computer-science/security/authentication/openid","c53"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/authentication/siem",component:m("/computer-science/security/authentication/siem","9be"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/authentication/two-2fa",component:m("/computer-science/security/authentication/two-2fa","b5b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/concepts",component:m("/computer-science/security/concepts","831"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/cryptography/",component:m("/computer-science/security/cryptography/","d22"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/cryptography/cryptographic-algorithms",component:m("/computer-science/security/cryptography/cryptographic-algorithms","68b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/cryptography/cryptographic-hash-functions",component:m("/computer-science/security/cryptography/cryptographic-hash-functions","705"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/cryptography/cryptography-terms",component:m("/computer-science/security/cryptography/cryptography-terms","d80"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/cryptography/diffie-hellman-key-exchange",component:m("/computer-science/security/cryptography/diffie-hellman-key-exchange","be2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/cryptography/hash-function-design",component:m("/computer-science/security/cryptography/hash-function-design","50e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/cryptography/intro",component:m("/computer-science/security/cryptography/intro","0e9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/cryptography/post-quantum-cryptography",component:m("/computer-science/security/cryptography/post-quantum-cryptography","561"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/cryptography/public-key-cryptography",component:m("/computer-science/security/cryptography/public-key-cryptography","44a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/ethical-hacking",component:m("/computer-science/security/ethical-hacking","df4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/firewall-waf",component:m("/computer-science/security/firewall-waf","937"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/improving-security-posture",component:m("/computer-science/security/improving-security-posture","870"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/others",component:m("/computer-science/security/others","940"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/systems-protection",component:m("/computer-science/security/systems-protection","eb1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/tools",component:m("/computer-science/security/tools","a6f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/vault",component:m("/computer-science/security/vault","b18"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/security/vulnerabilities",component:m("/computer-science/security/vulnerabilities","b63"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/software-engineering/",component:m("/computer-science/software-engineering/","181"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/software-engineering/change-management",component:m("/computer-science/software-engineering/change-management","a0a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/software-engineering/code-smell",component:m("/computer-science/software-engineering/code-smell","84d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/software-engineering/coding-guidelines-code-reviews-clean-code",component:m("/computer-science/software-engineering/coding-guidelines-code-reviews-clean-code","4a8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/software-engineering/complexity",component:m("/computer-science/software-engineering/complexity","557"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/software-engineering/developer-roles",component:m("/computer-science/software-engineering/developer-roles","a6d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/software-engineering/development-approaches",component:m("/computer-science/software-engineering/development-approaches","fae"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/software-engineering/intro",component:m("/computer-science/software-engineering/intro","512"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/software-engineering/modeling-languages",component:m("/computer-science/software-engineering/modeling-languages","43d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/software-engineering/principles",component:m("/computer-science/software-engineering/principles","593"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/software-engineering/refactoring",component:m("/computer-science/software-engineering/refactoring","56a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/software-engineering/static-code-analysis",component:m("/computer-science/software-engineering/static-code-analysis","cb6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/software-engineering/technical-debt",component:m("/computer-science/software-engineering/technical-debt","c78"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/software-engineering/types-of-code",component:m("/computer-science/software-engineering/types-of-code","611"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/",component:m("/computer-science/system-design/","833"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/addressing-failures",component:m("/computer-science/system-design/addressing-failures","0cb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/api-gateway",component:m("/computer-science/system-design/api-gateway","ca5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/architecture-guide",component:m("/computer-science/system-design/architecture-guide","93f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/cloud-native",component:m("/computer-science/system-design/cloud-native","b11"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/enterprise-integration-patterns",component:m("/computer-science/system-design/enterprise-integration-patterns","da4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/event-driven-architecture",component:m("/computer-science/system-design/event-driven-architecture","fe6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/intro",component:m("/computer-science/system-design/intro","a30"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/message-oriented-architecture-mom",component:m("/computer-science/system-design/message-oriented-architecture-mom","d82"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/message-queues",component:m("/computer-science/system-design/message-queues","00a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/microservice-architecture/",component:m("/computer-science/system-design/microservice-architecture/","c50"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/microservice-architecture/design-patterns",component:m("/computer-science/system-design/microservice-architecture/design-patterns","51c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/microservice-architecture/domain-driven-design",component:m("/computer-science/system-design/microservice-architecture/domain-driven-design","9d5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/microservice-architecture/example",component:m("/computer-science/system-design/microservice-architecture/example","cf3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/microservice-architecture/intro",component:m("/computer-science/system-design/microservice-architecture/intro","82f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/n-tier-application-architecture",component:m("/computer-science/system-design/n-tier-application-architecture","4b2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/others",component:m("/computer-science/system-design/others","642"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/rate-limiting",component:m("/computer-science/system-design/rate-limiting","6e6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/reactive-microservices-manifesto",component:m("/computer-science/system-design/reactive-microservices-manifesto","54d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/retries",component:m("/computer-science/system-design/retries","490"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/serverless-architecture",component:m("/computer-science/system-design/serverless-architecture","ff4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/trade-offs",component:m("/computer-science/system-design/trade-offs","a03"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/system-design/twelve-factor-app",component:m("/computer-science/system-design/twelve-factor-app","a20"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/testing/",component:m("/computer-science/testing/","8cb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/testing/checkov",component:m("/computer-science/testing/checkov","871"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/testing/intro",component:m("/computer-science/testing/intro","775"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/testing/iperf3-testing",component:m("/computer-science/testing/iperf3-testing","392"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/testing/load-performance-testing-qa-tools",component:m("/computer-science/testing/load-performance-testing-qa-tools","d60"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/testing/mocking",component:m("/computer-science/testing/mocking","46f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/testing/postman",component:m("/computer-science/testing/postman","550"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/testing/selenium",component:m("/computer-science/testing/selenium","7fb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/testing/terms",component:m("/computer-science/testing/terms","61e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/testing/test-pyramid",component:m("/computer-science/testing/test-pyramid","8fc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/computer-science/testing/tools",component:m("/computer-science/testing/tools","9de"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/",component:m("/courses/","74f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/365-data-science-program",component:m("/courses/365-data-science-program","381"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/365-ds-advanced-stastistical-methods-in-python",component:m("/courses/365-ds-advanced-stastistical-methods-in-python","90a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/365-ds-mathematics",component:m("/courses/365-ds-mathematics","616"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/aws-certified-data-engineer-associate",component:m("/courses/aws-certified-data-engineer-associate","9b6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/aws-certified-data-engineer-associate-questions",component:m("/courses/aws-certified-data-engineer-associate-questions","00b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/aws-certified-developer-associate",component:m("/courses/aws-certified-developer-associate","c48"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-art-and-science-of-ml",component:m("/courses/course-art-and-science-of-ml","d40"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-big-data-computing-nptel",component:m("/courses/course-big-data-computing-nptel","b2e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-credit-risk-modeling/credit-and-debt",component:m("/courses/course-credit-risk-modeling/credit-and-debt","894"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-credit-risk-modeling/decision-areas-and-credit-scorecards",component:m("/courses/course-credit-risk-modeling/decision-areas-and-credit-scorecards","ee0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-credit-risk-modeling/fraud-detection-and-prevention",component:m("/courses/course-credit-risk-modeling/fraud-detection-and-prevention","477"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-credit-risk-modeling/fraud-features",component:m("/courses/course-credit-risk-modeling/fraud-features","7c9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-credit-risk-modeling/fraud-types",component:m("/courses/course-credit-risk-modeling/fraud-types","786"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-credit-risk-modeling/intro",component:m("/courses/course-credit-risk-modeling/intro","0a6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-credit-risk-modeling/syllabus",component:m("/courses/course-credit-risk-modeling/syllabus","509"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-data-mining-nptel",component:m("/courses/course-data-mining-nptel","8c0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-data-storage-and-processing-edx",component:m("/courses/course-data-storage-and-processing-edx","85b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-feature-engineering",component:m("/courses/course-feature-engineering","eaa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-intro-to-data-and-data-science",component:m("/courses/course-intro-to-data-and-data-science","0d0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-intro-to-tensorflow",component:m("/courses/course-intro-to-tensorflow","912"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-launching-into-ml",component:m("/courses/course-launching-into-ml","4c2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-time-series-analysis/exponential-smoothing",component:m("/courses/course-time-series-analysis/exponential-smoothing","553"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-time-series-analysis/intro-time-series",component:m("/courses/course-time-series-analysis/intro-time-series","6df"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-time-series-analysis/syllabus",component:m("/courses/course-time-series-analysis/syllabus","96f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/course-time-series-analysis/time-series-modeling",component:m("/courses/course-time-series-analysis/time-series-modeling","0bb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/coursera-algorithms-part-1",component:m("/courses/coursera-algorithms-part-1","224"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/coursera-algorithms-part-2",component:m("/courses/coursera-algorithms-part-2","db7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/coursera-how-google-does-ml",component:m("/courses/coursera-how-google-does-ml","0fc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/customer-analytics-in-python/intro",component:m("/courses/customer-analytics-in-python/intro","57b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/customer-analytics-in-python/syllabus",component:m("/courses/customer-analytics-in-python/syllabus","134"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/data-integration-specialist-aws",component:m("/courses/data-integration-specialist-aws","1a1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/google-professional-cloud-architect-pca",component:m("/courses/google-professional-cloud-architect-pca","e40"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/google-professional-data-engineer-pde",component:m("/courses/google-professional-data-engineer-pde","df0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/microsoft-excel-google-sheets",component:m("/courses/microsoft-excel-google-sheets","6db"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/mordern-algorithm-design",component:m("/courses/mordern-algorithm-design","5fb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/nutanix-hybrid-cloud",component:m("/courses/nutanix-hybrid-cloud","7c9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/se-radio",component:m("/courses/se-radio","115"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/self-driving-nanodegree",component:m("/courses/self-driving-nanodegree","c3d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/udemy-becoming-a-production-mysql-dba",component:m("/courses/udemy-becoming-a-production-mysql-dba","9e7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/courses/udemy-python-for-data-structures-algorithms",component:m("/courses/udemy-python-for-data-structures-algorithms","af9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/",component:m("/data-structures/","d0f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/general/",component:m("/data-structures/general/","f4b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/general/disjoint-set-data-structure",component:m("/data-structures/general/disjoint-set-data-structure","187"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/general/ds-intro",component:m("/data-structures/general/ds-intro","c2e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/general/elementary-symbol-tables",component:m("/data-structures/general/elementary-symbol-tables","16f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/general/endianness",component:m("/data-structures/general/endianness","f6e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/general/mutable-immutable-data-structures",component:m("/data-structures/general/mutable-immutable-data-structures","895"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/graph/",component:m("/data-structures/graph/","0d7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/graph/adjacency-list",component:m("/data-structures/graph/adjacency-list","887"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/graph/adjacency-matrix",component:m("/data-structures/graph/adjacency-matrix","cab"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/graph/digraphs-directed-graphs",component:m("/data-structures/graph/digraphs-directed-graphs","6d4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/graph/implementation",component:m("/data-structures/graph/implementation","f85"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/graph/intro",component:m("/data-structures/graph/intro","789"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/graph/questions",component:m("/data-structures/graph/questions","15f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/graph/undirected-graph",component:m("/data-structures/graph/undirected-graph","517"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/",component:m("/data-structures/hashtable/","4ba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/bloom-filters",component:m("/data-structures/hashtable/bloom-filters","951"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/chord",component:m("/data-structures/hashtable/chord","40d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/count-min-sketch",component:m("/data-structures/hashtable/count-min-sketch","33c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/dht-distributed-hash-tables",component:m("/data-structures/hashtable/dht-distributed-hash-tables","f14"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/dictionaries",component:m("/data-structures/hashtable/dictionaries","8d5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/hash-functions",component:m("/data-structures/hashtable/hash-functions","5df"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/hash-tables",component:m("/data-structures/hashtable/hash-tables","681"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/hashing",component:m("/data-structures/hashtable/hashing","08b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/hashing-techniques",component:m("/data-structures/hashtable/hashing-techniques","6f7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/hyperloglog",component:m("/data-structures/hashtable/hyperloglog","b8a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/kademlia",component:m("/data-structures/hashtable/kademlia","369"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/list-of-hash-functions",component:m("/data-structures/hashtable/list-of-hash-functions","6b9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/merkle-trees",component:m("/data-structures/hashtable/merkle-trees","83b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/probabilistic-data-structure",component:m("/data-structures/hashtable/probabilistic-data-structure","79e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/questions",component:m("/data-structures/hashtable/questions","d8c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hashtable/verkle-trees",component:m("/data-structures/hashtable/verkle-trees","e42"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/",component:m("/data-structures/hierarchical-data-structure/","c0f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/2-3-search-trees",component:m("/data-structures/hierarchical-data-structure/2-3-search-trees","5a4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/avl-tree",component:m("/data-structures/hierarchical-data-structure/avl-tree","79d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/b-tree",component:m("/data-structures/hierarchical-data-structure/b-tree","f60"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/beap-bi-parental-heap",component:m("/data-structures/hierarchical-data-structure/beap-bi-parental-heap","7ba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/binary-heap",component:m("/data-structures/hierarchical-data-structure/binary-heap","0ea"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/binary-search-tree",component:m("/data-structures/hierarchical-data-structure/binary-search-tree","37d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/binary-tree",component:m("/data-structures/hierarchical-data-structure/binary-tree","c88"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/binomial-heap",component:m("/data-structures/hierarchical-data-structure/binomial-heap","403"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/fibonacci-heap",component:m("/data-structures/hierarchical-data-structure/fibonacci-heap","1ca"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/interval-search-tree",component:m("/data-structures/hierarchical-data-structure/interval-search-tree","796"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/k-ary-heap-d-ary-heap-d-way-heap",component:m("/data-structures/hierarchical-data-structure/k-ary-heap-d-ary-heap-d-way-heap","881"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/kd-trees",component:m("/data-structures/hierarchical-data-structure/kd-trees","00c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/left-leaning-red-black-bsts-llrb-tree",component:m("/data-structures/hierarchical-data-structure/left-leaning-red-black-bsts-llrb-tree","c0a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/problems",component:m("/data-structures/hierarchical-data-structure/problems","dce"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/segment-tree",component:m("/data-structures/hierarchical-data-structure/segment-tree","33f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/space-partitioning-trees",component:m("/data-structures/hierarchical-data-structure/space-partitioning-trees","ab3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/hierarchical-data-structure/tree-ds",component:m("/data-structures/hierarchical-data-structure/tree-ds","de4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/linear-data-structure/",component:m("/data-structures/linear-data-structure/","f50"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/linear-data-structure/array",component:m("/data-structures/linear-data-structure/array","88f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/linear-data-structure/bag-data-structure",component:m("/data-structures/linear-data-structure/bag-data-structure","bff"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/linear-data-structure/circular-buffer",component:m("/data-structures/linear-data-structure/circular-buffer","bdb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/linear-data-structure/dequeue",component:m("/data-structures/linear-data-structure/dequeue","22e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/linear-data-structure/indexed-priority-queue",component:m("/data-structures/linear-data-structure/indexed-priority-queue","0ca"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/linear-data-structure/linked-list",component:m("/data-structures/linear-data-structure/linked-list","e26"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/linear-data-structure/priority-queue",component:m("/data-structures/linear-data-structure/priority-queue","71d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/linear-data-structure/problems",component:m("/data-structures/linear-data-structure/problems","1d2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/linear-data-structure/queue-fifo",component:m("/data-structures/linear-data-structure/queue-fifo","08d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/linear-data-structure/randomized-queue",component:m("/data-structures/linear-data-structure/randomized-queue","2a1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/linear-data-structure/sets",component:m("/data-structures/linear-data-structure/sets","cdf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/linear-data-structure/skip-lists",component:m("/data-structures/linear-data-structure/skip-lists","147"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/linear-data-structure/stack-lifo",component:m("/data-structures/linear-data-structure/stack-lifo","ec6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/others/",component:m("/data-structures/others/","b5a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/others/bitmap",component:m("/data-structures/others/bitmap","f98"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/others/large-objects",component:m("/data-structures/others/large-objects","a0e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/others/lsm-log-structured-merge-trees",component:m("/data-structures/others/lsm-log-structured-merge-trees","497"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/others/sstables-sorted-string-tables",component:m("/data-structures/others/sstables-sorted-string-tables","15f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/trie/",component:m("/data-structures/trie/","f81"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/trie/compressed-trie",component:m("/data-structures/trie/compressed-trie","317"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/trie/others",component:m("/data-structures/trie/others","62f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/trie/patricia-trie",component:m("/data-structures/trie/patricia-trie","fe9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/trie/questions",component:m("/data-structures/trie/questions","5d6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/trie/r-way-tries",component:m("/data-structures/trie/r-way-tries","5e9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/trie/standard-trie",component:m("/data-structures/trie/standard-trie","d2c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/trie/suffix-array",component:m("/data-structures/trie/suffix-array","f9d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/trie/suffix-tree",component:m("/data-structures/trie/suffix-tree","c68"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-structures/trie/ternary-search-tries-tst",component:m("/data-structures/trie/ternary-search-tries-tst","057"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/",component:m("/databases/","762"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/concepts/",component:m("/databases/concepts/","a03"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/concepts/acid-and-base",component:m("/databases/concepts/acid-and-base","639"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/concepts/amazon-databases",component:m("/databases/concepts/amazon-databases","c42"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/concepts/comparisions",component:m("/databases/concepts/comparisions","a78"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/concepts/concurrency-control",component:m("/databases/concepts/concurrency-control","2ba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/concepts/core-concepts",component:m("/databases/concepts/core-concepts","0b1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/concepts/database-workloads",component:m("/databases/concepts/database-workloads","4ea"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/concepts/disk-oriented-vs-in-memory-dbs",component:m("/databases/concepts/disk-oriented-vs-in-memory-dbs","e03"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/concepts/history",component:m("/databases/concepts/history","5ee"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/concepts/intro",component:m("/databases/concepts/intro","337"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/concepts/isolation-levels",component:m("/databases/concepts/isolation-levels","1af"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/concepts/mvcc-multiversion-concurrency-control",component:m("/databases/concepts/mvcc-multiversion-concurrency-control","63b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/concepts/others",component:m("/databases/concepts/others","489"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/concepts/rum-conjecture",component:m("/databases/concepts/rum-conjecture","c11"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/concepts/types-of-databases",component:m("/databases/concepts/types-of-databases","8cd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/",component:m("/databases/data-warehousing/","3a9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/01-intro",component:m("/databases/data-warehousing/01-intro","687"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/02-concepts",component:m("/databases/data-warehousing/02-concepts","7e6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/03-slowly-changing-dimension-scd",component:m("/databases/data-warehousing/03-slowly-changing-dimension-scd","107"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/04-fact-dimension-tables",component:m("/databases/data-warehousing/04-fact-dimension-tables","f29"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/05-characteristics",component:m("/databases/data-warehousing/05-characteristics","faf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/06-architecture",component:m("/databases/data-warehousing/06-architecture","110"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/07-warehouse-schemas",component:m("/databases/data-warehousing/07-warehouse-schemas","51e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/08-data-lake",component:m("/databases/data-warehousing/08-data-lake","175"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/09-kimball-inmon-architecture",component:m("/databases/data-warehousing/09-kimball-inmon-architecture","0cd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/10-lambda-architecture",component:m("/databases/data-warehousing/10-lambda-architecture","66e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/11-dw-databases",component:m("/databases/data-warehousing/11-dw-databases","fdc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/change-data-capture-cdc",component:m("/databases/data-warehousing/change-data-capture-cdc","38b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/data-engineering",component:m("/databases/data-warehousing/data-engineering","d3b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/debezium",component:m("/databases/data-warehousing/debezium","8b8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/etl-extract-transform-load",component:m("/databases/data-warehousing/etl-extract-transform-load","9c6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/master-data-management-mdm",component:m("/databases/data-warehousing/master-data-management-mdm","43c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/data-warehousing/tools",component:m("/databases/data-warehousing/tools","8e7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/indexing/",component:m("/databases/indexing/","572"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/indexing/database-index",component:m("/databases/indexing/database-index","168"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/indexing/indexing-questions",component:m("/databases/indexing/indexing-questions","551"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/indexing/intro",component:m("/databases/indexing/intro","ac9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/indexing/inverted-index",component:m("/databases/indexing/inverted-index","3ee"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/indexing/mysql-indexing",component:m("/databases/indexing/mysql-indexing","017"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/modeling/",component:m("/databases/modeling/","cfe"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/modeling/data-modeling",component:m("/databases/modeling/data-modeling","7ec"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/modeling/er-diagrams-entity-relationships",component:m("/databases/modeling/er-diagrams-entity-relationships","780"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/modeling/er-tools",component:m("/databases/modeling/er-tools","9ba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/",component:m("/databases/nosql-databases/","020"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/aws-dynamodb/",component:m("/databases/nosql-databases/aws-dynamodb/","2ee"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/aws-dynamodb/capacity-modes",component:m("/databases/nosql-databases/aws-dynamodb/capacity-modes","1ed"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/aws-dynamodb/cheatsheet",component:m("/databases/nosql-databases/aws-dynamodb/cheatsheet","a93"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/aws-dynamodb/core-components",component:m("/databases/nosql-databases/aws-dynamodb/core-components","424"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/aws-dynamodb/documentation",component:m("/databases/nosql-databases/aws-dynamodb/documentation","9e9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/aws-dynamodb/intro",component:m("/databases/nosql-databases/aws-dynamodb/intro","4fb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/aws-dynamodb/others",component:m("/databases/nosql-databases/aws-dynamodb/others","034"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/aws-dynamodb/table-classes",component:m("/databases/nosql-databases/aws-dynamodb/table-classes","8ed"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/aws-dynamodb/working",component:m("/databases/nosql-databases/aws-dynamodb/working","ced"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/cassandra/",component:m("/databases/nosql-databases/cassandra/","410"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/cassandra/commands",component:m("/databases/nosql-databases/cassandra/commands","902"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/cassandra/consistency",component:m("/databases/nosql-databases/cassandra/consistency","7b8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/cassandra/cql-cassandra-query-language",component:m("/databases/nosql-databases/cassandra/cql-cassandra-query-language","b4c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/cassandra/data-model",component:m("/databases/nosql-databases/cassandra/data-model","0b3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/cassandra/design",component:m("/databases/nosql-databases/cassandra/design","8a1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/cassandra/drivers-clients",component:m("/databases/nosql-databases/cassandra/drivers-clients","ee7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/cassandra/intro",component:m("/databases/nosql-databases/cassandra/intro","2a2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/cassandra/questions",component:m("/databases/nosql-databases/cassandra/questions","f2b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/cassandra/working",component:m("/databases/nosql-databases/cassandra/working","1fe"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/clickhouse",component:m("/databases/nosql-databases/clickhouse","e12"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/column-family",component:m("/databases/nosql-databases/column-family","188"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/comparisions",component:m("/databases/nosql-databases/comparisions","a7c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/druid/",component:m("/databases/nosql-databases/druid/","b02"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/druid/architecture",component:m("/databases/nosql-databases/druid/architecture","72b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/druid/cheatsheet",component:m("/databases/nosql-databases/druid/cheatsheet","53d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/druid/commands",component:m("/databases/nosql-databases/druid/commands","821"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/druid/documentation",component:m("/databases/nosql-databases/druid/documentation","f14"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/druid/faqs",component:m("/databases/nosql-databases/druid/faqs","02a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/druid/intro",component:m("/databases/nosql-databases/druid/intro","e58"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/druid/others",component:m("/databases/nosql-databases/druid/others","044"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/druid/paper",component:m("/databases/nosql-databases/druid/paper","f95"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/etcd",component:m("/databases/nosql-databases/etcd","35e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/mongodb/",component:m("/databases/nosql-databases/mongodb/","17d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/mongodb/commands",component:m("/databases/nosql-databases/mongodb/commands","66d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/mongodb/data-types",component:m("/databases/nosql-databases/mongodb/data-types","18a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/mongodb/indexes",component:m("/databases/nosql-databases/mongodb/indexes","97a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/mongodb/intro",component:m("/databases/nosql-databases/mongodb/intro","f7b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/mongodb/others",component:m("/databases/nosql-databases/mongodb/others","f5c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/mongodb/overview",component:m("/databases/nosql-databases/mongodb/overview","90d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/mongodb/pymongo",component:m("/databases/nosql-databases/mongodb/pymongo","354"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/mongodb/questions",component:m("/databases/nosql-databases/mongodb/questions","a4c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/mongodb/read-write-concern",component:m("/databases/nosql-databases/mongodb/read-write-concern","95a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/mongodb/sharding-replication",component:m("/databases/nosql-databases/mongodb/sharding-replication","ec4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/mongodb/vector-search",component:m("/databases/nosql-databases/mongodb/vector-search","aaa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/others",component:m("/databases/nosql-databases/others","381"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/redis/",component:m("/databases/nosql-databases/redis/","b7d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/redis/best-practices",component:m("/databases/nosql-databases/redis/best-practices","999"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/redis/commands",component:m("/databases/nosql-databases/redis/commands","8aa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/redis/documentation",component:m("/databases/nosql-databases/redis/documentation","37d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/redis/intro",component:m("/databases/nosql-databases/redis/intro","7d7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/redis/others",component:m("/databases/nosql-databases/redis/others","e16"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/redis/redis-concepts",component:m("/databases/nosql-databases/redis/redis-concepts","729"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/redis/redis-data-types",component:m("/databases/nosql-databases/redis/redis-data-types","fed"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/redis/redis-eviction-policies",component:m("/databases/nosql-databases/redis/redis-eviction-policies","015"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/redis/redis-py",component:m("/databases/nosql-databases/redis/redis-py","92e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/redis/redis-queues",component:m("/databases/nosql-databases/redis/redis-queues","033"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/redis/redis-streams-pubsub",component:m("/databases/nosql-databases/redis/redis-streams-pubsub","4e4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/redis/scaling",component:m("/databases/nosql-databases/redis/scaling","337"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/snowflake/",component:m("/databases/nosql-databases/snowflake/","c78"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/snowflake/architecture",component:m("/databases/nosql-databases/snowflake/architecture","98f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/snowflake/commands",component:m("/databases/nosql-databases/snowflake/commands","81e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/snowflake/compute",component:m("/databases/nosql-databases/snowflake/compute","1e9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/snowflake/documentation",component:m("/databases/nosql-databases/snowflake/documentation","d66"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/snowflake/governance",component:m("/databases/nosql-databases/snowflake/governance","8d3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/snowflake/ingestion",component:m("/databases/nosql-databases/snowflake/ingestion","90c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/snowflake/intro",component:m("/databases/nosql-databases/snowflake/intro","e5b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/snowflake/optimizations",component:m("/databases/nosql-databases/snowflake/optimizations","3c8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/snowflake/recovery",component:m("/databases/nosql-databases/snowflake/recovery","db3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/snowflake/stages",component:m("/databases/nosql-databases/snowflake/stages","3cd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/snowflake/terms",component:m("/databases/nosql-databases/snowflake/terms","926"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/tidb",component:m("/databases/nosql-databases/tidb","ee5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/time-series-db/",component:m("/databases/nosql-databases/time-series-db/","b07"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/time-series-db/influxdb/",component:m("/databases/nosql-databases/time-series-db/influxdb/","856"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/time-series-db/influxdb/administration",component:m("/databases/nosql-databases/time-series-db/influxdb/administration","1e7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/time-series-db/influxdb/commands-influx-query-language-influxql",component:m("/databases/nosql-databases/time-series-db/influxdb/commands-influx-query-language-influxql","d36"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/time-series-db/influxdb/concepts",component:m("/databases/nosql-databases/time-series-db/influxdb/concepts","29a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/time-series-db/influxdb/influx",component:m("/databases/nosql-databases/time-series-db/influxdb/influx","8ea"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/time-series-db/influxdb/kapacitor",component:m("/databases/nosql-databases/time-series-db/influxdb/kapacitor","a6f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/time-series-db/influxdb/others",component:m("/databases/nosql-databases/time-series-db/influxdb/others","725"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/time-series-db/influxdb/tools",component:m("/databases/nosql-databases/time-series-db/influxdb/tools","e61"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/time-series-db/influxdb/upgrades",component:m("/databases/nosql-databases/time-series-db/influxdb/upgrades","2df"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/time-series-db/influxdb/write-protocols",component:m("/databases/nosql-databases/time-series-db/influxdb/write-protocols","ec4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/time-series-db/time-series-databases",component:m("/databases/nosql-databases/time-series-db/time-series-databases","5c5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/time-series-db/timescaledb",component:m("/databases/nosql-databases/time-series-db/timescaledb","85a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/nosql-databases/yugabytedb",component:m("/databases/nosql-databases/yugabytedb","ec5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/others/",component:m("/databases/others/","8cd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/others/course-advanced-database-systems",component:m("/databases/others/course-advanced-database-systems","6b6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/others/course-aws-certified-database-specialty",component:m("/databases/others/course-aws-certified-database-specialty","4ba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/others/database-activity-monitoring-dam",component:m("/databases/others/database-activity-monitoring-dam","995"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/others/database-migration-tools",component:m("/databases/others/database-migration-tools","b56"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/others/databases-others",component:m("/databases/others/databases-others","3c1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/others/technologies-tools",component:m("/databases/others/technologies-tools","4f4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/",component:m("/databases/sql-databases/","cf4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/amazon-aurora-vs-rds",component:m("/databases/sql-databases/amazon-aurora-vs-rds","f8b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/amazon-rds",component:m("/databases/sql-databases/amazon-rds","f03"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-aurora/",component:m("/databases/sql-databases/aws-aurora/","1ee"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-aurora/aurora-documentation",component:m("/databases/sql-databases/aws-aurora/aurora-documentation","623"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-aurora/aurora-global-databases",component:m("/databases/sql-databases/aws-aurora/aurora-global-databases","4c3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-aurora/aurora-serverless",component:m("/databases/sql-databases/aws-aurora/aurora-serverless","e4e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-aurora/backup",component:m("/databases/sql-databases/aws-aurora/backup","667"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-aurora/configurations-optimizations-best-practices",component:m("/databases/sql-databases/aws-aurora/configurations-optimizations-best-practices","5c6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-aurora/costs",component:m("/databases/sql-databases/aws-aurora/costs","a4f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-aurora/high-availability-ha",component:m("/databases/sql-databases/aws-aurora/high-availability-ha","4f6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-aurora/high-availability-ha-others",component:m("/databases/sql-databases/aws-aurora/high-availability-ha-others","737"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-aurora/intro",component:m("/databases/sql-databases/aws-aurora/intro","68b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-aurora/monitoring",component:m("/databases/sql-databases/aws-aurora/monitoring","aac"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-aurora/others",component:m("/databases/sql-databases/aws-aurora/others","716"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-aurora/storage",component:m("/databases/sql-databases/aws-aurora/storage","899"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-redshift/",component:m("/databases/sql-databases/aws-redshift/","42b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-redshift/architecture",component:m("/databases/sql-databases/aws-redshift/architecture","e2b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-redshift/deep-dive-best-practices",component:m("/databases/sql-databases/aws-redshift/deep-dive-best-practices","c16"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-redshift/documentation",component:m("/databases/sql-databases/aws-redshift/documentation","560"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-redshift/etl-redshift",component:m("/databases/sql-databases/aws-redshift/etl-redshift","3da"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-redshift/intro",component:m("/databases/sql-databases/aws-redshift/intro","514"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-redshift/others",component:m("/databases/sql-databases/aws-redshift/others","b7d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-redshift/pricing-sizing",component:m("/databases/sql-databases/aws-redshift/pricing-sizing","551"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-redshift/redshift-sql-queries-commands",component:m("/databases/sql-databases/aws-redshift/redshift-sql-queries-commands","9ad"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/aws-redshift/wlm-qmr",component:m("/databases/sql-databases/aws-redshift/wlm-qmr","7b9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/memsql/",component:m("/databases/sql-databases/memsql/","a85"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/memsql/intro",component:m("/databases/sql-databases/memsql/intro","20d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/",component:m("/databases/sql-databases/mysql/","e16"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/administration-configuration",component:m("/databases/sql-databases/mysql/administration-configuration","1ed"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/backup-comparisons",component:m("/databases/sql-databases/mysql/backup-comparisons","fe9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/backup-policy",component:m("/databases/sql-databases/mysql/backup-policy","c73"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/backup-types",component:m("/databases/sql-databases/mysql/backup-types","baf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/connection-handling",component:m("/databases/sql-databases/mysql/connection-handling","188"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/documentation",component:m("/databases/sql-databases/mysql/documentation","f2c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/gtid-replication",component:m("/databases/sql-databases/mysql/gtid-replication","0ba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/intro",component:m("/databases/sql-databases/mysql/intro","ebe"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/mydumper",component:m("/databases/sql-databases/mysql/mydumper","966"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/mysql-data-types",component:m("/databases/sql-databases/mysql/mysql-data-types","493"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/mysql-heatwave",component:m("/databases/sql-databases/mysql/mysql-heatwave","649"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/mysql-triggers",component:m("/databases/sql-databases/mysql/mysql-triggers","e25"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/mysqlbinlog",component:m("/databases/sql-databases/mysql/mysqlbinlog","59d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/mysqldump",component:m("/databases/sql-databases/mysql/mysqldump","91e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/optimizing-locking-operations",component:m("/databases/sql-databases/mysql/optimizing-locking-operations","123"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/others",component:m("/databases/sql-databases/mysql/others","352"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/partitioning",component:m("/databases/sql-databases/mysql/partitioning","14e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/percona-toolkit",component:m("/databases/sql-databases/mysql/percona-toolkit","00a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/percona-xtrabackup",component:m("/databases/sql-databases/mysql/percona-xtrabackup","000"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/replication",component:m("/databases/sql-databases/mysql/replication","927"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/scaling-optimizations",component:m("/databases/sql-databases/mysql/scaling-optimizations","f8f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/server-sql-modes",component:m("/databases/sql-databases/mysql/server-sql-modes","9fb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/sql-mysql-tools",component:m("/databases/sql-databases/mysql/sql-mysql-tools","d97"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/thread-states",component:m("/databases/sql-databases/mysql/thread-states","221"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/mysql/transaction-commit-rollback",component:m("/databases/sql-databases/mysql/transaction-commit-rollback","dd0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/normalization",component:m("/databases/sql-databases/normalization","db1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/partitioning-sharding",component:m("/databases/sql-databases/partitioning-sharding","a48"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/postgres/",component:m("/databases/sql-databases/postgres/","fc0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/postgres/architecture",component:m("/databases/sql-databases/postgres/architecture","93a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/postgres/documentation",component:m("/databases/sql-databases/postgres/documentation","2f2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/postgres/indexes",component:m("/databases/sql-databases/postgres/indexes","7d0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/postgres/others",component:m("/databases/sql-databases/postgres/others","527"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/postgres/parameters-configuration-optimization",component:m("/databases/sql-databases/postgres/parameters-configuration-optimization","48b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/postgres/replication",component:m("/databases/sql-databases/postgres/replication","f27"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/postgres/table-partitioning",component:m("/databases/sql-databases/postgres/table-partitioning","735"),exact:!0,sidebar:"tutorialSidebar"},{path:"/databases/sql-databases/rdbms",component:m("/databases/sql-databases/rdbms","1d3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/",component:m("/decentralized-applications/","952"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/blockchain",component:m("/decentralized-applications/blockchain","727"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/",component:m("/decentralized-applications/coins-tokens-chains/","e2f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/bip39",component:m("/decentralized-applications/coins-tokens-chains/bip39","4d1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/bitcoin",component:m("/decentralized-applications/coins-tokens-chains/bitcoin","0e8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/bnb",component:m("/decentralized-applications/coins-tokens-chains/bnb","dc1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/cardano",component:m("/decentralized-applications/coins-tokens-chains/cardano","8a4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/celestia",component:m("/decentralized-applications/coins-tokens-chains/celestia","c60"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/coin-token-intro",component:m("/decentralized-applications/coins-tokens-chains/coin-token-intro","732"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/dai",component:m("/decentralized-applications/coins-tokens-chains/dai","332"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/dtokens",component:m("/decentralized-applications/coins-tokens-chains/dtokens","1a8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/dual-token-economy",component:m("/decentralized-applications/coins-tokens-chains/dual-token-economy","d8d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/litecoin",component:m("/decentralized-applications/coins-tokens-chains/litecoin","1ca"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/near-protocol",component:m("/decentralized-applications/coins-tokens-chains/near-protocol","b26"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/nft-non-fungible-tokens",component:m("/decentralized-applications/coins-tokens-chains/nft-non-fungible-tokens","75d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/ordinals",component:m("/decentralized-applications/coins-tokens-chains/ordinals","21a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/stable-coins",component:m("/decentralized-applications/coins-tokens-chains/stable-coins","0fa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/thorchain",component:m("/decentralized-applications/coins-tokens-chains/thorchain","2aa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/uniswap",component:m("/decentralized-applications/coins-tokens-chains/uniswap","e4e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/usdc",component:m("/decentralized-applications/coins-tokens-chains/usdc","403"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/usdt",component:m("/decentralized-applications/coins-tokens-chains/usdt","f50"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/vechain",component:m("/decentralized-applications/coins-tokens-chains/vechain","431"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/coins-tokens-chains/wallets",component:m("/decentralized-applications/coins-tokens-chains/wallets","129"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/consensus-protocols",component:m("/decentralized-applications/consensus-protocols","197"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/crypto-exchanges",component:m("/decentralized-applications/crypto-exchanges","bb3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/crypto-future",component:m("/decentralized-applications/crypto-future","34b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/crypto-investing",component:m("/decentralized-applications/crypto-investing","8bd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/crypto-news",component:m("/decentralized-applications/crypto-news","aeb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/defi",component:m("/decentralized-applications/defi","3d9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/defi-apps",component:m("/decentralized-applications/defi-apps","ba6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/development/",component:m("/decentralized-applications/development/","35b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/development/infura",component:m("/decentralized-applications/development/infura","069"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/development/sample-code",component:m("/decentralized-applications/development/sample-code","ab5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/",component:m("/decentralized-applications/ethereum/","63b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/01-intro-to-ethereum",component:m("/decentralized-applications/ethereum/01-intro-to-ethereum","dd5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/02-intro-to-ether",component:m("/decentralized-applications/ethereum/02-intro-to-ether","aa3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/03-intro-to-dapps",component:m("/decentralized-applications/ethereum/03-intro-to-dapps","74d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/05-accounts",component:m("/decentralized-applications/ethereum/05-accounts","008"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/06-transactions",component:m("/decentralized-applications/ethereum/06-transactions","e8d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/07-blocks",component:m("/decentralized-applications/ethereum/07-blocks","068"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/08-evm",component:m("/decentralized-applications/ethereum/08-evm","52b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/09-gas",component:m("/decentralized-applications/ethereum/09-gas","aca"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/10-nodes-and-clients",component:m("/decentralized-applications/ethereum/10-nodes-and-clients","973"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/30-bridges",component:m("/decentralized-applications/ethereum/30-bridges","7c7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/40-proof-of-stake",component:m("/decentralized-applications/ethereum/40-proof-of-stake","dda"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/41-rewards-and-penalties",component:m("/decentralized-applications/ethereum/41-rewards-and-penalties","8c7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/42-block-proposals",component:m("/decentralized-applications/ethereum/42-block-proposals","e70"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/arbitrum",component:m("/decentralized-applications/ethereum/arbitrum","956"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/dao",component:m("/decentralized-applications/ethereum/dao","f9a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/erc-4337",component:m("/decentralized-applications/ethereum/erc-4337","015"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/ethereum-intro",component:m("/decentralized-applications/ethereum/ethereum-intro","53d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/ethereum-staking",component:m("/decentralized-applications/ethereum/ethereum-staking","9ea"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/etherjs",component:m("/decentralized-applications/ethereum/etherjs","51d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/layer-2-protocols",component:m("/decentralized-applications/ethereum/layer-2-protocols","1d8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/others",component:m("/decentralized-applications/ethereum/others","568"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/polygon",component:m("/decentralized-applications/ethereum/polygon","0ef"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/solidity",component:m("/decentralized-applications/ethereum/solidity","45c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/ethereum/upgrades",component:m("/decentralized-applications/ethereum/upgrades","f0c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/intro",component:m("/decentralized-applications/intro","70b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/key-concepts",component:m("/decentralized-applications/key-concepts","f92"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/liquidity-mining",component:m("/decentralized-applications/liquidity-mining","5b2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/on-chain-analytics",component:m("/decentralized-applications/on-chain-analytics","8dd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/others",component:m("/decentralized-applications/others","839"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/references-learning",component:m("/decentralized-applications/references-learning","901"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/tokenomics",component:m("/decentralized-applications/tokenomics","5ab"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/tools",component:m("/decentralized-applications/tools","256"),exact:!0,sidebar:"tutorialSidebar"},{path:"/decentralized-applications/trilemmas",component:m("/decentralized-applications/trilemmas","bb3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/",component:m("/devops/","966"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/ansible/",component:m("/devops/ansible/","488"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/ansible/commands",component:m("/devops/ansible/commands","eaa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/",component:m("/devops/devops-intro/","bc8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/application-management",component:m("/devops/devops-intro/application-management","09b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/chaos-engineering",component:m("/devops/devops-intro/chaos-engineering","96f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/concepts",component:m("/devops/devops-intro/concepts","dfc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/deployment-strategies",component:m("/devops/devops-intro/deployment-strategies","f77"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/design",component:m("/devops/devops-intro/design","5ed"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/disaster-recovery",component:m("/devops/devops-intro/disaster-recovery","3f2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/distributed-tracing",component:m("/devops/devops-intro/distributed-tracing","f11"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/dora-metrics",component:m("/devops/devops-intro/dora-metrics","457"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/feature-toggles-flags",component:m("/devops/devops-intro/feature-toggles-flags","daf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/finops",component:m("/devops/devops-intro/finops","5c4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/gitops",component:m("/devops/devops-intro/gitops","812"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/high-availability",component:m("/devops/devops-intro/high-availability","68a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/infra-as-code-iac",component:m("/devops/devops-intro/infra-as-code-iac","a3a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/intro",component:m("/devops/devops-intro/intro","437"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/load-balancer",component:m("/devops/devops-intro/load-balancer","428"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/load-balancer-features",component:m("/devops/devops-intro/load-balancer-features","f4e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/load-balancer-tools",component:m("/devops/devops-intro/load-balancer-tools","e59"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/load-balancing-algorithms",component:m("/devops/devops-intro/load-balancing-algorithms","756"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/others",component:m("/devops/devops-intro/others","3aa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/platform-engineering",component:m("/devops/devops-intro/platform-engineering","ece"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/proxy",component:m("/devops/devops-intro/proxy","cdd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/devops-intro/sre-site-reliability-engineering",component:m("/devops/devops-intro/sre-site-reliability-engineering","890"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/docker/",component:m("/devops/docker/","984"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/docker/concepts",component:m("/devops/docker/concepts","c51"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/docker/containers",component:m("/devops/docker/containers","9f4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/docker/docker-commands",component:m("/devops/docker/docker-commands","c45"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/docker/docker-compose",component:m("/devops/docker/docker-compose","c8d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/docker/docker-compose-example",component:m("/devops/docker/docker-compose-example","4f3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/docker/dockerfile-example",component:m("/devops/docker/dockerfile-example","15e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/docker/dockerfiles",component:m("/devops/docker/dockerfiles","393"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/docker/intro",component:m("/devops/docker/intro","3d2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/docker/networking",component:m("/devops/docker/networking","011"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/docker/others",component:m("/devops/docker/others","5df"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/docker/service-configuration-reference",component:m("/devops/docker/service-configuration-reference","e43"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/docker/stack-swarm",component:m("/devops/docker/stack-swarm","757"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/ides/",component:m("/devops/ides/","241"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/ides/jupyter-jupyterlab-notebook/",component:m("/devops/ides/jupyter-jupyterlab-notebook/","913"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/ides/jupyter-jupyterlab-notebook/template",component:m("/devops/ides/jupyter-jupyterlab-notebook/template","0ea"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/ides/jupyter-jupyterlab-notebook/tools",component:m("/devops/ides/jupyter-jupyterlab-notebook/tools","af7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/ides/mac",component:m("/devops/ides/mac","ffe"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/ides/medium-blogging",component:m("/devops/ides/medium-blogging","658"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/ides/obsidian",component:m("/devops/ides/obsidian","8da"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/ides/obsidian-in-vscode",component:m("/devops/ides/obsidian-in-vscode","be8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/ides/onenote",component:m("/devops/ides/onenote","fac"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/ides/others",component:m("/devops/ides/others","e90"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/ides/pycharm",component:m("/devops/ides/pycharm","ec9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/ides/spyder",component:m("/devops/ides/spyder","8a0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/ides/vscode-vs-code",component:m("/devops/ides/vscode-vs-code","052"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/",component:m("/devops/kubernetes/","e28"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/api-resources",component:m("/devops/kubernetes/api-resources","5ad"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/architecture",component:m("/devops/kubernetes/architecture","df1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/cluster-administration/",component:m("/devops/kubernetes/cluster-administration/","1ec"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/cluster-administration/logging-architecture",component:m("/devops/kubernetes/cluster-administration/logging-architecture","395"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/cluster-administration/others",component:m("/devops/kubernetes/cluster-administration/others","c66"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/concepts-and-overview/",component:m("/devops/kubernetes/concepts-and-overview/","992"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/concepts-and-overview/configuration/",component:m("/devops/kubernetes/concepts-and-overview/configuration/","e79"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/concepts-and-overview/configuration/secrets",component:m("/devops/kubernetes/concepts-and-overview/configuration/secrets","606"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/concepts-and-overview/policies",component:m("/devops/kubernetes/concepts-and-overview/policies","927"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/configuration",component:m("/devops/kubernetes/configuration","7a9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/design-patterns",component:m("/devops/kubernetes/design-patterns","1d2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/helm",component:m("/devops/kubernetes/helm","57c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/intro",component:m("/devops/kubernetes/intro","b67"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/keda",component:m("/devops/kubernetes/keda","e7f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/kubectl-commands",component:m("/devops/kubernetes/kubectl-commands","c0e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/kubeedge",component:m("/devops/kubernetes/kubeedge","9d8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/kubernetes-manifests-examples",component:m("/devops/kubernetes/kubernetes-manifests-examples","7a7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/operators",component:m("/devops/kubernetes/operators","8b5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/optimizations",component:m("/devops/kubernetes/optimizations","aa2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/others",component:m("/devops/kubernetes/others","9a7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/outline-documentation",component:m("/devops/kubernetes/outline-documentation","0db"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/reference/",component:m("/devops/kubernetes/reference/","2a1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/reference/quality-of-service-qos",component:m("/devops/kubernetes/reference/quality-of-service-qos","512"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/reference/rbac",component:m("/devops/kubernetes/reference/rbac","aca"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/services-loadbalancing-and-networking/",component:m("/devops/kubernetes/services-loadbalancing-and-networking/","482"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/services-loadbalancing-and-networking/ingress",component:m("/devops/kubernetes/services-loadbalancing-and-networking/ingress","dc4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/services-loadbalancing-and-networking/others",component:m("/devops/kubernetes/services-loadbalancing-and-networking/others","d8f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/services-loadbalancing-and-networking/services",component:m("/devops/kubernetes/services-loadbalancing-and-networking/services","bfe"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/storage",component:m("/devops/kubernetes/storage","289"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/tasks",component:m("/devops/kubernetes/tasks","368"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/tools",component:m("/devops/kubernetes/tools","6b1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/tools-scaling",component:m("/devops/kubernetes/tools-scaling","f49"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/tools-serverless",component:m("/devops/kubernetes/tools-serverless","0e1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/troubleshooting",component:m("/devops/kubernetes/troubleshooting","f2f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/workloads/",component:m("/devops/kubernetes/workloads/","ca4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/workloads/controllers",component:m("/devops/kubernetes/workloads/controllers","63a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/workloads/others",component:m("/devops/kubernetes/workloads/others","d2d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/workloads/pod-lifecycle",component:m("/devops/kubernetes/workloads/pod-lifecycle","e1b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/kubernetes/workloads/pods",component:m("/devops/kubernetes/workloads/pods","d39"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/",component:m("/devops/monitoring/","75a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/grafana",component:m("/devops/monitoring/grafana","e75"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/grafana-loki",component:m("/devops/monitoring/grafana-loki","117"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/graphite",component:m("/devops/monitoring/graphite","c55"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/istio/",component:m("/devops/monitoring/istio/","3ac"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/istio/architecture",component:m("/devops/monitoring/istio/architecture","e94"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/istio/commands",component:m("/devops/monitoring/istio/commands","39d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/istio/examples",component:m("/devops/monitoring/istio/examples","8c6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/istio/intro",component:m("/devops/monitoring/istio/intro","e80"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/istio/observability",component:m("/devops/monitoring/istio/observability","4fb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/istio/operations",component:m("/devops/monitoring/istio/operations","82b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/istio/others",component:m("/devops/monitoring/istio/others","271"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/istio/security",component:m("/devops/monitoring/istio/security","bba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/istio/tasks",component:m("/devops/monitoring/istio/tasks","b86"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/istio/traffic-management",component:m("/devops/monitoring/istio/traffic-management","e14"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/linkerd",component:m("/devops/monitoring/linkerd","f70"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/metrics",component:m("/devops/monitoring/metrics","02a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/open-tracing",component:m("/devops/monitoring/open-tracing","60a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/others",component:m("/devops/monitoring/others","077"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/prometheus/",component:m("/devops/monitoring/prometheus/","388"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/prometheus/alert-manager",component:m("/devops/monitoring/prometheus/alert-manager","07b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/prometheus/intro",component:m("/devops/monitoring/prometheus/intro","918"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/prometheus/prometheus-architecture",component:m("/devops/monitoring/prometheus/prometheus-architecture","335"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/prometheus/querying",component:m("/devops/monitoring/prometheus/querying","e8e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/prometheus/rules",component:m("/devops/monitoring/prometheus/rules","645"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/service-mesh",component:m("/devops/monitoring/service-mesh","5eb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/telegraf/",component:m("/devops/monitoring/telegraf/","f6c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/monitoring/telegraf/commands-and-configs",component:m("/devops/monitoring/telegraf/commands-and-configs","8d5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/others/",component:m("/devops/others/","f96"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/others/backstage",component:m("/devops/others/backstage","e4c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/others/coresync-pacemaker",component:m("/devops/others/coresync-pacemaker","fc7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/others/devtron",component:m("/devops/others/devtron","357"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/others/jenkins",component:m("/devops/others/jenkins","d3c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/others/keycloak",component:m("/devops/others/keycloak","9fd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/others/kong",component:m("/devops/others/kong","cad"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/others/other-cicd",component:m("/devops/others/other-cicd","08d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/others/other-tools",component:m("/devops/others/other-tools","c3b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/servers/",component:m("/devops/servers/","f97"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/servers/apache-server",component:m("/devops/servers/apache-server","dfb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/servers/gunicorn",component:m("/devops/servers/gunicorn","60a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/servers/nginx/",component:m("/devops/servers/nginx/","e22"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/servers/nginx/configs",component:m("/devops/servers/nginx/configs","0d7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/",component:m("/devops/terminal-bash/","068"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/1-linux-general-unix-linux-commands",component:m("/devops/terminal-bash/1-linux-general-unix-linux-commands","95b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/2-system-calls",component:m("/devops/terminal-bash/2-system-calls","66c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/3-library-functions",component:m("/devops/terminal-bash/3-library-functions","aa3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/8-linux-system-administration",component:m("/devops/terminal-bash/8-linux-system-administration","659"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/bash-metacharacters",component:m("/devops/terminal-bash/bash-metacharacters","d34"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/bash-shortcuts",component:m("/devops/terminal-bash/bash-shortcuts","00c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/manual-pages",component:m("/devops/terminal-bash/manual-pages","1bf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/networking-tools",component:m("/devops/terminal-bash/networking-tools","a3e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/others",component:m("/devops/terminal-bash/others","61c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/shell-bash-script",component:m("/devops/terminal-bash/shell-bash-script","6a8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/shell-intro",component:m("/devops/terminal-bash/shell-intro","e16"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/sysctl",component:m("/devops/terminal-bash/sysctl","f87"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/tmux-iterm",component:m("/devops/terminal-bash/tmux-iterm","cb2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/tools/awk",component:m("/devops/terminal-bash/tools/awk","63f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/tools/crontab",component:m("/devops/terminal-bash/tools/crontab","63b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/tools/curl",component:m("/devops/terminal-bash/tools/curl","3d7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/tools/editors",component:m("/devops/terminal-bash/tools/editors","b56"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/tools/mosh",component:m("/devops/terminal-bash/tools/mosh","f72"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terminal-bash/tools/rsync-rclone",component:m("/devops/terminal-bash/tools/rsync-rclone","3f1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terraform/",component:m("/devops/terraform/","079"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terraform/commands",component:m("/devops/terraform/commands","dac"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terraform/documentation",component:m("/devops/terraform/documentation","346"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terraform/examples",component:m("/devops/terraform/examples","16f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/devops/terraform/variables",component:m("/devops/terraform/variables","2eb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/",component:m("/economics/","cea"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/accounting-for-finance/",component:m("/economics/accounting-for-finance/","07d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/accounting-for-finance/0-accounting-for-finance",component:m("/economics/accounting-for-finance/0-accounting-for-finance","f82"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/accounting-for-finance/1-accounting-first-steps",component:m("/economics/accounting-for-finance/1-accounting-first-steps","ec8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/accounting-for-finance/2-income-statements-and-profitability-measures",component:m("/economics/accounting-for-finance/2-income-statements-and-profitability-measures","0f0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/accounting-for-finance/2a-income-statement-comparisons",component:m("/economics/accounting-for-finance/2a-income-statement-comparisons","b5f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/accounting-for-finance/3-balance-sheets",component:m("/economics/accounting-for-finance/3-balance-sheets","4f3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/accounting-for-finance/3a-balance-sheet-comparisons",component:m("/economics/accounting-for-finance/3a-balance-sheet-comparisons","ad4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/accounting-for-finance/4-cash-flow-statements-cash-in-and-cash-out",component:m("/economics/accounting-for-finance/4-cash-flow-statements-cash-in-and-cash-out","047"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/accounting-for-finance/4a-cash-flow-statement-comparisons",component:m("/economics/accounting-for-finance/4a-cash-flow-statement-comparisons","15b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/accounting-for-finance/5-cleaning-up-accounting",component:m("/economics/accounting-for-finance/5-cleaning-up-accounting","381"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/accounting-for-finance/5a-accounting-inconsistency-examples",component:m("/economics/accounting-for-finance/5a-accounting-inconsistency-examples","4e2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/accounting-for-finance/6-accouting-financial-ratios-profitability-measures",component:m("/economics/accounting-for-finance/6-accouting-financial-ratios-profitability-measures","1cc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/accounting-for-finance/6a-ratio-analysis",component:m("/economics/accounting-for-finance/6a-ratio-analysis","ddb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/buy-now-pay-later-bnpl",component:m("/economics/buy-now-pay-later-bnpl","51c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/corporate-finance/",component:m("/economics/corporate-finance/","7b9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/corporate-finance/capital-budgeting",component:m("/economics/corporate-finance/capital-budgeting","b3c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/corporate-finance/corporate-actions",component:m("/economics/corporate-finance/corporate-actions","4b2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/course-investing-zerodha-varsity",component:m("/economics/course-investing-zerodha-varsity","9b1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/finance-investing/",component:m("/economics/finance-investing/","9bd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/finance-investing/asset-classes",component:m("/economics/finance-investing/asset-classes","fa2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/finance-investing/checklist-tips",component:m("/economics/finance-investing/checklist-tips","d66"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/finance-investing/company-analysis",component:m("/economics/finance-investing/company-analysis","125"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/finance-investing/company-management",component:m("/economics/finance-investing/company-management","eeb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/finance-investing/financial-independence-fire",component:m("/economics/finance-investing/financial-independence-fire","91e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/finance-investing/huf-private-trust",component:m("/economics/finance-investing/huf-private-trust","a0f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/finance-investing/indian-company-types",component:m("/economics/finance-investing/indian-company-types","10b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/finance-investing/industry-sectors",component:m("/economics/finance-investing/industry-sectors","fa7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/finance-investing/personal-finance",component:m("/economics/finance-investing/personal-finance","28b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/finance-investing/portfolio-management-services-pms",component:m("/economics/finance-investing/portfolio-management-services-pms","eb7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/finance-investing/portfolios",component:m("/economics/finance-investing/portfolios","eb2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/finance-investing/quotes",component:m("/economics/finance-investing/quotes","5a6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/finance-investing/returns-tax-taxes-itr",component:m("/economics/finance-investing/returns-tax-taxes-itr","7b7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/finance-investing/stocks-equity",component:m("/economics/finance-investing/stocks-equity","916"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/finance-terms",component:m("/economics/finance-terms","d1f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/financial-facts",component:m("/economics/financial-facts","63a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/fintech-nbfc-banking-terms",component:m("/economics/fintech-nbfc-banking-terms","a70"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/government-terms",component:m("/economics/government-terms","993"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/gross-domestic-product-gdp",component:m("/economics/gross-domestic-product-gdp","02e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/inflation-indexes",component:m("/economics/inflation-indexes","c66"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/insurance",component:m("/economics/insurance","4d0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/intro",component:m("/economics/intro","83b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/investment-banking",component:m("/economics/investment-banking","79e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/investment-terms",component:m("/economics/investment-terms","86a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/learning",component:m("/economics/learning","4f5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/market-terms/",component:m("/economics/market-terms/","f78"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/market-terms/fundamental-analysis",component:m("/economics/market-terms/fundamental-analysis","334"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/market-terms/futures-options-trading",component:m("/economics/market-terms/futures-options-trading","ab8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/market-terms/ipo",component:m("/economics/market-terms/ipo","c34"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/market-terms/others",component:m("/economics/market-terms/others","4d6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/market-terms/swing-trading",component:m("/economics/market-terms/swing-trading","e5b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/market-terms/technical-analysis",component:m("/economics/market-terms/technical-analysis","5da"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/market-terms/technical-indicators",component:m("/economics/market-terms/technical-indicators","210"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/market-terms/valuation-metrics",component:m("/economics/market-terms/valuation-metrics","97d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/market-terms/wyckoff-method",component:m("/economics/market-terms/wyckoff-method","52f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mental-models/economics-mental-models",component:m("/economics/mental-models/economics-mental-models","cd1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mental-models/inequality",component:m("/economics/mental-models/inequality","fb0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mental-models/macroeconomics",component:m("/economics/mental-models/macroeconomics","86e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mental-models/marginal-utility-analysis",component:m("/economics/mental-models/marginal-utility-analysis","e61"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mental-models/microeconomics",component:m("/economics/mental-models/microeconomics","aa3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mental-models/rankings",component:m("/economics/mental-models/rankings","b8b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mental-models/recession-shapes-recovery",component:m("/economics/mental-models/recession-shapes-recovery","165"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/monetary-policies",component:m("/economics/monetary-policies","601"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mutual-funds/",component:m("/economics/mutual-funds/","e0a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mutual-funds/debentures-bonds",component:m("/economics/mutual-funds/debentures-bonds","e17"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mutual-funds/debt-mutual-funds",component:m("/economics/mutual-funds/debt-mutual-funds","e04"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mutual-funds/debt-mutual-funds-analysis",component:m("/economics/mutual-funds/debt-mutual-funds-analysis","f39"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mutual-funds/debt-mutual-funds-risks",component:m("/economics/mutual-funds/debt-mutual-funds-risks","5eb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mutual-funds/equity-mutual-funds",component:m("/economics/mutual-funds/equity-mutual-funds","c58"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mutual-funds/fixed-income",component:m("/economics/mutual-funds/fixed-income","85e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mutual-funds/index-investing-etf",component:m("/economics/mutual-funds/index-investing-etf","591"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mutual-funds/mutual-funds-indicators",component:m("/economics/mutual-funds/mutual-funds-indicators","51f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mutual-funds/nifty-indexes-indices",component:m("/economics/mutual-funds/nifty-indexes-indices","0e5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/mutual-funds/others",component:m("/economics/mutual-funds/others","496"),exact:!0,sidebar:"tutorialSidebar"},{path:"/economics/schools-of-economic-thought",component:m("/economics/schools-of-economic-thought","de6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/",component:m("/frontend/","1fc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/frontend-intro/",component:m("/frontend/frontend-intro/","f3a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/frontend-intro/design-system",component:m("/frontend/frontend-intro/design-system","e6b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/frontend-intro/frontend-architecture",component:m("/frontend/frontend-intro/frontend-architecture","856"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/frontend-intro/gestalt-principles",component:m("/frontend/frontend-intro/gestalt-principles","5cb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/frontend-intro/google-crawlers-crawling",component:m("/frontend/frontend-intro/google-crawlers-crawling","90b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/frontend-intro/intro",component:m("/frontend/frontend-intro/intro","4df"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/frontend-intro/jamstack-cms",component:m("/frontend/frontend-intro/jamstack-cms","fd3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/frontend-intro/microfrontend-architecture",component:m("/frontend/frontend-intro/microfrontend-architecture","fd0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/frontend-intro/others",component:m("/frontend/frontend-intro/others","fa3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/frontend-intro/performance",component:m("/frontend/frontend-intro/performance","1d4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/frontend-intro/pwa",component:m("/frontend/frontend-intro/pwa","d55"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/frontend-intro/seo-aso",component:m("/frontend/frontend-intro/seo-aso","66c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/frontend-intro/ui-ux-ixd-design-frontend",component:m("/frontend/frontend-intro/ui-ux-ixd-design-frontend","9d8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/frontend-intro/web-vitals",component:m("/frontend/frontend-intro/web-vitals","926"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/frontend-intro/wordpress",component:m("/frontend/frontend-intro/wordpress","4f5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/html-css/",component:m("/frontend/html-css/","77f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/html-css/component-libraries/",component:m("/frontend/html-css/component-libraries/","6b0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/html-css/component-libraries/components",component:m("/frontend/html-css/component-libraries/components","c33"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/html-css/component-libraries/others",component:m("/frontend/html-css/component-libraries/others","903"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/html-css/css-intro/",component:m("/frontend/html-css/css-intro/","5e0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/html-css/css-intro/centering",component:m("/frontend/html-css/css-intro/centering","e20"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/html-css/css-intro/css-positions",component:m("/frontend/html-css/css-intro/css-positions","ebe"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/html-css/css-intro/css-transitions",component:m("/frontend/html-css/css-intro/css-transitions","d5a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/html-css/css-intro/mastering-css",component:m("/frontend/html-css/css-intro/mastering-css","429"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/html-css/css-intro/others",component:m("/frontend/html-css/css-intro/others","419"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/html-css/html-intro/",component:m("/frontend/html-css/html-intro/","4ff"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/html-css/html-intro/html-entities-attributes",component:m("/frontend/html-css/html-intro/html-entities-attributes","c41"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/html-css/html-intro/tags",component:m("/frontend/html-css/html-intro/tags","84c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/js-javascript/",component:m("/frontend/js-javascript/","643"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/js-javascript/basic",component:m("/frontend/js-javascript/basic","764"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/js-javascript/intro",component:m("/frontend/js-javascript/intro","e70"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/js-javascript/libraries",component:m("/frontend/js-javascript/libraries","336"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/js-javascript/others",component:m("/frontend/js-javascript/others","a4a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/js-javascript/promises",component:m("/frontend/js-javascript/promises","ab9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/js-javascript/questions",component:m("/frontend/js-javascript/questions","8d8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/js-javascript/typescript",component:m("/frontend/js-javascript/typescript","daf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/js-javascript/web-api",component:m("/frontend/js-javascript/web-api","10e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/",component:m("/frontend/others/","a60"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/angularjs/",component:m("/frontend/others/angularjs/","649"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/angularjs/01-intro",component:m("/frontend/others/angularjs/01-intro","a67"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/angularjs/03-modules",component:m("/frontend/others/angularjs/03-modules","660"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/angularjs/06-components",component:m("/frontend/others/angularjs/06-components","ae7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/angularjs/08-metadata",component:m("/frontend/others/angularjs/08-metadata","e76"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/angularjs/09-data-binding",component:m("/frontend/others/angularjs/09-data-binding","91a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/angularjs/10-directives",component:m("/frontend/others/angularjs/10-directives","078"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/angularjs/11-services",component:m("/frontend/others/angularjs/11-services","f07"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/angularjs/12-dependency-injection",component:m("/frontend/others/angularjs/12-dependency-injection","296"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/angularjs/intro",component:m("/frontend/others/angularjs/intro","572"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/angularjs/tour-of-heroes",component:m("/frontend/others/angularjs/tour-of-heroes","a89"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/docusaurus",component:m("/frontend/others/docusaurus","01b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/frontend-frameworks",component:m("/frontend/others/frontend-frameworks","db6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/gatsby",component:m("/frontend/others/gatsby","067"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/jquery",component:m("/frontend/others/jquery","525"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/nestjs/",component:m("/frontend/others/nestjs/","102"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/nestjs/documentation",component:m("/frontend/others/nestjs/documentation","8fe"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/nextjs/",component:m("/frontend/others/nextjs/","1ae"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/nextjs/data-fetching",component:m("/frontend/others/nextjs/data-fetching","4c7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/nextjs/others",component:m("/frontend/others/nextjs/others","2c9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/nodejs/",component:m("/frontend/others/nodejs/","68e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/nodejs/libraries",component:m("/frontend/others/nodejs/libraries","792"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/nodejs/nodejs-frameworks",component:m("/frontend/others/nodejs/nodejs-frameworks","71e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/nodejs/npm-commands",component:m("/frontend/others/nodejs/npm-commands","8e8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/others/static-site-generators",component:m("/frontend/others/static-site-generators","377"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/",component:m("/frontend/react/","3f0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/code-commands-snippets",component:m("/frontend/react/code-commands-snippets","a5f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/components",component:m("/frontend/react/components","3ed"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/course",component:m("/frontend/react/course","018"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/docs",component:m("/frontend/react/docs","781"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/events",component:m("/frontend/react/events","261"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/hooks",component:m("/frontend/react/hooks","5a2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/intro",component:m("/frontend/react/intro","349"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/jsx",component:m("/frontend/react/jsx","be8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/libraries",component:m("/frontend/react/libraries","14f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/mordern-react-with-redux",component:m("/frontend/react/mordern-react-with-redux","eb0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/react-admin-templates",component:m("/frontend/react/react-admin-templates","13a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/react-dom",component:m("/frontend/react/react-dom","998"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/react-native",component:m("/frontend/react/react-native","0a9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/react-router",component:m("/frontend/react/react-router","c11"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/redux",component:m("/frontend/react/redux","eac"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/state",component:m("/frontend/react/state","db7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/frontend/react/tools",component:m("/frontend/react/tools","64f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/",component:m("/knowledge/","fb2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/applied-sciences/",component:m("/knowledge/applied-sciences/","94b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/applied-sciences/chemical-engineering",component:m("/knowledge/applied-sciences/chemical-engineering","eed"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/applied-sciences/civil-engineering",component:m("/knowledge/applied-sciences/civil-engineering","f30"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/applied-sciences/control-engineering",component:m("/knowledge/applied-sciences/control-engineering","c63"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/applied-sciences/crash-course-engineering",component:m("/knowledge/applied-sciences/crash-course-engineering","c83"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/applied-sciences/electrical-engineering",component:m("/knowledge/applied-sciences/electrical-engineering","110"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/applied-sciences/embedded-systems-electronics",component:m("/knowledge/applied-sciences/embedded-systems-electronics","f35"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/applied-sciences/hvac-systems",component:m("/knowledge/applied-sciences/hvac-systems","6c4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/applied-sciences/mechanical-engineering",component:m("/knowledge/applied-sciences/mechanical-engineering","114"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/applied-sciences/others-power-energy",component:m("/knowledge/applied-sciences/others-power-energy","2fb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/",component:m("/knowledge/biology/","c2c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/alternative-medicine",component:m("/knowledge/biology/alternative-medicine","a42"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/digestive-system",component:m("/knowledge/biology/digestive-system","48e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/diseases-tests",component:m("/knowledge/biology/diseases-tests","d0b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/exercise-stretching/",component:m("/knowledge/biology/exercise-stretching/","c92"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/exercise-stretching/gym",component:m("/knowledge/biology/exercise-stretching/gym","4f5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/exercise-stretching/gym-nutrition",component:m("/knowledge/biology/exercise-stretching/gym-nutrition","cb5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/exercise-stretching/gym-routine",component:m("/knowledge/biology/exercise-stretching/gym-routine","b92"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/exercise-stretching/home-exercise-routine",component:m("/knowledge/biology/exercise-stretching/home-exercise-routine","414"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/exercise-stretching/home-gym",component:m("/knowledge/biology/exercise-stretching/home-gym","36c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/exercise-stretching/intro",component:m("/knowledge/biology/exercise-stretching/intro","9e5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/genetics",component:m("/knowledge/biology/genetics","2fe"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/human-skeleton",component:m("/knowledge/biology/human-skeleton","b56"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/intro",component:m("/knowledge/biology/intro","8ef"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/mbbs-medicine-medical-health",component:m("/knowledge/biology/mbbs-medicine-medical-health","054"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/muscles",component:m("/knowledge/biology/muscles","6d4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/nerves-system",component:m("/knowledge/biology/nerves-system","e4b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/nutrition/",component:m("/knowledge/biology/nutrition/","296"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/nutrition/chart",component:m("/knowledge/biology/nutrition/chart","fa8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/nutrition/daily-requirements",component:m("/knowledge/biology/nutrition/daily-requirements","fcb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/nutrition/diet",component:m("/knowledge/biology/nutrition/diet","083"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/nutrition/ecology",component:m("/knowledge/biology/nutrition/ecology","bc3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/nutrition/essentiality",component:m("/knowledge/biology/nutrition/essentiality","83b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/nutrition/fatigue",component:m("/knowledge/biology/nutrition/fatigue","f9e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/nutrition/food",component:m("/knowledge/biology/nutrition/food","64c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/nutrition/honey",component:m("/knowledge/biology/nutrition/honey","5ca"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/nutrition/intro",component:m("/knowledge/biology/nutrition/intro","70a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/nutrition/plants-gardening",component:m("/knowledge/biology/nutrition/plants-gardening","8a5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/nutrition/pulses-daal-lentils",component:m("/knowledge/biology/nutrition/pulses-daal-lentils","30c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/nutrition/recipe",component:m("/knowledge/biology/nutrition/recipe","784"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/omics",component:m("/knowledge/biology/omics","3a7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/organ-systems",component:m("/knowledge/biology/organ-systems","40c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/others",component:m("/knowledge/biology/others","a73"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/biology/pregnancy-baby",component:m("/knowledge/biology/pregnancy-baby","95e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/games/",component:m("/knowledge/games/","de2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/games/chess",component:m("/knowledge/games/chess","a85"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/games/couple-activities",component:m("/knowledge/games/couple-activities","9ab"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/games/family-games-gifts",component:m("/knowledge/games/family-games-gifts","275"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/games/marathon-running",component:m("/knowledge/games/marathon-running","da3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/games/others",component:m("/knowledge/games/others","43f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/games/rubix-rubics-cube",component:m("/knowledge/games/rubix-rubics-cube","6bb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/games/skiing-sking",component:m("/knowledge/games/skiing-sking","430"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/games/sudoku-techniques",component:m("/knowledge/games/sudoku-techniques","a79"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/games/swimming",component:m("/knowledge/games/swimming","c27"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/games/touch-typing",component:m("/knowledge/games/touch-typing","0b5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/general/",component:m("/knowledge/general/","f36"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/general/important-dates-timelines",component:m("/knowledge/general/important-dates-timelines","70b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/general/intro",component:m("/knowledge/general/intro","bb7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/general/knowledge-of-humanity",component:m("/knowledge/general/knowledge-of-humanity","fa8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/general/mental-models",component:m("/knowledge/general/mental-models","007"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/general/others",component:m("/knowledge/general/others","506"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/general/outline-of-knowledge",component:m("/knowledge/general/outline-of-knowledge","d99"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/general/science",component:m("/knowledge/general/science","9f1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/geography/",component:m("/knowledge/geography/","a9c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/geography/continents",component:m("/knowledge/geography/continents","a14"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/geography/countries",component:m("/knowledge/geography/countries","ef0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/geography/home-house-building",component:m("/knowledge/geography/home-house-building","f55"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/geography/india",component:m("/knowledge/geography/india","4e9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/geography/indian-states-and-uts",component:m("/knowledge/geography/indian-states-and-uts","740"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/geography/living",component:m("/knowledge/geography/living","908"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/geography/new-home-place-house",component:m("/knowledge/geography/new-home-place-house","49f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/geography/others",component:m("/knowledge/geography/others","b51"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/geography/rivers",component:m("/knowledge/geography/rivers","f7f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/geography/wildlife",component:m("/knowledge/geography/wildlife","767"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/history/",component:m("/knowledge/history/","2a8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/history/crash-course-history-of-science",component:m("/knowledge/history/crash-course-history-of-science","a1e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/history/crash-course-world-history",component:m("/knowledge/history/crash-course-world-history","bfe"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/history/histomap",component:m("/knowledge/history/histomap","5b0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/history/human-history-anthropology",component:m("/knowledge/history/human-history-anthropology","e0b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/history/indian-history-timeline",component:m("/knowledge/history/indian-history-timeline","dce"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/history/others",component:m("/knowledge/history/others","1e3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/history/religion",component:m("/knowledge/history/religion","144"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/language/",component:m("/knowledge/language/","b48"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/language/figures-of-speech",component:m("/knowledge/language/figures-of-speech","bb5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/language/general",component:m("/knowledge/language/general","fe1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/language/grammer-vocabulary",component:m("/knowledge/language/grammer-vocabulary","fc0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/language/languages-others",component:m("/knowledge/language/languages-others","7d2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/language/linguistics",component:m("/knowledge/language/linguistics","d9c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/language/mistakes",component:m("/knowledge/language/mistakes","71f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/language/parts-of-speech",component:m("/knowledge/language/parts-of-speech","be5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/language/spanish",component:m("/knowledge/language/spanish","d40"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/law/",component:m("/knowledge/law/","b3a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/law/constitution-of-india/constitution",component:m("/knowledge/law/constitution-of-india/constitution","127"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/law/constitution-of-india/others",component:m("/knowledge/law/constitution-of-india/others","96f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/law/constitution-of-india/schedules",component:m("/knowledge/law/constitution-of-india/schedules","d72"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/law/judgements-2023",component:m("/knowledge/law/judgements-2023","ea8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/law/laws",component:m("/knowledge/law/laws","f9e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/law/lsat",component:m("/knowledge/law/lsat","253"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/law/mcat",component:m("/knowledge/law/mcat","3cb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/law/others",component:m("/knowledge/law/others","ced"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/links",component:m("/knowledge/links","52a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/others/",component:m("/knowledge/others/","394"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/others/",component:m("/knowledge/others/","8a6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/others/chemistry-outline",component:m("/knowledge/others/chemistry-outline","cac"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/others/climate-change",component:m("/knowledge/others/climate-change","d28"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/others/clothes-textiles",component:m("/knowledge/others/clothes-textiles","a34"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/others/education-phd",component:m("/knowledge/others/education-phd","cae"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/others/international-relations-ir",component:m("/knowledge/others/international-relations-ir","327"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/others/mythology",component:m("/knowledge/others/mythology","614"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/others/news-problems",component:m("/knowledge/others/news-problems","748"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/others/philosophy",component:m("/knowledge/others/philosophy","369"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/others/politics/",component:m("/knowledge/others/politics/","4fa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/others/politics/indian-polity",component:m("/knowledge/others/politics/indian-polity","fc0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/others/politics/others",component:m("/knowledge/others/politics/others","f73"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/others/politics/types-of-governments",component:m("/knowledge/others/politics/types-of-governments","7b6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/physics/",component:m("/knowledge/physics/","cc5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/physics/astronomy",component:m("/knowledge/physics/astronomy","3a2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/physics/crash-course-physics",component:m("/knowledge/physics/crash-course-physics","e57"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/physics/intro",component:m("/knowledge/physics/intro","a6a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/physics/khan-academy-physics",component:m("/knowledge/physics/khan-academy-physics","0fb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/physics/others",component:m("/knowledge/physics/others","7ec"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/quotes-proverbs/",component:m("/knowledge/quotes-proverbs/","b9c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/quotes-proverbs/business-management",component:m("/knowledge/quotes-proverbs/business-management","f60"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/quotes-proverbs/coding",component:m("/knowledge/quotes-proverbs/coding","3f0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/quotes-proverbs/funny",component:m("/knowledge/quotes-proverbs/funny","7c3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/quotes-proverbs/habits",component:m("/knowledge/quotes-proverbs/habits","30c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/quotes-proverbs/hindi",component:m("/knowledge/quotes-proverbs/hindi","f79"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/quotes-proverbs/life",component:m("/knowledge/quotes-proverbs/life","74b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/quotes-proverbs/motivation",component:m("/knowledge/quotes-proverbs/motivation","c0f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/quotes-proverbs/my-quotes",component:m("/knowledge/quotes-proverbs/my-quotes","7b6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/quotes-proverbs/poems",component:m("/knowledge/quotes-proverbs/poems","ebf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/quotes-proverbs/science",component:m("/knowledge/quotes-proverbs/science","285"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/quotes-proverbs/stories",component:m("/knowledge/quotes-proverbs/stories","230"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/quotes-proverbs/tatoos-quotes",component:m("/knowledge/quotes-proverbs/tatoos-quotes","33b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/quotes-proverbs/tips",component:m("/knowledge/quotes-proverbs/tips","518"),exact:!0,sidebar:"tutorialSidebar"},{path:"/knowledge/youtube-podcasts-magazine-apps",component:m("/knowledge/youtube-podcasts-magazine-apps","ce6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/",component:m("/languages/","527"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/c++/",component:m("/languages/c++/","801"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/c++/constructor",component:m("/languages/c++/constructor","44d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/c++/frameworks",component:m("/languages/c++/frameworks","3bb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/c++/friend-function",component:m("/languages/c++/friend-function","dc3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/c++/header-files",component:m("/languages/c++/header-files","243"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/c++/intro",component:m("/languages/c++/intro","749"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/c++/io",component:m("/languages/c++/io","7c1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/c++/others",component:m("/languages/c++/others","348"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/c++/printf",component:m("/languages/c++/printf","a4b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/c++/stl-containers",component:m("/languages/c++/stl-containers","6ee"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/c++/stl-iterators-algorithms",component:m("/languages/c++/stl-iterators-algorithms","d1e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/c++/storage-classes",component:m("/languages/c++/storage-classes","4f0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/c++/tc-pl4",component:m("/languages/c++/tc-pl4","19a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/c++/templates",component:m("/languages/c++/templates","d43"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/",component:m("/languages/frameworks/","1c6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/android/",component:m("/languages/frameworks/android/","b77"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/android/jetpack",component:m("/languages/frameworks/android/jetpack","22e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/android/kotlin",component:m("/languages/frameworks/android/kotlin","374"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/android/questions",component:m("/languages/frameworks/android/questions","d9b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/android/service",component:m("/languages/frameworks/android/service","4e7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/android/testing",component:m("/languages/frameworks/android/testing","dac"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/android/tools",component:m("/languages/frameworks/android/tools","826"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/comparison",component:m("/languages/frameworks/comparison","be4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/dash",component:m("/languages/frameworks/dash","c52"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/flutter",component:m("/languages/frameworks/flutter","927"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/intro",component:m("/languages/frameworks/intro","4ec"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/ios",component:m("/languages/frameworks/ios","431"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/masonite",component:m("/languages/frameworks/masonite","458"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/others",component:m("/languages/frameworks/others","7d9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/server-driven-mobile-uis",component:m("/languages/frameworks/server-driven-mobile-uis","86f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/frameworks/stacks",component:m("/languages/frameworks/stacks","169"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/golang/",component:m("/languages/golang/","98f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/golang/concepts",component:m("/languages/golang/concepts","788"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/golang/data-types",component:m("/languages/golang/data-types","33e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/golang/examples",component:m("/languages/golang/examples","aaf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/golang/hello-world",component:m("/languages/golang/hello-world","6c3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/golang/interview-questions",component:m("/languages/golang/interview-questions","693"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/golang/intro",component:m("/languages/golang/intro","a0e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/golang/syntax",component:m("/languages/golang/syntax","972"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/golang/testing",component:m("/languages/golang/testing","8f5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/golang/tools",component:m("/languages/golang/tools","e0e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/",component:m("/languages/java/","3b0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/collections",component:m("/languages/java/collections","58c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/comparable-interface",component:m("/languages/java/comparable-interface","bb9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/concurrency",component:m("/languages/java/concurrency","bfa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/defining-constants",component:m("/languages/java/defining-constants","edb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/frameworks",component:m("/languages/java/frameworks","3bd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/hash-collection",component:m("/languages/java/hash-collection","add"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/intro",component:m("/languages/java/intro","4d9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/jmx",component:m("/languages/java/jmx","f33"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/jvm-architecture",component:m("/languages/java/jvm-architecture","c95"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/knowledge",component:m("/languages/java/knowledge","f79"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/lambda-expressions",component:m("/languages/java/lambda-expressions","c2d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/libraries",component:m("/languages/java/libraries","c68"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/others",component:m("/languages/java/others","124"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/questions",component:m("/languages/java/questions","9e4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/reflection",component:m("/languages/java/reflection","313"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/spring",component:m("/languages/java/spring","43b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/template-fastio",component:m("/languages/java/template-fastio","eb4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/java/threading-in-javafx",component:m("/languages/java/threading-in-javafx","8a0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/",component:m("/languages/others/","1ef"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/erlang",component:m("/languages/others/erlang","dfc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/general",component:m("/languages/others/general","716"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/javascript-templating",component:m("/languages/others/javascript-templating","867"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/json",component:m("/languages/others/json","2e2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/markdown",component:m("/languages/others/markdown","155"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/other-languages",component:m("/languages/others/other-languages","37c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/r-language",component:m("/languages/others/r-language","40d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/regular-expressions-regex",component:m("/languages/others/regular-expressions-regex","02d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/ruby",component:m("/languages/others/ruby","5dd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/rust",component:m("/languages/others/rust","81c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/scala",component:m("/languages/others/scala","87a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/swift",component:m("/languages/others/swift","4f8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/tla-plus",component:m("/languages/others/tla-plus","5bb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/toml",component:m("/languages/others/toml","e62"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/web-assembly",component:m("/languages/others/web-assembly","ce8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/others/yaml",component:m("/languages/others/yaml","574"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/",component:m("/languages/php/","6f5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/codeigniter/",component:m("/languages/php/codeigniter/","e31"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/codeigniter/application-architecture",component:m("/languages/php/codeigniter/application-architecture","997"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/codeigniter/basic-concepts",component:m("/languages/php/codeigniter/basic-concepts","eab"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/codeigniter/commands",component:m("/languages/php/codeigniter/commands","543"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/codeigniter/configurations",component:m("/languages/php/codeigniter/configurations","110"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/codeigniter/helpers-functions",component:m("/languages/php/codeigniter/helpers-functions","901"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/codeigniter/http",component:m("/languages/php/codeigniter/http","4fd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/codeigniter/intro",component:m("/languages/php/codeigniter/intro","877"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/codeigniter/mvc",component:m("/languages/php/codeigniter/mvc","93e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/codeigniter/others",component:m("/languages/php/codeigniter/others","656"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/documentation",component:m("/languages/php/documentation","abe"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/example",component:m("/languages/php/example","1ad"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/frameworks",component:m("/languages/php/frameworks","d4c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/intro",component:m("/languages/php/intro","d4d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/operators",component:m("/languages/php/operators","ec8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/others",component:m("/languages/php/others","58d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/syntax",component:m("/languages/php/syntax","723"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/php/web-concepts",component:m("/languages/php/web-concepts","d50"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/",component:m("/languages/sql/","e4f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/concepts",component:m("/languages/sql/concepts","884"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/cte-subquery",component:m("/languages/sql/cte-subquery","1fc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/databricks-sql",component:m("/languages/sql/databricks-sql","dae"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/databricks-sql-functions",component:m("/languages/sql/databricks-sql-functions","472"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/dcl-data-control-language",component:m("/languages/sql/dcl-data-control-language","a75"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/ddl-data-definition-language/",component:m("/languages/sql/ddl-data-definition-language/","da7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/ddl-data-definition-language/create-table",component:m("/languages/sql/ddl-data-definition-language/create-table","35c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/ddl-data-definition-language/truncate-delete",component:m("/languages/sql/ddl-data-definition-language/truncate-delete","2b1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/dml-data-manipulation-language",component:m("/languages/sql/dml-data-manipulation-language","516"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/dql-data-query-language/",component:m("/languages/sql/dql-data-query-language/","3b2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/dql-data-query-language/aggregation-queries",component:m("/languages/sql/dql-data-query-language/aggregation-queries","098"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/dql-data-query-language/analytical-queries",component:m("/languages/sql/dql-data-query-language/analytical-queries","e56"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/dql-data-query-language/window-functions",component:m("/languages/sql/dql-data-query-language/window-functions","ef7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/functions",component:m("/languages/sql/functions","898"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/intro",component:m("/languages/sql/intro","e78"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/join-algorithms",component:m("/languages/sql/join-algorithms","20d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/keys",component:m("/languages/sql/keys","a1d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/operators-wildcards",component:m("/languages/sql/operators-wildcards","9bd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/others",component:m("/languages/sql/others","9ca"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/partiql",component:m("/languages/sql/partiql","9c2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/postgres-commands",component:m("/languages/sql/postgres-commands","d96"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/sql-commands",component:m("/languages/sql/sql-commands","97b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/sql-data-types",component:m("/languages/sql/sql-data-types","b82"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/sql-examples-queries",component:m("/languages/sql/sql-examples-queries","d60"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/sql-joins",component:m("/languages/sql/sql-joins","030"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/sql-views",component:m("/languages/sql/sql-views","04e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/stored-procedure",component:m("/languages/sql/stored-procedure","8b6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/languages/sql/types",component:m("/languages/sql/types","fc1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/",component:m("/management/","d7c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/books-blinkist-management",component:m("/management/books-blinkist-management","180"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/business/",component:m("/management/business/","7fb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/business/business-case-studies",component:m("/management/business/business-case-studies","b42"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/business/business-terms",component:m("/management/business/business-terms","c62"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/business/indian-market",component:m("/management/business/indian-market","ec5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/business/service-based-model",component:m("/management/business/service-based-model","923"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/community-building",component:m("/management/community-building","68b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/customer-engagement-cx",component:m("/management/customer-engagement-cx","039"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/decision-making/",component:m("/management/decision-making/","57f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/decision-making/ethics",component:m("/management/decision-making/ethics","4e7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/growth-hacking",component:m("/management/growth-hacking","d65"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/growth-hacking-metrics",component:m("/management/growth-hacking-metrics","4db"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/jobs/",component:m("/management/jobs/","770"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/jobs/career",component:m("/management/jobs/career","321"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/jobs/companies",component:m("/management/jobs/companies","3a4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/jobs/finance-equity-stocks-esops-questions",component:m("/management/jobs/finance-equity-stocks-esops-questions","817"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/jobs/good-profiles",component:m("/management/jobs/good-profiles","6ef"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/jobs/hiring-plan-hr-recruiting",component:m("/management/jobs/hiring-plan-hr-recruiting","04e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/jobs/questions-to-company",component:m("/management/jobs/questions-to-company","775"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/jobs/resume-keywords-pointers",component:m("/management/jobs/resume-keywords-pointers","a85"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/marketing",component:m("/management/marketing","2b0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/mental-models",component:m("/management/mental-models","407"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/others",component:m("/management/others","d03"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/people-management/",component:m("/management/people-management/","71f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/people-management/culture",component:m("/management/people-management/culture","66e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/people-management/leadership-interview-questions",component:m("/management/people-management/leadership-interview-questions","8ac"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/people-management/mentoring-teaching-coaching-leading-leader-leadership",component:m("/management/people-management/mentoring-teaching-coaching-leading-leader-leadership","eba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/people-management/onboarding",component:m("/management/people-management/onboarding","8cb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/people-management/people-team-management",component:m("/management/people-management/people-team-management","d68"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/people-management/remote-working-teams",component:m("/management/people-management/remote-working-teams","356"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/people-management/types-of-leadership",component:m("/management/people-management/types-of-leadership","67b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/product-management/",component:m("/management/product-management/","7a4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/product-management/behavioral-design-economics",component:m("/management/product-management/behavioral-design-economics","19b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/product-management/coursera-pm",component:m("/management/product-management/coursera-pm","061"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/product-management/intro",component:m("/management/product-management/intro","ec1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/product-management/kano-model",component:m("/management/product-management/kano-model","a18"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/product-management/product-book-summaries",component:m("/management/product-management/product-book-summaries","c32"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/product-management/product-design-questions",component:m("/management/product-management/product-design-questions","b71"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/product-management/product-design-stages",component:m("/management/product-management/product-design-stages","e9e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/product-management/product-manager-role",component:m("/management/product-management/product-manager-role","b5f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/product-management/product-market-fit-pmf",component:m("/management/product-management/product-market-fit-pmf","349"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/product-management/product-terms-saas",component:m("/management/product-management/product-terms-saas","e9c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/product-management/retail-offline-sales",component:m("/management/product-management/retail-offline-sales","298"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/project-management/",component:m("/management/project-management/","15f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/project-management/agile",component:m("/management/project-management/agile","b50"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/project-management/atlas",component:m("/management/project-management/atlas","6f5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/project-management/goals-setting",component:m("/management/project-management/goals-setting","e0c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/project-management/intro",component:m("/management/project-management/intro","fc2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/project-management/jira",component:m("/management/project-management/jira","c25"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/project-management/others",component:m("/management/project-management/others","68e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/project-management/pert-and-cpm",component:m("/management/project-management/pert-and-cpm","fc2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/project-management/pm101",component:m("/management/project-management/pm101","a57"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/project-management/program-management",component:m("/management/project-management/program-management","35e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/project-management/project-contraints",component:m("/management/project-management/project-contraints","f78"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/project-management/scrum-meetings",component:m("/management/project-management/scrum-meetings","b5d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/project-management/sdlc-methodologies",component:m("/management/project-management/sdlc-methodologies","646"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/project-management/template",component:m("/management/project-management/template","619"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/project-product-business-tools-saas",component:m("/management/project-product-business-tools-saas","539"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/roles/data",component:m("/management/roles/data","037"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/roles/engineering-manager",component:m("/management/roles/engineering-manager","ba2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/roles/others",component:m("/management/roles/others","6f2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/roles/principle-software-engineer",component:m("/management/roles/principle-software-engineer","d6e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/sales",component:m("/management/sales","995"),exact:!0,sidebar:"tutorialSidebar"},{path:"/management/six-sigma",component:m("/management/six-sigma","634"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/",component:m("/mathematics/","f72"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/algebra/",component:m("/mathematics/algebra/","0d6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/algebra/cheatsheet",component:m("/mathematics/algebra/cheatsheet","4bb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/algebra/complex-numbers",component:m("/mathematics/algebra/complex-numbers","b70"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/algebra/exponential-and-logarithms",component:m("/mathematics/algebra/exponential-and-logarithms","173"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/algebra/functions",component:m("/mathematics/algebra/functions","0f9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/algebra/intro",component:m("/mathematics/algebra/intro","13c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/algebra/others",component:m("/mathematics/algebra/others","9d2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/algebra/root",component:m("/mathematics/algebra/root","a62"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/algebra/series",component:m("/mathematics/algebra/series","1fb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/algebra/sets",component:m("/mathematics/algebra/sets","40d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/aptitude/",component:m("/mathematics/aptitude/","17b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/aptitude/chinese-remainder-theorem",component:m("/mathematics/aptitude/chinese-remainder-theorem","05b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/aptitude/cube-cutting",component:m("/mathematics/aptitude/cube-cutting","8b3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/aptitude/distance-speed-and-time",component:m("/mathematics/aptitude/distance-speed-and-time","1a9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/calculus/",component:m("/mathematics/calculus/","80e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/calculus/essence-of-calculus-3blue1brown",component:m("/mathematics/calculus/essence-of-calculus-3blue1brown","27c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/calculus/functions",component:m("/mathematics/calculus/functions","ede"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/calculus/gradient",component:m("/mathematics/calculus/gradient","ae6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/calculus/intro",component:m("/mathematics/calculus/intro","4b7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/calculus/others",component:m("/mathematics/calculus/others","55b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/calculus/precalculus-intro",component:m("/mathematics/calculus/precalculus-intro","d4c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/calculus/product-rule-for-derivatives",component:m("/mathematics/calculus/product-rule-for-derivatives","969"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/calculus/quotient-rule",component:m("/mathematics/calculus/quotient-rule","9ec"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/calculus/tangent-line-and-the-derivative",component:m("/mathematics/calculus/tangent-line-and-the-derivative","2cb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/combinatorics/",component:m("/mathematics/combinatorics/","4a6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/combinatorics/birthday-paradox",component:m("/mathematics/combinatorics/birthday-paradox","7ac"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/combinatorics/conditional-probability",component:m("/mathematics/combinatorics/conditional-probability","468"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/combinatorics/inclusion-exclusion-principle",component:m("/mathematics/combinatorics/inclusion-exclusion-principle","f4e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/combinatorics/intro",component:m("/mathematics/combinatorics/intro","317"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/combinatorics/permutation-and-combination",component:m("/mathematics/combinatorics/permutation-and-combination","2a2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/combinatorics/pigeonhole-principle",component:m("/mathematics/combinatorics/pigeonhole-principle","48f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/",component:m("/mathematics/general/","fe2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/ackermann-function",component:m("/mathematics/general/ackermann-function","877"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/advanced-topics",component:m("/mathematics/general/advanced-topics","52f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/conjecture",component:m("/mathematics/general/conjecture","879"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/discrete-mathematics",component:m("/mathematics/general/discrete-mathematics","f0c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/fermat-last-theorem",component:m("/mathematics/general/fermat-last-theorem","86d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/fermat-little-theorem",component:m("/mathematics/general/fermat-little-theorem","a23"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/gcd-lcm",component:m("/mathematics/general/gcd-lcm","5e5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/godel-incompleteness-theorem",component:m("/mathematics/general/godel-incompleteness-theorem","f2c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/golden-ratio-phi",component:m("/mathematics/general/golden-ratio-phi","4a1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/greek-letters-latin",component:m("/mathematics/general/greek-letters-latin","362"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/handshaking-lemma",component:m("/mathematics/general/handshaking-lemma","a82"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/logic",component:m("/mathematics/general/logic","059"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/numbers",component:m("/mathematics/general/numbers","4ab"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/others",component:m("/mathematics/general/others","abc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/pie",component:m("/mathematics/general/pie","c96"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/general/properties",component:m("/mathematics/general/properties","435"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/geometry/",component:m("/mathematics/geometry/","874"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/geometry/analytic-geometry",component:m("/mathematics/geometry/analytic-geometry","f1c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/geometry/circles",component:m("/mathematics/geometry/circles","1fc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/geometry/congruence",component:m("/mathematics/geometry/congruence","703"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/geometry/geometry-foundations",component:m("/mathematics/geometry/geometry-foundations","aee"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/geometry/others",component:m("/mathematics/geometry/others","c75"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/geometry/right-triangles-and-geometry",component:m("/mathematics/geometry/right-triangles-and-geometry","1f9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/geometry/similarity",component:m("/mathematics/geometry/similarity","3c0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/geometry/solid-geometry",component:m("/mathematics/geometry/solid-geometry","0c4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/geometry/transformations",component:m("/mathematics/geometry/transformations","0a5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/linear-algebra/",component:m("/mathematics/linear-algebra/","bf7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/linear-algebra/3blue1brown",component:m("/mathematics/linear-algebra/3blue1brown","602"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/linear-algebra/alternate-coordinate-systems-bases",component:m("/mathematics/linear-algebra/alternate-coordinate-systems-bases","b46"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/linear-algebra/cheatsheet",component:m("/mathematics/linear-algebra/cheatsheet","70d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/linear-algebra/matrix-transformations",component:m("/mathematics/linear-algebra/matrix-transformations","131"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/linear-algebra/others",component:m("/mathematics/linear-algebra/others","2db"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/linear-algebra/vectors-and-spaces",component:m("/mathematics/linear-algebra/vectors-and-spaces","249"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/",component:m("/mathematics/probability/","3de"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/365-ds-probability",component:m("/mathematics/probability/365-ds-probability","cc7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/binomial-random-variables",component:m("/mathematics/probability/binomial-random-variables","bc5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/central-limit-theorem",component:m("/mathematics/probability/central-limit-theorem","381"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/cheatsheet",component:m("/mathematics/probability/cheatsheet","47a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro",component:m("/mathematics/probability/intro","338"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/",component:m("/mathematics/probability/intro-to-probability/","01f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/1.-probability-models-and-axioms",component:m("/mathematics/probability/intro-to-probability/1.-probability-models-and-axioms","b81"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/1.1-set-sequences-limits-and-series-un-countable-sets",component:m("/mathematics/probability/intro-to-probability/1.1-set-sequences-limits-and-series-un-countable-sets","7a3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/10-conditioning-on-a-random-variable-independence-bayes-rule",component:m("/mathematics/probability/intro-to-probability/10-conditioning-on-a-random-variable-independence-bayes-rule","bdd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/11.-derived-distributions",component:m("/mathematics/probability/intro-to-probability/11.-derived-distributions","993"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/12.-sums-of-independent-rv-covariance-and-correlation",component:m("/mathematics/probability/intro-to-probability/12.-sums-of-independent-rv-covariance-and-correlation","61b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/13.-conditional-expectation-and-variance-revisited",component:m("/mathematics/probability/intro-to-probability/13.-conditional-expectation-and-variance-revisited","11f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/14.-intro-to-bayesian-inference",component:m("/mathematics/probability/intro-to-probability/14.-intro-to-bayesian-inference","9d5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/2.-conditioning-and-independence",component:m("/mathematics/probability/intro-to-probability/2.-conditioning-and-independence","61c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/3.-independence",component:m("/mathematics/probability/intro-to-probability/3.-independence","425"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/4.-counting",component:m("/mathematics/probability/intro-to-probability/4.-counting","0b6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/5.-probability-mass-functions-and-expectations",component:m("/mathematics/probability/intro-to-probability/5.-probability-mass-functions-and-expectations","bf9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/6-variance-conditioning-of-an-event-multiple-rv",component:m("/mathematics/probability/intro-to-probability/6-variance-conditioning-of-an-event-multiple-rv","0eb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/7-conditioning-on-a-rv-independence-of-rv",component:m("/mathematics/probability/intro-to-probability/7-conditioning-on-a-rv-independence-of-rv","f86"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/8.-probability-density-functions",component:m("/mathematics/probability/intro-to-probability/8.-probability-density-functions","a20"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/9.-conditioning-on-an-event-multiple-continuous-rv",component:m("/mathematics/probability/intro-to-probability/9.-conditioning-on-an-event-multiple-continuous-rv","ee6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/additional-theoretical-material",component:m("/mathematics/probability/intro-to-probability/additional-theoretical-material","3c2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/intro-syllabus",component:m("/mathematics/probability/intro-to-probability/intro-syllabus","f87"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/unit-1-solved-problems",component:m("/mathematics/probability/intro-to-probability/unit-1-solved-problems","5b7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/unit-2-solved-problems",component:m("/mathematics/probability/intro-to-probability/unit-2-solved-problems","c62"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/intro-to-probability/unit-3-solved-problems",component:m("/mathematics/probability/intro-to-probability/unit-3-solved-problems","c58"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/monte-carlo-simulation",component:m("/mathematics/probability/monte-carlo-simulation","61f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/normal-distributions",component:m("/mathematics/probability/normal-distributions","2ae"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/others",component:m("/mathematics/probability/others","cde"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/probability-distribution",component:m("/mathematics/probability/probability-distribution","e61"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/probability/random-variables",component:m("/mathematics/probability/random-variables","739"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/",component:m("/mathematics/statistics/","fea"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/bivariate-analysis",component:m("/mathematics/statistics/bivariate-analysis","cca"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/confidence-intervals",component:m("/mathematics/statistics/confidence-intervals","c88"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/correlation-and-covariance",component:m("/mathematics/statistics/correlation-and-covariance","41d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/crash-course-statistics",component:m("/mathematics/statistics/crash-course-statistics","fa7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/crosstab",component:m("/mathematics/statistics/crosstab","a8d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/descriptive-statistics",component:m("/mathematics/statistics/descriptive-statistics","a51"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/discriminant-analysis",component:m("/mathematics/statistics/discriminant-analysis","aff"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/estimation-statistics",component:m("/mathematics/statistics/estimation-statistics","809"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/glossary",component:m("/mathematics/statistics/glossary","efb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/hypothesis-testing",component:m("/mathematics/statistics/hypothesis-testing","256"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/inferential-statistics",component:m("/mathematics/statistics/inferential-statistics","bfd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/intro",component:m("/mathematics/statistics/intro","53c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/nonparametric-statistics",component:m("/mathematics/statistics/nonparametric-statistics","183"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/other-statistics",component:m("/mathematics/statistics/other-statistics","551"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/percentiles",component:m("/mathematics/statistics/percentiles","c17"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/ranking",component:m("/mathematics/statistics/ranking","b47"),exact:!0,sidebar:"tutorialSidebar"},{path:"/mathematics/statistics/sampling",component:m("/mathematics/statistics/sampling","75f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/",component:m("/networking/","d04"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/",component:m("/networking/mqtt/","ba3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/client-broker-and-connection-establishment",component:m("/networking/mqtt/client-broker-and-connection-establishment","028"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/intro",component:m("/networking/mqtt/intro","3fb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/keep-alive-and-client-take-over",component:m("/networking/mqtt/keep-alive-and-client-take-over","de2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/last-will-and-testament",component:m("/networking/mqtt/last-will-and-testament","30d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/libraries",component:m("/networking/mqtt/libraries","5d6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/messages",component:m("/networking/mqtt/messages","692"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/mqtt-5.0",component:m("/networking/mqtt/mqtt-5.0","4b8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/mqtt-over-websockets",component:m("/networking/mqtt/mqtt-over-websockets","b14"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/mqtt-sn",component:m("/networking/mqtt/mqtt-sn","ef1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/mqtt-vs-http",component:m("/networking/mqtt/mqtt-vs-http","005"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/paho-client",component:m("/networking/mqtt/paho-client","50f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/persistent-session-and-queuing-messages",component:m("/networking/mqtt/persistent-session-and-queuing-messages","32e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/publish-subscribe-and-unsubscribe",component:m("/networking/mqtt/publish-subscribe-and-unsubscribe","99e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/publish-subscribe-pattern",component:m("/networking/mqtt/publish-subscribe-pattern","ad9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/qos-levels",component:m("/networking/mqtt/qos-levels","efd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/retained-messages",component:m("/networking/mqtt/retained-messages","f01"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/scaling",component:m("/networking/mqtt/scaling","f86"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/security",component:m("/networking/mqtt/security","f3f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/mqtt/topics-and-best-practices",component:m("/networking/mqtt/topics-and-best-practices","7a9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/",component:m("/networking/networking-concepts/","459"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/addressing-methods-cast-protocols",component:m("/networking/networking-concepts/addressing-methods-cast-protocols","f41"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/book-computer-networks",component:m("/networking/networking-concepts/book-computer-networks","700"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/cidr",component:m("/networking/networking-concepts/cidr","e50"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/data-center-networking",component:m("/networking/networking-concepts/data-center-networking","664"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/forward-error-correction",component:m("/networking/networking-concepts/forward-error-correction","cb0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/intro",component:m("/networking/networking-concepts/intro","abd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/ip",component:m("/networking/networking-concepts/ip","91b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/network-sockets-ports",component:m("/networking/networking-concepts/network-sockets-ports","f3f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/networking-fabric",component:m("/networking/networking-concepts/networking-fabric","001"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/osi-layers",component:m("/networking/networking-concepts/osi-layers","70e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/others",component:m("/networking/networking-concepts/others","275"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/peer-to-peer",component:m("/networking/networking-concepts/peer-to-peer","c7a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/questions",component:m("/networking/networking-concepts/questions","cbf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/routing",component:m("/networking/networking-concepts/routing","293"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/sockets",component:m("/networking/networking-concepts/sockets","9c2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/networking-concepts/tcp-ip",component:m("/networking/networking-concepts/tcp-ip","02f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/",component:m("/networking/others/","bd9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/5g-wireless-networking",component:m("/networking/others/5g-wireless-networking","189"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/apache-avro",component:m("/networking/others/apache-avro","065"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/apache-parquet",component:m("/networking/others/apache-parquet","4d0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/data-formats",component:m("/networking/others/data-formats","f5a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/delta-lake",component:m("/networking/others/delta-lake","fd3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/delta-lake-tutorial",component:m("/networking/others/delta-lake-tutorial","925"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/falcor",component:m("/networking/others/falcor","d97"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/file-formats",component:m("/networking/others/file-formats","e60"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/file-formats-comparisons",component:m("/networking/others/file-formats-comparisons","fdf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/grpc/",component:m("/networking/others/grpc/","06d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/grpc/commands",component:m("/networking/others/grpc/commands","bf7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/grpc/comparison",component:m("/networking/others/grpc/comparison","5c7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/grpc/concepts",component:m("/networking/others/grpc/concepts","0c0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/grpc/guides",component:m("/networking/others/grpc/guides","200"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/grpc/intro",component:m("/networking/others/grpc/intro","1ba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/grpc/others",component:m("/networking/others/grpc/others","35e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/other",component:m("/networking/others/other","d94"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/protocol-buffers-protobuf",component:m("/networking/others/protocol-buffers-protobuf","090"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/rpc",component:m("/networking/others/rpc","463"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/serialization-deserialization",component:m("/networking/others/serialization-deserialization","4e4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/vpn",component:m("/networking/others/vpn","5d2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/others/vpn-tools",component:m("/networking/others/vpn-tools","c50"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/",component:m("/networking/protocols/","b68"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/amqp",component:m("/networking/protocols/amqp","59b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/dns-domain-name-system",component:m("/networking/protocols/dns-domain-name-system","061"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/graphql",component:m("/networking/protocols/graphql","a5b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/http-3-quic",component:m("/networking/protocols/http-3-quic","d04"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/http-https",component:m("/networking/protocols/http-https","b65"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/http-status-code",component:m("/networking/protocols/http-status-code","2cd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/intro",component:m("/networking/protocols/intro","eda"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/messaging",component:m("/networking/protocols/messaging","2e1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/openapi",component:m("/networking/protocols/openapi","c9a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/openthread",component:m("/networking/protocols/openthread","e88"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/others",component:m("/networking/protocols/others","262"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/protocols-intro",component:m("/networking/protocols/protocols-intro","9c1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/rest-representational-state-transfer-restful",component:m("/networking/protocols/rest-representational-state-transfer-restful","7c6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/rsocket",component:m("/networking/protocols/rsocket","6a9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/tcp-connection-oriented-protocol/",component:m("/networking/protocols/tcp-connection-oriented-protocol/","583"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/tcp-connection-oriented-protocol/flow-control",component:m("/networking/protocols/tcp-connection-oriented-protocol/flow-control","2a0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/udp",component:m("/networking/protocols/udp","2cb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/video-live-streaming",component:m("/networking/protocols/video-live-streaming","0f8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/weave",component:m("/networking/protocols/weave","b21"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/websockets",component:m("/networking/protocols/websockets","3e7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/networking/protocols/zeromq-distributed-messaging",component:m("/networking/protocols/zeromq-distributed-messaging","e66"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/",component:m("/psychology/","358"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/biases-fallacies",component:m("/psychology/biases-fallacies","f32"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/brain",component:m("/psychology/brain","b66"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/burnout",component:m("/psychology/burnout","f01"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/consumerism",component:m("/psychology/consumerism","47f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/course-mindshift",component:m("/psychology/course-mindshift","a54"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/criticism",component:m("/psychology/criticism","05c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/defence-mechanisms",component:m("/psychology/defence-mechanisms","e06"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/emotions",component:m("/psychology/emotions","447"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/habits",component:m("/psychology/habits","c53"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/human-psychology-and-thinking",component:m("/psychology/human-psychology-and-thinking","9ca"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/ikigai",component:m("/psychology/ikigai","838"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/intelligence",component:m("/psychology/intelligence","bdf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/intro",component:m("/psychology/intro","303"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/learning/",component:m("/psychology/learning/","174"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/learning/chunking-the-essentials",component:m("/psychology/learning/chunking-the-essentials","770"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/learning/concentration-mindfulness-attention-focus-hard-work",component:m("/psychology/learning/concentration-mindfulness-attention-focus-hard-work","c1e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/learning/course-learning-how-to-learn",component:m("/psychology/learning/course-learning-how-to-learn","5ec"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/learning/exams",component:m("/psychology/learning/exams","a9f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/learning/learning-intro",component:m("/psychology/learning/learning-intro","ec7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/learning/memory",component:m("/psychology/learning/memory","014"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/learning/mistakes-apology",component:m("/psychology/learning/mistakes-apology","65e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/learning/note-taking-second-brain-pkm-zettelkasten",component:m("/psychology/learning/note-taking-second-brain-pkm-zettelkasten","5d9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/learning/speed-reading",component:m("/psychology/learning/speed-reading","f35"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/learning/tips",component:m("/psychology/learning/tips","865"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/life-relationship-people",component:m("/psychology/life-relationship-people","cba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/mental-models",component:m("/psychology/mental-models","1c2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/others",component:m("/psychology/others","304"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/paradox",component:m("/psychology/paradox","797"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/parenting",component:m("/psychology/parenting","414"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/people",component:m("/psychology/people","ad1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/personality",component:m("/psychology/personality","fbc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/power",component:m("/psychology/power","fc5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/procrastination",component:m("/psychology/procrastination","b08"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/productivity-productive-time-management-todo",component:m("/psychology/productivity-productive-time-management-todo","55b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/research",component:m("/psychology/research","481"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/self-awareness",component:m("/psychology/self-awareness","03c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/self-control-will-power",component:m("/psychology/self-control-will-power","2eb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/sleep",component:m("/psychology/sleep","e21"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/soft-skills/",component:m("/psychology/soft-skills/","ab1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/soft-skills/asking-right-questions",component:m("/psychology/soft-skills/asking-right-questions","7d6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/soft-skills/disagreement-feedback",component:m("/psychology/soft-skills/disagreement-feedback","a5c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/soft-skills/listening",component:m("/psychology/soft-skills/listening","796"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/soft-skills/negotiation",component:m("/psychology/soft-skills/negotiation","303"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/soft-skills/prioritization-leverage",component:m("/psychology/soft-skills/prioritization-leverage","858"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/soft-skills/reasoning",component:m("/psychology/soft-skills/reasoning","504"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/soft-skills/speaking-phrases-quotes",component:m("/psychology/soft-skills/speaking-phrases-quotes","6c9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/soft-skills/speaking-story-talking-conversation-presentation-phrases",component:m("/psychology/soft-skills/speaking-story-talking-conversation-presentation-phrases","b95"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/soft-skills/writing",component:m("/psychology/soft-skills/writing","1a0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/stoicism",component:m("/psychology/stoicism","74d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/strategic-thinking",component:m("/psychology/strategic-thinking","3cd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/thinking-mental-models",component:m("/psychology/thinking-mental-models","e9e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/travelling",component:m("/psychology/travelling","617"),exact:!0,sidebar:"tutorialSidebar"},{path:"/psychology/trust",component:m("/psychology/trust","777"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/",component:m("/python/","3b4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/advanced/",component:m("/python/advanced/","9f2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/advanced/architecture",component:m("/python/advanced/architecture","993"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/advanced/concurrency",component:m("/python/advanced/concurrency","ffb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/advanced/cpython",component:m("/python/advanced/cpython","8f4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/advanced/faster-python",component:m("/python/advanced/faster-python","bf2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/advanced/idiomatic-python",component:m("/python/advanced/idiomatic-python","5de"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/advanced/memory-management",component:m("/python/advanced/memory-management","f95"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/advanced/mixin",component:m("/python/advanced/mixin","e46"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/advanced/others",component:m("/python/advanced/others","be8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/advanced/python-tricks",component:m("/python/advanced/python-tricks","19c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/advanced/python-versions",component:m("/python/advanced/python-versions","32b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/advanced/super",component:m("/python/advanced/super","155"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/advanced/web-scraping",component:m("/python/advanced/web-scraping","315"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/",component:m("/python/django/","247"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/admin-site",component:m("/python/django/admin-site","55c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/advanced",component:m("/python/django/advanced","1e3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/architecture",component:m("/python/django/architecture","99f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/authentication-authorization",component:m("/python/django/authentication-authorization","89d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/cheatsheet",component:m("/python/django/cheatsheet","75c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/commands",component:m("/python/django/commands","901"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/content-types",component:m("/python/django/content-types","947"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/django-rest-framework-drf",component:m("/python/django/django-rest-framework-drf","6f7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/django-template-language",component:m("/python/django/django-template-language","ccd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/docs-topic-guides",component:m("/python/django/docs-topic-guides","9ee"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/libraries",component:m("/python/django/libraries","c9b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/logging",component:m("/python/django/logging","941"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/models",component:m("/python/django/models","f35"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/optimizations",component:m("/python/django/optimizations","28e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/other-topics",component:m("/python/django/other-topics","af4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/others",component:m("/python/django/others","2cb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/overview",component:m("/python/django/overview","673"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/queryset-and-query-expressions",component:m("/python/django/queryset-and-query-expressions","23b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/django/unicode",component:m("/python/django/unicode","8d4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/",component:m("/python/documentation/","010"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/01-intro",component:m("/python/documentation/01-intro","51e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/02-built-in-functions",component:m("/python/documentation/02-built-in-functions","0f4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/03-built-in-constants",component:m("/python/documentation/03-built-in-constants","93d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/04-built-in-types",component:m("/python/documentation/04-built-in-types","f96"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/06-text-processing-services",component:m("/python/documentation/06-text-processing-services","0ea"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/07-binary-data-services",component:m("/python/documentation/07-binary-data-services","f6f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/08-data-types",component:m("/python/documentation/08-data-types","37e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/09-numeric-and-mathematical-modules",component:m("/python/documentation/09-numeric-and-mathematical-modules","341"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/10-functional-programming-modules",component:m("/python/documentation/10-functional-programming-modules","d0f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/11-file-and-directory-access",component:m("/python/documentation/11-file-and-directory-access","f64"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/12-data-persistence",component:m("/python/documentation/12-data-persistence","8ff"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/14-file-formats",component:m("/python/documentation/14-file-formats","807"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/15-cryptographic-services",component:m("/python/documentation/15-cryptographic-services","9a5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/16-generic-operating-system-services-logging",component:m("/python/documentation/16-generic-operating-system-services-logging","67a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/17-concurrent-execution",component:m("/python/documentation/17-concurrent-execution","dee"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/18-interprocess-communication-and-networking",component:m("/python/documentation/18-interprocess-communication-and-networking","e18"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/19-internet-data-handling",component:m("/python/documentation/19-internet-data-handling","cb4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/21-structured-markup-processing-tools",component:m("/python/documentation/21-structured-markup-processing-tools","39f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/22-internet-protocols-and-support",component:m("/python/documentation/22-internet-protocols-and-support","9e6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/27-development-tools/",component:m("/python/documentation/27-development-tools/","470"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/27-development-tools/static-code-analysis",component:m("/python/documentation/27-development-tools/static-code-analysis","02f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/27-development-tools/testing",component:m("/python/documentation/27-development-tools/testing","046"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/28-debugging-and-profiling",component:m("/python/documentation/28-debugging-and-profiling","0a0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/30-python-runtime-services",component:m("/python/documentation/30-python-runtime-services","d54"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/33-python-language-services",component:m("/python/documentation/33-python-language-services","9ca"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/pep",component:m("/python/documentation/pep","8e4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/python-howtos",component:m("/python/documentation/python-howtos","c42"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/python-language-reference",component:m("/python/documentation/python-language-reference","dc8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/documentation/the-python-standard-library",component:m("/python/documentation/the-python-standard-library","c79"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/",component:m("/python/others/","aed"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/boto-and-boto3/",component:m("/python/others/boto-and-boto3/","34e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/boto-and-boto3/slides",component:m("/python/others/boto-and-boto3/slides","891"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/fastapi/",component:m("/python/others/fastapi/","435"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/fastapi/internal-working",component:m("/python/others/fastapi/internal-working","cff"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/flask/",component:m("/python/others/flask/","d07"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/flask/documentation",component:m("/python/others/flask/documentation","a36"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/flask/flask-sqlalchemy",component:m("/python/others/flask/flask-sqlalchemy","c56"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/flask/others",component:m("/python/others/flask/others","421"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/frameworks",component:m("/python/others/frameworks","06c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/libraries",component:m("/python/others/libraries","6ae"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/pymysql",component:m("/python/others/pymysql","739"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/requests",component:m("/python/others/requests","02e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/sqlalchemy/",component:m("/python/others/sqlalchemy/","958"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/sqlalchemy/models",component:m("/python/others/sqlalchemy/models","7e1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/sqlalchemy/orm",component:m("/python/others/sqlalchemy/orm","0f6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/others/twisted",component:m("/python/others/twisted","5c1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/",component:m("/python/python-intro/","492"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/basic",component:m("/python/python-intro/basic","a84"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/classes",component:m("/python/python-intro/classes","a45"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/data-structure/",component:m("/python/python-intro/data-structure/","d0e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/data-structure/dict-evolution",component:m("/python/python-intro/data-structure/dict-evolution","23b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/data-structure/dictionary",component:m("/python/python-intro/data-structure/dictionary","750"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/data-structure/dictionary-architecture",component:m("/python/python-intro/data-structure/dictionary-architecture","cd1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/data-structure/list",component:m("/python/python-intro/data-structure/list","833"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/data-structure/set",component:m("/python/python-intro/data-structure/set","75b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/data-structure/tuples",component:m("/python/python-intro/data-structure/tuples","189"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/datetime",component:m("/python/python-intro/datetime","f6b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/exceptions",component:m("/python/python-intro/exceptions","1d1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/file-io",component:m("/python/python-intro/file-io","370"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/functions",component:m("/python/python-intro/functions","0db"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/generators",component:m("/python/python-intro/generators","389"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/input-output-template",component:m("/python/python-intro/input-output-template","08a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/iterators",component:m("/python/python-intro/iterators","f47"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/keywords",component:m("/python/python-intro/keywords","faa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/loops",component:m("/python/python-intro/loops","ed7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/map-reduce-filter",component:m("/python/python-intro/map-reduce-filter","50f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/mathematics",component:m("/python/python-intro/mathematics","752"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/modules",component:m("/python/python-intro/modules","eab"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/oops",component:m("/python/python-intro/oops","f24"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/operators",component:m("/python/python-intro/operators","90c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/questions",component:m("/python/python-intro/questions","10c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/regular-expressions",component:m("/python/python-intro/regular-expressions","3b3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/requirements-file",component:m("/python/python-intro/requirements-file","295"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/resources",component:m("/python/python-intro/resources","597"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/sorting",component:m("/python/python-intro/sorting","f24"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/strings",component:m("/python/python-intro/strings","073"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/time-complexities",component:m("/python/python-intro/time-complexities","597"),exact:!0,sidebar:"tutorialSidebar"},{path:"/python/python-intro/virtualenv-and-pip",component:m("/python/python-intro/virtualenv-and-pip","a1f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/",component:m("/technologies/","6ef"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/",component:m("/technologies/apache/","3f6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/airflow/",component:m("/technologies/apache/airflow/","a35"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/airflow/airflow-architecture",component:m("/technologies/apache/airflow/airflow-architecture","1a6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/airflow/astronomer",component:m("/technologies/apache/airflow/astronomer","60c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/airflow/commands-configs",component:m("/technologies/apache/airflow/commands-configs","a88"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/airflow/concepts",component:m("/technologies/apache/airflow/concepts","d2a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/airflow/dags-example",component:m("/technologies/apache/airflow/dags-example","d6d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/airflow/intro",component:m("/technologies/apache/airflow/intro","4a8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/airflow/others",component:m("/technologies/apache/airflow/others","695"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/airflow/parallelism",component:m("/technologies/apache/airflow/parallelism","1ea"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-flink",component:m("/technologies/apache/apache-flink","a50"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-hadoop/",component:m("/technologies/apache/apache-hadoop/","ea2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-hadoop/about",component:m("/technologies/apache/apache-hadoop/about","c8b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-hadoop/big-data-hadoop-stack",component:m("/technologies/apache/apache-hadoop/big-data-hadoop-stack","27b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-hadoop/hadoop-mapreduce-1.0",component:m("/technologies/apache/apache-hadoop/hadoop-mapreduce-1.0","bc0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-hadoop/hadoop-mapreduce-2.0",component:m("/technologies/apache/apache-hadoop/hadoop-mapreduce-2.0","811"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-hadoop/hdfs",component:m("/technologies/apache/apache-hadoop/hdfs","6c4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-hadoop/intro",component:m("/technologies/apache/apache-hadoop/intro","540"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-hadoop/mapreduce-examples",component:m("/technologies/apache/apache-hadoop/mapreduce-examples","cff"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-hadoop/others",component:m("/technologies/apache/apache-hadoop/others","fd5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-hbase",component:m("/technologies/apache/apache-hbase","87d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-hive",component:m("/technologies/apache/apache-hive","468"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-hudi",component:m("/technologies/apache/apache-hudi","7d2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-projects",component:m("/technologies/apache/apache-projects","341"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-pulsar",component:m("/technologies/apache/apache-pulsar","a14"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-samza",component:m("/technologies/apache/apache-samza","a16"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-spark/",component:m("/technologies/apache/apache-spark/","0c1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-spark/00-intro",component:m("/technologies/apache/apache-spark/00-intro","5b9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-spark/01-terms",component:m("/technologies/apache/apache-spark/01-terms","17e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-spark/02-spark-modules",component:m("/technologies/apache/apache-spark/02-spark-modules","756"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-spark/03-processing-model",component:m("/technologies/apache/apache-spark/03-processing-model","811"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-spark/04-key-points",component:m("/technologies/apache/apache-spark/04-key-points","ca9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-spark/05-spark-built-in-libraries",component:m("/technologies/apache/apache-spark/05-spark-built-in-libraries","590"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-spark/06-sliding-window-analytics",component:m("/technologies/apache/apache-spark/06-sliding-window-analytics","2c3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-spark/07-joins",component:m("/technologies/apache/apache-spark/07-joins","336"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-spark/08-examples",component:m("/technologies/apache/apache-spark/08-examples","a6b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-spark/09-dataframe",component:m("/technologies/apache/apache-spark/09-dataframe","102"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-spark/10-sql-functions-datasources",component:m("/technologies/apache/apache-spark/10-sql-functions-datasources","3e8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-spark/11-built-in-functions",component:m("/technologies/apache/apache-spark/11-built-in-functions","6b2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-spark/99-others",component:m("/technologies/apache/apache-spark/99-others","280"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-storm",component:m("/technologies/apache/apache-storm","577"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/apache-zookeeper",component:m("/technologies/apache/apache-zookeeper","f0d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/celery/",component:m("/technologies/apache/celery/","dff"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/celery/celery-backend",component:m("/technologies/apache/celery/celery-backend","b70"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/celery/commands-tools",component:m("/technologies/apache/celery/commands-tools","e4f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/celery/workers",component:m("/technologies/apache/celery/workers","140"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/cncf",component:m("/technologies/apache/cncf","10c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/data-pipeline-architecture",component:m("/technologies/apache/data-pipeline-architecture","ae1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/apache/others",component:m("/technologies/apache/others","37a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/brokers/",component:m("/technologies/brokers/","ec3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/brokers/emqtt/",component:m("/technologies/brokers/emqtt/","5c2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/brokers/emqtt/commands",component:m("/technologies/brokers/emqtt/commands","bce"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/brokers/emqtt/conf",component:m("/technologies/brokers/emqtt/conf","cfc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/brokers/emqtt/deployment-and-installation",component:m("/technologies/brokers/emqtt/deployment-and-installation","d9e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/brokers/emqtt/plugins",component:m("/technologies/brokers/emqtt/plugins","c17"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/brokers/others",component:m("/technologies/brokers/others","a11"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/brokers/rabbitmq",component:m("/technologies/brokers/rabbitmq","dc3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/brokers/smap",component:m("/technologies/brokers/smap","d16"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/brokers/vernemq/",component:m("/technologies/brokers/vernemq/","43c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/brokers/vernemq/commands",component:m("/technologies/brokers/vernemq/commands","689"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/brokers/volttron",component:m("/technologies/brokers/volttron","a8d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/databricks/",component:m("/technologies/databricks/","a55"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/databricks/01-databricks",component:m("/technologies/databricks/01-databricks","4b0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/databricks/02-databricks-getting-started",component:m("/technologies/databricks/02-databricks-getting-started","eae"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/databricks/03-optimizations",component:m("/technologies/databricks/03-optimizations","df4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/databricks/04-workflow",component:m("/technologies/databricks/04-workflow","97b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/databricks/10-medallion-architecture",component:m("/technologies/databricks/10-medallion-architecture","441"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/databricks/20-delta-live-tables",component:m("/technologies/databricks/20-delta-live-tables","117"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/databricks/30-unity-catalog",component:m("/technologies/databricks/30-unity-catalog","760"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/databricks/40-databricks-commands",component:m("/technologies/databricks/40-databricks-commands","790"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/databricks/99-others",component:m("/technologies/databricks/99-others","5fd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/elasticsearch/",component:m("/technologies/elasticsearch/","bd6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/elasticsearch/analysis-and-analyzers",component:m("/technologies/elasticsearch/analysis-and-analyzers","2bf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/elasticsearch/architecture",component:m("/technologies/elasticsearch/architecture","696"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/elasticsearch/commands",component:m("/technologies/elasticsearch/commands","cdf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/elasticsearch/elastalert",component:m("/technologies/elasticsearch/elastalert","9cb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/elasticsearch/elasticsearch-the-definitive-guide",component:m("/technologies/elasticsearch/elasticsearch-the-definitive-guide","2dc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch",component:m("/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch","fd2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/elasticsearch/full-text-searches",component:m("/technologies/elasticsearch/full-text-searches","aa9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/elasticsearch/getting-started",component:m("/technologies/elasticsearch/getting-started","b40"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/elasticsearch/information-retrieval",component:m("/technologies/elasticsearch/information-retrieval","c77"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/elasticsearch/internal-working",component:m("/technologies/elasticsearch/internal-working","48f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/elasticsearch/others",component:m("/technologies/elasticsearch/others","c0a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/git/",component:m("/technologies/git/","a8f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/git/branching-strategies",component:m("/technologies/git/branching-strategies","868"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/git/commands",component:m("/technologies/git/commands","0ef"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/git/github",component:m("/technologies/git/github","5a6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/git/others",component:m("/technologies/git/others","936"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/git/theory",component:m("/technologies/git/theory","3d4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/",component:m("/technologies/kafka/","c68"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/confluent-kafka",component:m("/technologies/kafka/confluent-kafka","64c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/installing-kafka",component:m("/technologies/kafka/installing-kafka","0eb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/intro",component:m("/technologies/kafka/intro","283"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/intro-to-kafka",component:m("/technologies/kafka/intro-to-kafka","1cc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/kafka-architecture",component:m("/technologies/kafka/kafka-architecture","fae"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/kafka-commands",component:m("/technologies/kafka/kafka-commands","d82"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/kafka-connect",component:m("/technologies/kafka/kafka-connect","cb3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/kafka-consumers",component:m("/technologies/kafka/kafka-consumers","daa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/kafka-listeners",component:m("/technologies/kafka/kafka-listeners","a69"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/kafka-producers",component:m("/technologies/kafka/kafka-producers","924"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/kafka-python",component:m("/technologies/kafka/kafka-python","094"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/kafka-rest-proxy",component:m("/technologies/kafka/kafka-rest-proxy","810"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/kafka-schema-registry",component:m("/technologies/kafka/kafka-schema-registry","f85"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/kafka-streams",component:m("/technologies/kafka/kafka-streams","db6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/kafka-topic-replication",component:m("/technologies/kafka/kafka-topic-replication","f18"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/kafkacat",component:m("/technologies/kafka/kafkacat","f3c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/migration-mirroring-replication",component:m("/technologies/kafka/migration-mirroring-replication","730"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/monitoring",component:m("/technologies/kafka/monitoring","628"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/others",component:m("/technologies/kafka/others","38c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/security",component:m("/technologies/kafka/security","a2b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/kafka/strimzi",component:m("/technologies/kafka/strimzi","912"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/others/",component:m("/technologies/others/","69f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/others/fasttag",component:m("/technologies/others/fasttag","435"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/others/other-technologies",component:m("/technologies/others/other-technologies","06f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/others/others-distributed-systems",component:m("/technologies/others/others-distributed-systems","634"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/others/others-iot",component:m("/technologies/others/others-iot","25a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/technologies/others/presto",component:m("/technologies/others/presto","afa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/",component:m("/","43d"),exact:!0,sidebar:"tutorialSidebar"}]}]}]},{path:"*",component:m("*")}]},488121:(e,t,a)=>{"use strict";a.d(t,{_:()=>n,t:()=>s});var o=a(667294),i=a(785893);const n=o.createContext(!1);function s(e){let{children:t}=e;const[a,s]=(0,o.useState)(!1);return(0,o.useEffect)((()=>{s(!0)}),[]),(0,i.jsx)(n.Provider,{value:a,children:t})}},149717:(e,t,a)=>{"use strict";var o=a(667294),i=a(620745),n=a(473727),s=a(370405),r=a(836136);const c=[a(374313),a(30984),a(982251),a(379957),a(146930),a(245117)];var d=a(150997),l=a(616550),m=a(318790),p=a(785893);function u(e){let{children:t}=e;return(0,p.jsx)(p.Fragment,{children:t})}var b=a(631514),h=a(639962),g=a(779524),f=a(820107),y=a(679488),k=a(340626),v=a(978181),S=a(660246),w=a(963905),_=a(433647);function x(){const{i18n:{currentLocale:e,defaultLocale:t,localeConfigs:a}}=(0,h.Z)(),o=(0,k.l)(),i=a[e].htmlLang,n=e=>e.replace("-","_");return(0,p.jsxs)(b.Z,{children:[Object.entries(a).map((e=>{let[t,{htmlLang:a}]=e;return(0,p.jsx)("link",{rel:"alternate",href:o.createUrl({locale:t,fullyQualified:!0}),hrefLang:a},t)})),(0,p.jsx)("link",{rel:"alternate",href:o.createUrl({locale:t,fullyQualified:!0}),hrefLang:"x-default"}),(0,p.jsx)("meta",{property:"og:locale",content:n(i)}),Object.values(a).filter((e=>i!==e.htmlLang)).map((e=>(0,p.jsx)("meta",{property:"og:locale:alternate",content:n(e.htmlLang)},`meta-og-${e.htmlLang}`)))]})}function q(e){let{permalink:t}=e;const{siteConfig:{url:a}}=(0,h.Z)(),o=function(){const{siteConfig:{url:e,baseUrl:t,trailingSlash:a}}=(0,h.Z)(),{pathname:o}=(0,l.TH)();return e+(0,w.applyTrailingSlash)((0,g.Z)(o),{trailingSlash:a,baseUrl:t})}(),i=t?`${a}${t}`:o;return(0,p.jsxs)(b.Z,{children:[(0,p.jsx)("meta",{property:"og:url",content:i}),(0,p.jsx)("link",{rel:"canonical",href:i})]})}function j(){const{i18n:{currentLocale:e}}=(0,h.Z)(),{metadata:t,image:a}=(0,f.L)();return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(b.Z,{children:[(0,p.jsx)("meta",{name:"twitter:card",content:"summary_large_image"}),(0,p.jsx)("body",{className:v.h})]}),a&&(0,p.jsx)(y.d,{image:a}),(0,p.jsx)(q,{}),(0,p.jsx)(x,{}),(0,p.jsx)(_.Z,{tag:S.HX,locale:e}),(0,p.jsx)(b.Z,{children:t.map(((e,t)=>(0,p.jsx)("meta",{...e},t)))})]})}const z=new Map;function E(e){if(z.has(e.pathname))return{...e,pathname:z.get(e.pathname)};if((0,m.f)(d.Z,e.pathname).some((e=>{let{route:t}=e;return!0===t.exact})))return z.set(e.pathname,e.pathname),e;const t=e.pathname.trim().replace(/(?:\/index)?\.html$/,"")||"/";return z.set(e.pathname,t),{...e,pathname:t}}var C=a(488121),T=a(980694),A=a(81270);function L(e){for(var t=arguments.length,a=new Array(t>1?t-1:0),o=1;o{const o=t.default?.[e]??t[e];return o?.(...a)}));return()=>i.forEach((e=>e?.()))}const R=function(e){let{children:t,location:a,previousLocation:o}=e;return(0,A.Z)((()=>{o!==a&&(!function(e){let{location:t,previousLocation:a}=e;if(!a)return;const o=t.pathname===a.pathname,i=t.hash===a.hash,n=t.search===a.search;if(o&&i&&!n)return;const{hash:s}=t;if(s){const e=decodeURIComponent(s.substring(1)),t=document.getElementById(e);t?.scrollIntoView()}else window.scrollTo(0,0)}({location:a,previousLocation:o}),L("onRouteDidUpdate",{previousLocation:o,location:a}))}),[o,a]),t};function N(e){const t=Array.from(new Set([e,decodeURI(e)])).map((e=>(0,m.f)(d.Z,e))).flat();return Promise.all(t.map((e=>e.route.component.preload?.())))}class P extends o.Component{previousLocation;routeUpdateCleanupCb;constructor(e){super(e),this.previousLocation=null,this.routeUpdateCleanupCb=r.Z.canUseDOM?L("onRouteUpdate",{previousLocation:null,location:this.props.location}):()=>{},this.state={nextRouteHasLoaded:!0}}shouldComponentUpdate(e,t){if(e.location===this.props.location)return t.nextRouteHasLoaded;const a=e.location;return this.previousLocation=this.props.location,this.setState({nextRouteHasLoaded:!1}),this.routeUpdateCleanupCb=L("onRouteUpdate",{previousLocation:this.previousLocation,location:a}),N(a.pathname).then((()=>{this.routeUpdateCleanupCb(),this.setState({nextRouteHasLoaded:!0})})).catch((e=>{console.warn(e),window.location.reload()})),!1}render(){const{children:e,location:t}=this.props;return(0,p.jsx)(R,{previousLocation:this.previousLocation,location:t,children:(0,p.jsx)(l.AW,{location:t,render:()=>e})})}}const O=P,I="__docusaurus-base-url-issue-banner-container",D="__docusaurus-base-url-issue-banner",M="__docusaurus-base-url-issue-banner-suggestion-container";function F(e){return`\ndocument.addEventListener('DOMContentLoaded', function maybeInsertBanner() {\n var shouldInsert = typeof window['docusaurus'] === 'undefined';\n shouldInsert && insertBanner();\n});\n\nfunction insertBanner() {\n var bannerContainer = document.createElement('div');\n bannerContainer.id = '${I}';\n var bannerHtml = ${JSON.stringify(function(e){return`\n
    \n

    Your Docusaurus site did not load properly.

    \n

    A very common reason is a wrong site baseUrl configuration.

    \n

    Current configured baseUrl = ${e} ${"/"===e?" (default value)":""}

    \n

    We suggest trying baseUrl =

    \n
    \n`}(e)).replace(/{if("undefined"==typeof document)return void a();const o=document.createElement("link");o.setAttribute("rel","prefetch"),o.setAttribute("href",e),o.onload=()=>t(),o.onerror=()=>a();const i=document.getElementsByTagName("head")[0]??document.getElementsByName("script")[0]?.parentNode;i?.appendChild(o)}))}:function(e){return new Promise(((t,a)=>{const o=new XMLHttpRequest;o.open("GET",e,!0),o.withCredentials=!0,o.onload=()=>{200===o.status?t():a()},o.send(null)}))};var Q=a(205304);const Y=new Set,X=new Set,J=()=>navigator.connection?.effectiveType.includes("2g")||navigator.connection?.saveData,ee={prefetch(e){if(!(e=>!J()&&!X.has(e)&&!Y.has(e))(e))return!1;Y.add(e);const t=(0,m.f)(d.Z,e).flatMap((e=>{return t=e.route.path,Object.entries(V).filter((e=>{let[a]=e;return a.replace(/-[^-]+$/,"")===t})).flatMap((e=>{let[,t]=e;return Object.values((0,Q.Z)(t))}));var t}));return Promise.all(t.map((e=>{const t=a.gca(e);return t&&!t.includes("undefined")?K(t).catch((()=>{})):Promise.resolve()})))},preload:e=>!!(e=>!J()&&!X.has(e))(e)&&(X.add(e),N(e))},te=Object.freeze(ee),ae=Boolean(!0);if(r.Z.canUseDOM){window.docusaurus=te;const e=document.getElementById("__docusaurus"),t=(0,p.jsx)(s.B6,{children:(0,p.jsx)(n.VK,{children:(0,p.jsx)(W,{})})}),a=(e,t)=>{console.error("Docusaurus React Root onRecoverableError:",e,t)},r=()=>{if(ae)o.startTransition((()=>{i.hydrateRoot(e,t,{onRecoverableError:a})}));else{const n=i.createRoot(e,{onRecoverableError:a});o.startTransition((()=>{n.render(t)}))}};N(window.location.pathname).then(r)}},980694:(e,t,a)=>{"use strict";a.d(t,{_:()=>m,M:()=>p});var o=a(667294),i=a(636809);const n=JSON.parse('{"docusaurus-plugin-google-tag-manager":{"default":{"containerId":"GTM-TN3KBF4","id":"default"}},"docusaurus-plugin-google-gtag":{"default":{"trackingID":["G-ZSZMJXWSH3"],"anonymizeIP":false,"id":"default"}},"docusaurus-plugin-content-docs":{"default":{"path":"/","versions":[{"name":"current","label":"Next","isLast":true,"path":"/","mainDocId":"readme","docs":[{"id":"about-me/achievements-activities-awards","path":"/about-me/achievements-activities-awards","sidebar":"tutorialSidebar"},{"id":"about-me/experience","path":"/about-me/experience","sidebar":"tutorialSidebar"},{"id":"about-me/faqs","path":"/about-me/faqs","sidebar":"tutorialSidebar"},{"id":"about-me/ideas/creating-a-business-startup","path":"/about-me/ideas/creating-a-business-startup","sidebar":"tutorialSidebar"},{"id":"about-me/ideas/donations","path":"/about-me/ideas/donations","sidebar":"tutorialSidebar"},{"id":"about-me/ideas/education","path":"/about-me/ideas/education","sidebar":"tutorialSidebar"},{"id":"about-me/ideas/improvements-feedbacks","path":"/about-me/ideas/improvements-feedbacks","sidebar":"tutorialSidebar"},{"id":"about-me/ideas/intro","path":"/about-me/ideas/intro","sidebar":"tutorialSidebar"},{"id":"about-me/ideas/non-profit","path":"/about-me/ideas/non-profit","sidebar":"tutorialSidebar"},{"id":"about-me/ideas/others","path":"/about-me/ideas/others","sidebar":"tutorialSidebar"},{"id":"about-me/ideas/readme","path":"/about-me/ideas/","sidebar":"tutorialSidebar"},{"id":"about-me/ideas/society","path":"/about-me/ideas/society","sidebar":"tutorialSidebar"},{"id":"about-me/ideas/startup-ideas-physical","path":"/about-me/ideas/startup-ideas-physical","sidebar":"tutorialSidebar"},{"id":"about-me/ideas/startup-quotes","path":"/about-me/ideas/startup-quotes","sidebar":"tutorialSidebar"},{"id":"about-me/ideas/startups-ideas-saas","path":"/about-me/ideas/startups-ideas-saas","sidebar":"tutorialSidebar"},{"id":"about-me/ideas/thoughts-future-ideas-vision-prediction","path":"/about-me/ideas/thoughts-future-ideas-vision-prediction","sidebar":"tutorialSidebar"},{"id":"about-me/paper-publications-references","path":"/about-me/paper-publications-references","sidebar":"tutorialSidebar"},{"id":"about-me/personality","path":"/about-me/personality","sidebar":"tutorialSidebar"},{"id":"about-me/projects/44-agri-tech-digital-transformation-case-study","path":"/about-me/projects/44-agri-tech-digital-transformation-case-study","sidebar":"tutorialSidebar"},{"id":"about-me/projects/45-traditional-ai-case-studies","path":"/about-me/projects/45-traditional-ai-case-studies","sidebar":"tutorialSidebar"},{"id":"about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering","path":"/about-me/projects/46-podcast-streamlining-cloud-migration-through-data-engineering","sidebar":"tutorialSidebar"},{"id":"about-me/projects/47-genai-case-study-careers360","path":"/about-me/projects/47-genai-case-study-careers360","sidebar":"tutorialSidebar"},{"id":"about-me/projects/48-rag-genai-presentation","path":"/about-me/projects/48-rag-genai-presentation","sidebar":"tutorialSidebar"},{"id":"about-me/projects/49-data-practical-use-cases","path":"/about-me/projects/49-data-practical-use-cases","sidebar":"tutorialSidebar"},{"id":"about-me/projects/50-use-cases-aiml-logistics-warehousing","path":"/about-me/projects/50-use-cases-aiml-logistics-warehousing","sidebar":"tutorialSidebar"},{"id":"about-me/projects/51-case-study-anomaly-detection","path":"/about-me/projects/51-case-study-anomaly-detection","sidebar":"tutorialSidebar"},{"id":"about-me/projects/52-pull-request-risk-tagging-heuristics","path":"/about-me/projects/52-pull-request-risk-tagging-heuristics","sidebar":"tutorialSidebar"},{"id":"about-me/projects/53-mozark-cloud-cost-optimization","path":"/about-me/projects/53-mozark-cloud-cost-optimization","sidebar":"tutorialSidebar"},{"id":"about-me/projects/54-airflow-kafka-migration","path":"/about-me/projects/54-airflow-kafka-migration","sidebar":"tutorialSidebar"},{"id":"about-me/projects/55-azure-social-media-analytics","path":"/about-me/projects/55-azure-social-media-analytics","sidebar":"tutorialSidebar"},{"id":"about-me/projects/56-freecharge-cost-optimization-dba","path":"/about-me/projects/56-freecharge-cost-optimization-dba","sidebar":"tutorialSidebar"},{"id":"about-me/projects/57-careers360-cost-optimization","path":"/about-me/projects/57-careers360-cost-optimization","sidebar":"tutorialSidebar"},{"id":"about-me/projects/58-aws-gen-ai-hackathon-rag","path":"/about-me/projects/58-aws-gen-ai-hackathon-rag","sidebar":"tutorialSidebar"},{"id":"about-me/projects/59-data-engineering-product-pitch-iot-industry","path":"/about-me/projects/59-data-engineering-product-pitch-iot-industry","sidebar":"tutorialSidebar"},{"id":"about-me/projects/60-data-engineering-case-studies","path":"/about-me/projects/60-data-engineering-case-studies","sidebar":"tutorialSidebar"},{"id":"about-me/projects/61-general-application-management-case-study","path":"/about-me/projects/61-general-application-management-case-study","sidebar":"tutorialSidebar"},{"id":"about-me/projects/62-application-management-case-study-telecom","path":"/about-me/projects/62-application-management-case-study-telecom","sidebar":"tutorialSidebar"},{"id":"about-me/projects/63-mlops-master-document","path":"/about-me/projects/63-mlops-master-document","sidebar":"tutorialSidebar"},{"id":"about-me/projects/64-mlops-case-studies","path":"/about-me/projects/64-mlops-case-studies","sidebar":"tutorialSidebar"},{"id":"about-me/projects/65-problems-in-iot-industry","path":"/about-me/projects/65-problems-in-iot-industry","sidebar":"tutorialSidebar"},{"id":"about-me/projects/66-iot-case-studies","path":"/about-me/projects/66-iot-case-studies","sidebar":"tutorialSidebar"},{"id":"about-me/projects/67-data-engineering-battle-cards","path":"/about-me/projects/67-data-engineering-battle-cards","sidebar":"tutorialSidebar"},{"id":"about-me/projects/70-interview-datainsight-alerting-engine","path":"/about-me/projects/70-interview-datainsight-alerting-engine","sidebar":"tutorialSidebar"},{"id":"about-me/projects/71-opstree-standard-proposal-format","path":"/about-me/projects/71-opstree-standard-proposal-format","sidebar":"tutorialSidebar"},{"id":"about-me/projects/75-bake-io-data-engineering","path":"/about-me/projects/75-bake-io-data-engineering","sidebar":"tutorialSidebar"},{"id":"about-me/projects/80-stashfin","path":"/about-me/projects/80-stashfin","sidebar":"tutorialSidebar"},{"id":"about-me/projects/81-stashfin-terms","path":"/about-me/projects/81-stashfin-terms","sidebar":"tutorialSidebar"},{"id":"about-me/projects/82-stashfin-metrics","path":"/about-me/projects/82-stashfin-metrics","sidebar":"tutorialSidebar"},{"id":"about-me/projects/85-stashfin-twitter-bot","path":"/about-me/projects/85-stashfin-twitter-bot","sidebar":"tutorialSidebar"},{"id":"about-me/projects/86-stashfin-customer-support","path":"/about-me/projects/86-stashfin-customer-support","sidebar":"tutorialSidebar"},{"id":"about-me/projects/87-stashfin-team-management-culture","path":"/about-me/projects/87-stashfin-team-management-culture","sidebar":"tutorialSidebar"},{"id":"about-me/projects/88-stashfin-security-iam-apis","path":"/about-me/projects/88-stashfin-security-iam-apis","sidebar":"tutorialSidebar"},{"id":"about-me/projects/89-stashfin-devops-overhaul","path":"/about-me/projects/89-stashfin-devops-overhaul","sidebar":"tutorialSidebar"},{"id":"about-me/projects/90-stashfin-tech-stack-infra","path":"/about-me/projects/90-stashfin-tech-stack-infra","sidebar":"tutorialSidebar"},{"id":"about-me/projects/91-stashfin-aiml-use-cases","path":"/about-me/projects/91-stashfin-aiml-use-cases","sidebar":"tutorialSidebar"},{"id":"about-me/projects/98-others","path":"/about-me/projects/98-others","sidebar":"tutorialSidebar"},{"id":"about-me/projects/99-ciso-cybersecurity","path":"/about-me/projects/99-ciso-cybersecurity","sidebar":"tutorialSidebar"},{"id":"about-me/projects/readme","path":"/about-me/projects/","sidebar":"tutorialSidebar"},{"id":"about-me/readme","path":"/about-me/","sidebar":"tutorialSidebar"},{"id":"about-me/social-links","path":"/about-me/social-links","sidebar":"tutorialSidebar"},{"id":"ai/big-data/characteristics","path":"/ai/big-data/characteristics","sidebar":"tutorialSidebar"},{"id":"ai/big-data/data","path":"/ai/big-data/data","sidebar":"tutorialSidebar"},{"id":"ai/big-data/data-masking","path":"/ai/big-data/data-masking","sidebar":"tutorialSidebar"},{"id":"ai/big-data/data-preprocessing","path":"/ai/big-data/data-preprocessing","sidebar":"tutorialSidebar"},{"id":"ai/big-data/data-quality","path":"/ai/big-data/data-quality","sidebar":"tutorialSidebar"},{"id":"ai/big-data/design-of-hbase","path":"/ai/big-data/design-of-hbase","sidebar":"tutorialSidebar"},{"id":"ai/big-data/design-of-key-value-stores","path":"/ai/big-data/design-of-key-value-stores","sidebar":"tutorialSidebar"},{"id":"ai/big-data/design-of-zookeeper","path":"/ai/big-data/design-of-zookeeper","sidebar":"tutorialSidebar"},{"id":"ai/big-data/intro","path":"/ai/big-data/intro","sidebar":"tutorialSidebar"},{"id":"ai/big-data/page-rank","path":"/ai/big-data/page-rank","sidebar":"tutorialSidebar"},{"id":"ai/big-data/parameter-servers","path":"/ai/big-data/parameter-servers","sidebar":"tutorialSidebar"},{"id":"ai/big-data/processing-engine","path":"/ai/big-data/processing-engine","sidebar":"tutorialSidebar"},{"id":"ai/big-data/readme","path":"/ai/big-data/","sidebar":"tutorialSidebar"},{"id":"ai/big-data/tools","path":"/ai/big-data/tools","sidebar":"tutorialSidebar"},{"id":"ai/big-data/types-of-data","path":"/ai/big-data/types-of-data","sidebar":"tutorialSidebar"},{"id":"ai/computer-vision-cv/convolutional-neural-network-cnn","path":"/ai/computer-vision-cv/convolutional-neural-network-cnn","sidebar":"tutorialSidebar"},{"id":"ai/computer-vision-cv/cv-libraries-tools","path":"/ai/computer-vision-cv/cv-libraries-tools","sidebar":"tutorialSidebar"},{"id":"ai/computer-vision-cv/examples","path":"/ai/computer-vision-cv/examples","sidebar":"tutorialSidebar"},{"id":"ai/computer-vision-cv/image-data-labeling-tools","path":"/ai/computer-vision-cv/image-data-labeling-tools","sidebar":"tutorialSidebar"},{"id":"ai/computer-vision-cv/image-formats","path":"/ai/computer-vision-cv/image-formats","sidebar":"tutorialSidebar"},{"id":"ai/computer-vision-cv/imagemagick","path":"/ai/computer-vision-cv/imagemagick","sidebar":"tutorialSidebar"},{"id":"ai/computer-vision-cv/intro","path":"/ai/computer-vision-cv/intro","sidebar":"tutorialSidebar"},{"id":"ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow","path":"/ai/computer-vision-cv/mnist-for-ml-beginners-tensorflow","sidebar":"tutorialSidebar"},{"id":"ai/computer-vision-cv/model-building-stages","path":"/ai/computer-vision-cv/model-building-stages","sidebar":"tutorialSidebar"},{"id":"ai/computer-vision-cv/others","path":"/ai/computer-vision-cv/others","sidebar":"tutorialSidebar"},{"id":"ai/computer-vision-cv/pre-trained-models","path":"/ai/computer-vision-cv/pre-trained-models","sidebar":"tutorialSidebar"},{"id":"ai/computer-vision-cv/readme","path":"/ai/computer-vision-cv/","sidebar":"tutorialSidebar"},{"id":"ai/data-science/data-analysis","path":"/ai/data-science/data-analysis","sidebar":"tutorialSidebar"},{"id":"ai/data-science/data-governance","path":"/ai/data-science/data-governance","sidebar":"tutorialSidebar"},{"id":"ai/data-science/data-mining","path":"/ai/data-science/data-mining","sidebar":"tutorialSidebar"},{"id":"ai/data-science/datasets","path":"/ai/data-science/datasets","sidebar":"tutorialSidebar"},{"id":"ai/data-science/intro","path":"/ai/data-science/intro","sidebar":"tutorialSidebar"},{"id":"ai/data-science/questions","path":"/ai/data-science/questions","sidebar":"tutorialSidebar"},{"id":"ai/data-science/readme","path":"/ai/data-science/","sidebar":"tutorialSidebar"},{"id":"ai/data-science/recommender-system","path":"/ai/data-science/recommender-system","sidebar":"tutorialSidebar"},{"id":"ai/data-science/statistics","path":"/ai/data-science/statistics","sidebar":"tutorialSidebar"},{"id":"ai/data-science/topics","path":"/ai/data-science/topics","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/bi-tools","path":"/ai/data-visualization/bi-tools","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/charts","path":"/ai/data-visualization/charts","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/d3-data-driven-documents","path":"/ai/data-visualization/d3-data-driven-documents","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/intro","path":"/ai/data-visualization/intro","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/matplotlib","path":"/ai/data-visualization/matplotlib","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/metabase","path":"/ai/data-visualization/metabase","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/plotly","path":"/ai/data-visualization/plotly","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/powerbi","path":"/ai/data-visualization/powerbi","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/readme","path":"/ai/data-visualization/","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/tableau/architecture-components","path":"/ai/data-visualization/tableau/architecture-components","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/tableau/augmented-analytics","path":"/ai/data-visualization/tableau/augmented-analytics","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/tableau/concepts","path":"/ai/data-visualization/tableau/concepts","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/tableau/dashboarding","path":"/ai/data-visualization/tableau/dashboarding","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/tableau/data-model","path":"/ai/data-visualization/tableau/data-model","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/tableau/data-sources","path":"/ai/data-visualization/tableau/data-sources","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/tableau/others","path":"/ai/data-visualization/tableau/others","sidebar":"tutorialSidebar"},{"id":"ai/data-visualization/tableau/readme","path":"/ai/data-visualization/tableau/","sidebar":"tutorialSidebar"},{"id":"ai/deep-learning/commands","path":"/ai/deep-learning/commands","sidebar":"tutorialSidebar"},{"id":"ai/deep-learning/components","path":"/ai/deep-learning/components","sidebar":"tutorialSidebar"},{"id":"ai/deep-learning/dl-specialization","path":"/ai/deep-learning/dl-specialization","sidebar":"tutorialSidebar"},{"id":"ai/deep-learning/neural-network-and-deep-learning","path":"/ai/deep-learning/neural-network-and-deep-learning","sidebar":"tutorialSidebar"},{"id":"ai/deep-learning/others","path":"/ai/deep-learning/others","sidebar":"tutorialSidebar"},{"id":"ai/deep-learning/readme","path":"/ai/deep-learning/","sidebar":"tutorialSidebar"},{"id":"ai/deep-learning/resources","path":"/ai/deep-learning/resources","sidebar":"tutorialSidebar"},{"id":"ai/deep-learning/roadmap","path":"/ai/deep-learning/roadmap","sidebar":"tutorialSidebar"},{"id":"ai/hackathons","path":"/ai/hackathons","sidebar":"tutorialSidebar"},{"id":"ai/libraries/aws-sagemaker","path":"/ai/libraries/aws-sagemaker","sidebar":"tutorialSidebar"},{"id":"ai/libraries/deep-learning-frameworks","path":"/ai/libraries/deep-learning-frameworks","sidebar":"tutorialSidebar"},{"id":"ai/libraries/distributed-training","path":"/ai/libraries/distributed-training","sidebar":"tutorialSidebar"},{"id":"ai/libraries/jax","path":"/ai/libraries/jax","sidebar":"tutorialSidebar"},{"id":"ai/libraries/keras","path":"/ai/libraries/keras","sidebar":"tutorialSidebar"},{"id":"ai/libraries/ml-libraries","path":"/ai/libraries/ml-libraries","sidebar":"tutorialSidebar"},{"id":"ai/libraries/ml-monitoring","path":"/ai/libraries/ml-monitoring","sidebar":"tutorialSidebar"},{"id":"ai/libraries/mlops-model-deployment","path":"/ai/libraries/mlops-model-deployment","sidebar":"tutorialSidebar"},{"id":"ai/libraries/readme","path":"/ai/libraries/","sidebar":"tutorialSidebar"},{"id":"ai/libraries/tensorflow/core-tensorflow","path":"/ai/libraries/tensorflow/core-tensorflow","sidebar":"tutorialSidebar"},{"id":"ai/libraries/tensorflow/estimator-api","path":"/ai/libraries/tensorflow/estimator-api","sidebar":"tutorialSidebar"},{"id":"ai/libraries/tensorflow/intro","path":"/ai/libraries/tensorflow/intro","sidebar":"tutorialSidebar"},{"id":"ai/libraries/tensorflow/readme","path":"/ai/libraries/tensorflow/","sidebar":"tutorialSidebar"},{"id":"ai/libraries/tools","path":"/ai/libraries/tools","sidebar":"tutorialSidebar"},{"id":"ai/llm/code-generators","path":"/ai/llm/code-generators","sidebar":"tutorialSidebar"},{"id":"ai/llm/design-patterns","path":"/ai/llm/design-patterns","sidebar":"tutorialSidebar"},{"id":"ai/llm/fintech-use-cases","path":"/ai/llm/fintech-use-cases","sidebar":"tutorialSidebar"},{"id":"ai/llm/genai-projects","path":"/ai/llm/genai-projects","sidebar":"tutorialSidebar"},{"id":"ai/llm/interview-questions","path":"/ai/llm/interview-questions","sidebar":"tutorialSidebar"},{"id":"ai/llm/intro","path":"/ai/llm/intro","sidebar":"tutorialSidebar"},{"id":"ai/llm/libraries","path":"/ai/llm/libraries","sidebar":"tutorialSidebar"},{"id":"ai/llm/limitations-problems","path":"/ai/llm/limitations-problems","sidebar":"tutorialSidebar"},{"id":"ai/llm/llm-building","path":"/ai/llm/llm-building","sidebar":"tutorialSidebar"},{"id":"ai/llm/llm-tuning","path":"/ai/llm/llm-tuning","sidebar":"tutorialSidebar"},{"id":"ai/llm/models","path":"/ai/llm/models","sidebar":"tutorialSidebar"},{"id":"ai/llm/natural-language-to-sql","path":"/ai/llm/natural-language-to-sql","sidebar":"tutorialSidebar"},{"id":"ai/llm/prompt-engineering","path":"/ai/llm/prompt-engineering","sidebar":"tutorialSidebar"},{"id":"ai/llm/prompt-examples","path":"/ai/llm/prompt-examples","sidebar":"tutorialSidebar"},{"id":"ai/llm/rag-hackathon-questions","path":"/ai/llm/rag-hackathon-questions","sidebar":"tutorialSidebar"},{"id":"ai/llm/rag-retrieval-augmented-generation","path":"/ai/llm/rag-retrieval-augmented-generation","sidebar":"tutorialSidebar"},{"id":"ai/llm/readme","path":"/ai/llm/","sidebar":"tutorialSidebar"},{"id":"ai/llm/tools","path":"/ai/llm/tools","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/artificial-neural-networks","path":"/ai/ml-algorithms/artificial-neural-networks","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/association-rules-and-apriori-algorithm","path":"/ai/ml-algorithms/association-rules-and-apriori-algorithm","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/bagging-and-random-forest","path":"/ai/ml-algorithms/bagging-and-random-forest","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/bayes-classification","path":"/ai/ml-algorithms/bayes-classification","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/boosting-and-adaboost","path":"/ai/ml-algorithms/boosting-and-adaboost","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/classification","path":"/ai/ml-algorithms/classification","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/clustering","path":"/ai/ml-algorithms/clustering","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/decision-tree","path":"/ai/ml-algorithms/decision-tree","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/dimensionality-reduction","path":"/ai/ml-algorithms/dimensionality-reduction","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/embeddings-and-estimators","path":"/ai/ml-algorithms/embeddings-and-estimators","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/ensemble-algorithms","path":"/ai/ml-algorithms/ensemble-algorithms","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/feature-engineering","path":"/ai/ml-algorithms/feature-engineering","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/generative-adversarial-networks-gans","path":"/ai/ml-algorithms/generative-adversarial-networks-gans","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/graph-neural-networks-gnn","path":"/ai/ml-algorithms/graph-neural-networks-gnn","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/id3-c45-and-chaid","path":"/ai/ml-algorithms/id3-c45-and-chaid","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/k-nearest-neighbor-knn","path":"/ai/ml-algorithms/k-nearest-neighbor-knn","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/learning-vector-quantization-lvq","path":"/ai/ml-algorithms/learning-vector-quantization-lvq","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/linear-discriminant-analysis-lda","path":"/ai/ml-algorithms/linear-discriminant-analysis-lda","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/linear-regression","path":"/ai/ml-algorithms/linear-regression","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/logistic-regression","path":"/ai/ml-algorithms/logistic-regression","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics","path":"/ai/ml-algorithms/machine-learning-algorithm-k-means-using-map-reduce-for-big-data-analytics","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/non-linear-regression","path":"/ai/ml-algorithms/non-linear-regression","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/others","path":"/ai/ml-algorithms/others","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis","path":"/ai/ml-algorithms/parallel-k-means-using-map-reduce-on-big-data-cluster-analysis","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/predictive-analytics-1","path":"/ai/ml-algorithms/predictive-analytics-1","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/predictive-analytics-2","path":"/ai/ml-algorithms/predictive-analytics-2","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/readme","path":"/ai/ml-algorithms/","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/regression","path":"/ai/ml-algorithms/regression","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/regularization","path":"/ai/ml-algorithms/regularization","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/rule-generation-and-pattern-evaluation","path":"/ai/ml-algorithms/rule-generation-and-pattern-evaluation","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/support-vector-machine-svm","path":"/ai/ml-algorithms/support-vector-machine-svm","sidebar":"tutorialSidebar"},{"id":"ai/ml-algorithms/vector-embeddings","path":"/ai/ml-algorithms/vector-embeddings","sidebar":"tutorialSidebar"},{"id":"ai/ml-fundamentals/andrew-ng","path":"/ai/ml-fundamentals/andrew-ng","sidebar":"tutorialSidebar"},{"id":"ai/ml-fundamentals/intro","path":"/ai/ml-fundamentals/intro","sidebar":"tutorialSidebar"},{"id":"ai/ml-fundamentals/loss-function","path":"/ai/ml-fundamentals/loss-function","sidebar":"tutorialSidebar"},{"id":"ai/ml-fundamentals/ml-classification","path":"/ai/ml-fundamentals/ml-classification","sidebar":"tutorialSidebar"},{"id":"ai/ml-fundamentals/ml-process","path":"/ai/ml-fundamentals/ml-process","sidebar":"tutorialSidebar"},{"id":"ai/ml-fundamentals/neural-networks","path":"/ai/ml-fundamentals/neural-networks","sidebar":"tutorialSidebar"},{"id":"ai/ml-fundamentals/neural-networks-3b1b","path":"/ai/ml-fundamentals/neural-networks-3b1b","sidebar":"tutorialSidebar"},{"id":"ai/ml-fundamentals/practical-ai-problems","path":"/ai/ml-fundamentals/practical-ai-problems","sidebar":"tutorialSidebar"},{"id":"ai/ml-fundamentals/preliminaries","path":"/ai/ml-fundamentals/preliminaries","sidebar":"tutorialSidebar"},{"id":"ai/ml-fundamentals/questions","path":"/ai/ml-fundamentals/questions","sidebar":"tutorialSidebar"},{"id":"ai/ml-fundamentals/readme","path":"/ai/ml-fundamentals/","sidebar":"tutorialSidebar"},{"id":"ai/ml-fundamentals/table-of-contents","path":"/ai/ml-fundamentals/table-of-contents","sidebar":"tutorialSidebar"},{"id":"ai/model-evaluation/bias-variance-trade-off","path":"/ai/model-evaluation/bias-variance-trade-off","sidebar":"tutorialSidebar"},{"id":"ai/model-evaluation/confusion-matrix","path":"/ai/model-evaluation/confusion-matrix","sidebar":"tutorialSidebar"},{"id":"ai/model-evaluation/evaluation","path":"/ai/model-evaluation/evaluation","sidebar":"tutorialSidebar"},{"id":"ai/model-evaluation/generalization-and-sampling","path":"/ai/model-evaluation/generalization-and-sampling","sidebar":"tutorialSidebar"},{"id":"ai/model-evaluation/model-validation-monitoring","path":"/ai/model-evaluation/model-validation-monitoring","sidebar":"tutorialSidebar"},{"id":"ai/model-evaluation/optimization","path":"/ai/model-evaluation/optimization","sidebar":"tutorialSidebar"},{"id":"ai/model-evaluation/others","path":"/ai/model-evaluation/others","sidebar":"tutorialSidebar"},{"id":"ai/model-evaluation/readme","path":"/ai/model-evaluation/","sidebar":"tutorialSidebar"},{"id":"ai/move-37/1-markov-decision-process","path":"/ai/move-37/1-markov-decision-process","sidebar":"tutorialSidebar"},{"id":"ai/move-37/2-dynamic-programming","path":"/ai/move-37/2-dynamic-programming","sidebar":"tutorialSidebar"},{"id":"ai/move-37/3-monte-carlo-methods","path":"/ai/move-37/3-monte-carlo-methods","sidebar":"tutorialSidebar"},{"id":"ai/move-37/4-model-free-learning","path":"/ai/move-37/4-model-free-learning","sidebar":"tutorialSidebar"},{"id":"ai/move-37/5-rl-in-continuous-space","path":"/ai/move-37/5-rl-in-continuous-space","sidebar":"tutorialSidebar"},{"id":"ai/move-37/algorithms","path":"/ai/move-37/algorithms","sidebar":"tutorialSidebar"},{"id":"ai/move-37/open-ai-gym","path":"/ai/move-37/open-ai-gym","sidebar":"tutorialSidebar"},{"id":"ai/move-37/others","path":"/ai/move-37/others","sidebar":"tutorialSidebar"},{"id":"ai/move-37/q-learning-algorithms","path":"/ai/move-37/q-learning-algorithms","sidebar":"tutorialSidebar"},{"id":"ai/move-37/quizzes","path":"/ai/move-37/quizzes","sidebar":"tutorialSidebar"},{"id":"ai/move-37/readme","path":"/ai/move-37/","sidebar":"tutorialSidebar"},{"id":"ai/move-37/reinforcement-learning","path":"/ai/move-37/reinforcement-learning","sidebar":"tutorialSidebar"},{"id":"ai/move-37/syllabus","path":"/ai/move-37/syllabus","sidebar":"tutorialSidebar"},{"id":"ai/nlp/chatbot-chatops","path":"/ai/nlp/chatbot-chatops","sidebar":"tutorialSidebar"},{"id":"ai/nlp/chatbot-saas","path":"/ai/nlp/chatbot-saas","sidebar":"tutorialSidebar"},{"id":"ai/nlp/intro","path":"/ai/nlp/intro","sidebar":"tutorialSidebar"},{"id":"ai/nlp/nlp-concepts","path":"/ai/nlp/nlp-concepts","sidebar":"tutorialSidebar"},{"id":"ai/nlp/nltk","path":"/ai/nlp/nltk","sidebar":"tutorialSidebar"},{"id":"ai/nlp/readme","path":"/ai/nlp/","sidebar":"tutorialSidebar"},{"id":"ai/nlp/word-embedding-to-transformers","path":"/ai/nlp/word-embedding-to-transformers","sidebar":"tutorialSidebar"},{"id":"ai/numpy/cheatsheet","path":"/ai/numpy/cheatsheet","sidebar":"tutorialSidebar"},{"id":"ai/numpy/data-types","path":"/ai/numpy/data-types","sidebar":"tutorialSidebar"},{"id":"ai/numpy/internals","path":"/ai/numpy/internals","sidebar":"tutorialSidebar"},{"id":"ai/numpy/intro","path":"/ai/numpy/intro","sidebar":"tutorialSidebar"},{"id":"ai/numpy/ndarray-object","path":"/ai/numpy/ndarray-object","sidebar":"tutorialSidebar"},{"id":"ai/numpy/numpy-reference","path":"/ai/numpy/numpy-reference","sidebar":"tutorialSidebar"},{"id":"ai/numpy/readme","path":"/ai/numpy/","sidebar":"tutorialSidebar"},{"id":"ai/others-resources-interview-learning-courses","path":"/ai/others-resources-interview-learning-courses","sidebar":"tutorialSidebar"},{"id":"ai/pandas/cheatsheet","path":"/ai/pandas/cheatsheet","sidebar":"tutorialSidebar"},{"id":"ai/pandas/commands","path":"/ai/pandas/commands","sidebar":"tutorialSidebar"},{"id":"ai/pandas/data-structures","path":"/ai/pandas/data-structures","sidebar":"tutorialSidebar"},{"id":"ai/pandas/examples","path":"/ai/pandas/examples","sidebar":"tutorialSidebar"},{"id":"ai/pandas/others","path":"/ai/pandas/others","sidebar":"tutorialSidebar"},{"id":"ai/pandas/pandas-intro","path":"/ai/pandas/pandas-intro","sidebar":"tutorialSidebar"},{"id":"ai/pandas/readme","path":"/ai/pandas/","sidebar":"tutorialSidebar"},{"id":"ai/pandas/user_guide","path":"/ai/pandas/user_guide","sidebar":"tutorialSidebar"},{"id":"ai/readme","path":"/ai/","sidebar":"tutorialSidebar"},{"id":"ai/scikit-learn/commands","path":"/ai/scikit-learn/commands","sidebar":"tutorialSidebar"},{"id":"ai/scikit-learn/intro","path":"/ai/scikit-learn/intro","sidebar":"tutorialSidebar"},{"id":"ai/scikit-learn/others","path":"/ai/scikit-learn/others","sidebar":"tutorialSidebar"},{"id":"ai/scikit-learn/readme","path":"/ai/scikit-learn/","sidebar":"tutorialSidebar"},{"id":"ai/scikit-learn/scipy-cheatsheet","path":"/ai/scikit-learn/scipy-cheatsheet","sidebar":"tutorialSidebar"},{"id":"ai/scikit-learn/scipy-intro","path":"/ai/scikit-learn/scipy-intro","sidebar":"tutorialSidebar"},{"id":"ai/social-media-analytics-solution","path":"/ai/social-media-analytics-solution","sidebar":"tutorialSidebar"},{"id":"ai/solutions","path":"/ai/solutions","sidebar":"tutorialSidebar"},{"id":"algorithms/advanced-algorithms/a-search-algorithm","path":"/algorithms/advanced-algorithms/a-search-algorithm","sidebar":"tutorialSidebar"},{"id":"algorithms/advanced-algorithms/automated-planning-and-scheduling","path":"/algorithms/advanced-algorithms/automated-planning-and-scheduling","sidebar":"tutorialSidebar"},{"id":"algorithms/advanced-algorithms/disk-scheduling-algorithms","path":"/algorithms/advanced-algorithms/disk-scheduling-algorithms","sidebar":"tutorialSidebar"},{"id":"algorithms/advanced-algorithms/informed-search-algorithms","path":"/algorithms/advanced-algorithms/informed-search-algorithms","sidebar":"tutorialSidebar"},{"id":"algorithms/advanced-algorithms/intractability","path":"/algorithms/advanced-algorithms/intractability","sidebar":"tutorialSidebar"},{"id":"algorithms/advanced-algorithms/linear-programming","path":"/algorithms/advanced-algorithms/linear-programming","sidebar":"tutorialSidebar"},{"id":"algorithms/advanced-algorithms/multi-armed-bandit-mab","path":"/algorithms/advanced-algorithms/multi-armed-bandit-mab","sidebar":"tutorialSidebar"},{"id":"algorithms/advanced-algorithms/others","path":"/algorithms/advanced-algorithms/others","sidebar":"tutorialSidebar"},{"id":"algorithms/advanced-algorithms/principle-of-deferred-decisions","path":"/algorithms/advanced-algorithms/principle-of-deferred-decisions","sidebar":"tutorialSidebar"},{"id":"algorithms/advanced-algorithms/readme","path":"/algorithms/advanced-algorithms/","sidebar":"tutorialSidebar"},{"id":"algorithms/advanced-algorithms/reductions","path":"/algorithms/advanced-algorithms/reductions","sidebar":"tutorialSidebar"},{"id":"algorithms/advanced-algorithms/regular-expressions","path":"/algorithms/advanced-algorithms/regular-expressions","sidebar":"tutorialSidebar"},{"id":"algorithms/advanced-algorithms/travelling-salesman-problem","path":"/algorithms/advanced-algorithms/travelling-salesman-problem","sidebar":"tutorialSidebar"},{"id":"algorithms/algorithmic-complexity/analysis-of-algorithms","path":"/algorithms/algorithmic-complexity/analysis-of-algorithms","sidebar":"tutorialSidebar"},{"id":"algorithms/algorithmic-complexity/complexity-zoo","path":"/algorithms/algorithmic-complexity/complexity-zoo","sidebar":"tutorialSidebar"},{"id":"algorithms/algorithmic-complexity/computational-complexity-theory","path":"/algorithms/algorithmic-complexity/computational-complexity-theory","sidebar":"tutorialSidebar"},{"id":"algorithms/algorithmic-complexity/finite-state-machine","path":"/algorithms/algorithmic-complexity/finite-state-machine","sidebar":"tutorialSidebar"},{"id":"algorithms/algorithmic-complexity/halting-problem","path":"/algorithms/algorithmic-complexity/halting-problem","sidebar":"tutorialSidebar"},{"id":"algorithms/algorithmic-complexity/np-hardness","path":"/algorithms/algorithmic-complexity/np-hardness","sidebar":"tutorialSidebar"},{"id":"algorithms/algorithmic-complexity/readme","path":"/algorithms/algorithmic-complexity/","sidebar":"tutorialSidebar"},{"id":"algorithms/algorithmic-complexity/sub-linear-time","path":"/algorithms/algorithmic-complexity/sub-linear-time","sidebar":"tutorialSidebar"},{"id":"algorithms/algorithmic-complexity/time-complexities","path":"/algorithms/algorithmic-complexity/time-complexities","sidebar":"tutorialSidebar"},{"id":"algorithms/algorithmic-complexity/turing-vs-non-turing-machine","path":"/algorithms/algorithmic-complexity/turing-vs-non-turing-machine","sidebar":"tutorialSidebar"},{"id":"algorithms/bit-manipulation/examples","path":"/algorithms/bit-manipulation/examples","sidebar":"tutorialSidebar"},{"id":"algorithms/bit-manipulation/general","path":"/algorithms/bit-manipulation/general","sidebar":"tutorialSidebar"},{"id":"algorithms/bit-manipulation/readme","path":"/algorithms/bit-manipulation/","sidebar":"tutorialSidebar"},{"id":"algorithms/complex-systems/game-theory","path":"/algorithms/complex-systems/game-theory","sidebar":"tutorialSidebar"},{"id":"algorithms/complex-systems/intro","path":"/algorithms/complex-systems/intro","sidebar":"tutorialSidebar"},{"id":"algorithms/complex-systems/minimax-algorithm","path":"/algorithms/complex-systems/minimax-algorithm","sidebar":"tutorialSidebar"},{"id":"algorithms/complex-systems/move-by-nature","path":"/algorithms/complex-systems/move-by-nature","sidebar":"tutorialSidebar"},{"id":"algorithms/complex-systems/others","path":"/algorithms/complex-systems/others","sidebar":"tutorialSidebar"},{"id":"algorithms/complex-systems/readme","path":"/algorithms/complex-systems/","sidebar":"tutorialSidebar"},{"id":"algorithms/data-compression/bitmap-compression-algorithms","path":"/algorithms/data-compression/bitmap-compression-algorithms","sidebar":"tutorialSidebar"},{"id":"algorithms/data-compression/huffman-compression","path":"/algorithms/data-compression/huffman-compression","sidebar":"tutorialSidebar"},{"id":"algorithms/data-compression/intro","path":"/algorithms/data-compression/intro","sidebar":"tutorialSidebar"},{"id":"algorithms/data-compression/lzw-compression","path":"/algorithms/data-compression/lzw-compression","sidebar":"tutorialSidebar"},{"id":"algorithms/data-compression/others","path":"/algorithms/data-compression/others","sidebar":"tutorialSidebar"},{"id":"algorithms/data-compression/readme","path":"/algorithms/data-compression/","sidebar":"tutorialSidebar"},{"id":"algorithms/data-compression/run-length-encoding","path":"/algorithms/data-compression/run-length-encoding","sidebar":"tutorialSidebar"},{"id":"algorithms/dynamic-programming/basic-gold-mines","path":"/algorithms/dynamic-programming/basic-gold-mines","sidebar":"tutorialSidebar"},{"id":"algorithms/dynamic-programming/greedy-algorithms","path":"/algorithms/dynamic-programming/greedy-algorithms","sidebar":"tutorialSidebar"},{"id":"algorithms/dynamic-programming/how-to-find-dp","path":"/algorithms/dynamic-programming/how-to-find-dp","sidebar":"tutorialSidebar"},{"id":"algorithms/dynamic-programming/intro","path":"/algorithms/dynamic-programming/intro","sidebar":"tutorialSidebar"},{"id":"algorithms/dynamic-programming/knapsack-problem","path":"/algorithms/dynamic-programming/knapsack-problem","sidebar":"tutorialSidebar"},{"id":"algorithms/dynamic-programming/levenshtein-distance-or-edit-distance","path":"/algorithms/dynamic-programming/levenshtein-distance-or-edit-distance","sidebar":"tutorialSidebar"},{"id":"algorithms/dynamic-programming/readme","path":"/algorithms/dynamic-programming/","sidebar":"tutorialSidebar"},{"id":"algorithms/general/1d-range-search","path":"/algorithms/general/1d-range-search","sidebar":"tutorialSidebar"},{"id":"algorithms/general/2d-orthogonal-range-search","path":"/algorithms/general/2d-orthogonal-range-search","sidebar":"tutorialSidebar"},{"id":"algorithms/general/algo-ds","path":"/algorithms/general/algo-ds","sidebar":"tutorialSidebar"},{"id":"algorithms/general/algorithms-questions","path":"/algorithms/general/algorithms-questions","sidebar":"tutorialSidebar"},{"id":"algorithms/general/appel-algorithm","path":"/algorithms/general/appel-algorithm","sidebar":"tutorialSidebar"},{"id":"algorithms/general/competitive-programming","path":"/algorithms/general/competitive-programming","sidebar":"tutorialSidebar"},{"id":"algorithms/general/euclidean-algorithm-gcd","path":"/algorithms/general/euclidean-algorithm-gcd","sidebar":"tutorialSidebar"},{"id":"algorithms/general/flocking-boids-algorithm","path":"/algorithms/general/flocking-boids-algorithm","sidebar":"tutorialSidebar"},{"id":"algorithms/general/knuth-shuffle","path":"/algorithms/general/knuth-shuffle","sidebar":"tutorialSidebar"},{"id":"algorithms/general/list-of-algorithms","path":"/algorithms/general/list-of-algorithms","sidebar":"tutorialSidebar"},{"id":"algorithms/general/n-queens-problem","path":"/algorithms/general/n-queens-problem","sidebar":"tutorialSidebar"},{"id":"algorithms/general/orthogonal-rectangle-intersection-search","path":"/algorithms/general/orthogonal-rectangle-intersection-search","sidebar":"tutorialSidebar"},{"id":"algorithms/general/prime-factorization","path":"/algorithms/general/prime-factorization","sidebar":"tutorialSidebar"},{"id":"algorithms/general/quick-select","path":"/algorithms/general/quick-select","sidebar":"tutorialSidebar"},{"id":"algorithms/general/readme","path":"/algorithms/general/","sidebar":"tutorialSidebar"},{"id":"algorithms/general/recursion","path":"/algorithms/general/recursion","sidebar":"tutorialSidebar"},{"id":"algorithms/general/reverse-polish-notation-postfix-notation","path":"/algorithms/general/reverse-polish-notation-postfix-notation","sidebar":"tutorialSidebar"},{"id":"algorithms/general/sweep-line-algorithm","path":"/algorithms/general/sweep-line-algorithm","sidebar":"tutorialSidebar"},{"id":"algorithms/general/two-stack-algorithm","path":"/algorithms/general/two-stack-algorithm","sidebar":"tutorialSidebar"},{"id":"algorithms/general/types-of-algorithms","path":"/algorithms/general/types-of-algorithms","sidebar":"tutorialSidebar"},{"id":"algorithms/general/union-find-algorithm","path":"/algorithms/general/union-find-algorithm","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/acyclic-edge-weighted-digraphs","path":"/algorithms/graphtheory/acyclic-edge-weighted-digraphs","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/bellman-ford-algorithm","path":"/algorithms/graphtheory/bellman-ford-algorithm","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/breadth-first-search-bfs","path":"/algorithms/graphtheory/breadth-first-search-bfs","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/connected-components","path":"/algorithms/graphtheory/connected-components","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/depth-first-search-dfs","path":"/algorithms/graphtheory/depth-first-search-dfs","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/dijkstra-algorithm","path":"/algorithms/graphtheory/dijkstra-algorithm","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/eulerian-trail","path":"/algorithms/graphtheory/eulerian-trail","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/ford-fulkerson-algorithm","path":"/algorithms/graphtheory/ford-fulkerson-algorithm","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/graph-search","path":"/algorithms/graphtheory/graph-search","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/intro","path":"/algorithms/graphtheory/intro","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/kruskal-algorithm-for-mst","path":"/algorithms/graphtheory/kruskal-algorithm-for-mst","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/longest-path-in-edge-weighted-dags","path":"/algorithms/graphtheory/longest-path-in-edge-weighted-dags","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/maximum-flow-and-minimum-cut","path":"/algorithms/graphtheory/maximum-flow-and-minimum-cut","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/minimum-spanning-tree","path":"/algorithms/graphtheory/minimum-spanning-tree","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/other-graph-algorithms","path":"/algorithms/graphtheory/other-graph-algorithms","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/prim-algorithm-for-mst","path":"/algorithms/graphtheory/prim-algorithm-for-mst","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/problems","path":"/algorithms/graphtheory/problems","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/readme","path":"/algorithms/graphtheory/","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/resources","path":"/algorithms/graphtheory/resources","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/seam-carving","path":"/algorithms/graphtheory/seam-carving","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/shortest-path-algorithms","path":"/algorithms/graphtheory/shortest-path-algorithms","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/strong-components","path":"/algorithms/graphtheory/strong-components","sidebar":"tutorialSidebar"},{"id":"algorithms/graphtheory/topological-sort-algorithm","path":"/algorithms/graphtheory/topological-sort-algorithm","sidebar":"tutorialSidebar"},{"id":"algorithms/mathematics/combinatorial-optimization","path":"/algorithms/mathematics/combinatorial-optimization","sidebar":"tutorialSidebar"},{"id":"algorithms/mathematics/mo-algorithm","path":"/algorithms/mathematics/mo-algorithm","sidebar":"tutorialSidebar"},{"id":"algorithms/mathematics/powerset","path":"/algorithms/mathematics/powerset","sidebar":"tutorialSidebar"},{"id":"algorithms/mathematics/readme","path":"/algorithms/mathematics/","sidebar":"tutorialSidebar"},{"id":"algorithms/readme","path":"/algorithms/","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/3-way-quick-sort","path":"/algorithms/searching-sorting/3-way-quick-sort","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/3-way-string-radix-quicksort","path":"/algorithms/searching-sorting/3-way-string-radix-quicksort","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/binary-search","path":"/algorithms/searching-sorting/binary-search","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/convex-hull","path":"/algorithms/searching-sorting/convex-hull","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/external-sort","path":"/algorithms/searching-sorting/external-sort","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/heapsort","path":"/algorithms/searching-sorting/heapsort","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/insertion-sort","path":"/algorithms/searching-sorting/insertion-sort","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/intro","path":"/algorithms/searching-sorting/intro","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/key-indexed-counting","path":"/algorithms/searching-sorting/key-indexed-counting","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/knuth-shuffle","path":"/algorithms/searching-sorting/knuth-shuffle","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/lsd-radix-sort","path":"/algorithms/searching-sorting/lsd-radix-sort","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/merge-sort","path":"/algorithms/searching-sorting/merge-sort","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/msd-radix-sort","path":"/algorithms/searching-sorting/msd-radix-sort","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/others","path":"/algorithms/searching-sorting/others","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/quick-sort","path":"/algorithms/searching-sorting/quick-sort","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/readme","path":"/algorithms/searching-sorting/","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/selection-sort","path":"/algorithms/searching-sorting/selection-sort","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/shell-sort","path":"/algorithms/searching-sorting/shell-sort","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/shuffle-sort","path":"/algorithms/searching-sorting/shuffle-sort","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/system-sort","path":"/algorithms/searching-sorting/system-sort","sidebar":"tutorialSidebar"},{"id":"algorithms/searching-sorting/timsort","path":"/algorithms/searching-sorting/timsort","sidebar":"tutorialSidebar"},{"id":"algorithms/string-algorithms/boyer-moore","path":"/algorithms/string-algorithms/boyer-moore","sidebar":"tutorialSidebar"},{"id":"algorithms/string-algorithms/brute-force","path":"/algorithms/string-algorithms/brute-force","sidebar":"tutorialSidebar"},{"id":"algorithms/string-algorithms/intro","path":"/algorithms/string-algorithms/intro","sidebar":"tutorialSidebar"},{"id":"algorithms/string-algorithms/knuth-morris-pratt","path":"/algorithms/string-algorithms/knuth-morris-pratt","sidebar":"tutorialSidebar"},{"id":"algorithms/string-algorithms/longest-common-prefix","path":"/algorithms/string-algorithms/longest-common-prefix","sidebar":"tutorialSidebar"},{"id":"algorithms/string-algorithms/rabin-karp","path":"/algorithms/string-algorithms/rabin-karp","sidebar":"tutorialSidebar"},{"id":"algorithms/string-algorithms/readme","path":"/algorithms/string-algorithms/","sidebar":"tutorialSidebar"},{"id":"algorithms/string-algorithms/substring-search-intro","path":"/algorithms/string-algorithms/substring-search-intro","sidebar":"tutorialSidebar"},{"id":"book-summaries/13-things-mentally-strong-parents-dont-do","path":"/book-summaries/13-things-mentally-strong-parents-dont-do","sidebar":"tutorialSidebar"},{"id":"book-summaries/13-things-mentally-strong-people-dont-do","path":"/book-summaries/13-things-mentally-strong-people-dont-do","sidebar":"tutorialSidebar"},{"id":"book-summaries/48-laws-of-power","path":"/book-summaries/48-laws-of-power","sidebar":"tutorialSidebar"},{"id":"book-summaries/7-powers-the-foundations-of-business-strategy","path":"/book-summaries/7-powers-the-foundations-of-business-strategy","sidebar":"tutorialSidebar"},{"id":"book-summaries/alchemy-the-surprising-power-of-ideas-that-dont-make-sense","path":"/book-summaries/alchemy-the-surprising-power-of-ideas-that-dont-make-sense","sidebar":"tutorialSidebar"},{"id":"book-summaries/atomic-habits","path":"/book-summaries/atomic-habits","sidebar":"tutorialSidebar"},{"id":"book-summaries/books-blinkist-productivity","path":"/book-summaries/books-blinkist-productivity","sidebar":"tutorialSidebar"},{"id":"book-summaries/books-to-read","path":"/book-summaries/books-to-read","sidebar":"tutorialSidebar"},{"id":"book-summaries/chasing-excellence","path":"/book-summaries/chasing-excellence","sidebar":"tutorialSidebar"},{"id":"book-summaries/collaborative-intelligence","path":"/book-summaries/collaborative-intelligence","sidebar":"tutorialSidebar"},{"id":"book-summaries/david-and-goliath","path":"/book-summaries/david-and-goliath","sidebar":"tutorialSidebar"},{"id":"book-summaries/deep-work","path":"/book-summaries/deep-work","sidebar":"tutorialSidebar"},{"id":"book-summaries/didnt-see-it-coming","path":"/book-summaries/didnt-see-it-coming","sidebar":"tutorialSidebar"},{"id":"book-summaries/do-hard-things","path":"/book-summaries/do-hard-things","sidebar":"tutorialSidebar"},{"id":"book-summaries/doing-good-better","path":"/book-summaries/doing-good-better","sidebar":"tutorialSidebar"},{"id":"book-summaries/dollars-and-sense","path":"/book-summaries/dollars-and-sense","sidebar":"tutorialSidebar"},{"id":"book-summaries/doughnut-economics","path":"/book-summaries/doughnut-economics","sidebar":"tutorialSidebar"},{"id":"book-summaries/economics-for-the-common-good","path":"/book-summaries/economics-for-the-common-good","sidebar":"tutorialSidebar"},{"id":"book-summaries/edge-of-chaos","path":"/book-summaries/edge-of-chaos","sidebar":"tutorialSidebar"},{"id":"book-summaries/essentialism","path":"/book-summaries/essentialism","sidebar":"tutorialSidebar"},{"id":"book-summaries/everyday-millionaires","path":"/book-summaries/everyday-millionaires","sidebar":"tutorialSidebar"},{"id":"book-summaries/find-your-element","path":"/book-summaries/find-your-element","sidebar":"tutorialSidebar"},{"id":"book-summaries/first-things-first","path":"/book-summaries/first-things-first","sidebar":"tutorialSidebar"},{"id":"book-summaries/from-strength-to-strength","path":"/book-summaries/from-strength-to-strength","sidebar":"tutorialSidebar"},{"id":"book-summaries/game-changers","path":"/book-summaries/game-changers","sidebar":"tutorialSidebar"},{"id":"book-summaries/get-it","path":"/book-summaries/get-it","sidebar":"tutorialSidebar"},{"id":"book-summaries/getting-things-done","path":"/book-summaries/getting-things-done","sidebar":"tutorialSidebar"},{"id":"book-summaries/good-economics-for-hard-times","path":"/book-summaries/good-economics-for-hard-times","sidebar":"tutorialSidebar"},{"id":"book-summaries/how-should-we-live","path":"/book-summaries/how-should-we-live","sidebar":"tutorialSidebar"},{"id":"book-summaries/how-to-be-a-stoic","path":"/book-summaries/how-to-be-a-stoic","sidebar":"tutorialSidebar"},{"id":"book-summaries/how-to-be-an-adult-in-relationships","path":"/book-summaries/how-to-be-an-adult-in-relationships","sidebar":"tutorialSidebar"},{"id":"book-summaries/how-to-have-impossible-conversations","path":"/book-summaries/how-to-have-impossible-conversations","sidebar":"tutorialSidebar"},{"id":"book-summaries/how-to-live-a-good-life","path":"/book-summaries/how-to-live-a-good-life","sidebar":"tutorialSidebar"},{"id":"book-summaries/how-to-make-money-in-stocks","path":"/book-summaries/how-to-make-money-in-stocks","sidebar":"tutorialSidebar"},{"id":"book-summaries/how-to-take-smart-notes","path":"/book-summaries/how-to-take-smart-notes","sidebar":"tutorialSidebar"},{"id":"book-summaries/hyperfocus","path":"/book-summaries/hyperfocus","sidebar":"tutorialSidebar"},{"id":"book-summaries/leaders-eat-last","path":"/book-summaries/leaders-eat-last","sidebar":"tutorialSidebar"},{"id":"book-summaries/leadership-and-the-rise-of-great-powers","path":"/book-summaries/leadership-and-the-rise-of-great-powers","sidebar":"tutorialSidebar"},{"id":"book-summaries/life-is-in-the-transitions","path":"/book-summaries/life-is-in-the-transitions","sidebar":"tutorialSidebar"},{"id":"book-summaries/off-the-clock","path":"/book-summaries/off-the-clock","sidebar":"tutorialSidebar"},{"id":"book-summaries/on-writing-well","path":"/book-summaries/on-writing-well","sidebar":"tutorialSidebar"},{"id":"book-summaries/organize-tomorrow-today","path":"/book-summaries/organize-tomorrow-today","sidebar":"tutorialSidebar"},{"id":"book-summaries/others","path":"/book-summaries/others","sidebar":"tutorialSidebar"},{"id":"book-summaries/power-and-prediction","path":"/book-summaries/power-and-prediction","sidebar":"tutorialSidebar"},{"id":"book-summaries/power-relationships","path":"/book-summaries/power-relationships","sidebar":"tutorialSidebar"},{"id":"book-summaries/power-sex-suicide","path":"/book-summaries/power-sex-suicide","sidebar":"tutorialSidebar"},{"id":"book-summaries/predictably-irrational","path":"/book-summaries/predictably-irrational","sidebar":"tutorialSidebar"},{"id":"book-summaries/primed-to-perform","path":"/book-summaries/primed-to-perform","sidebar":"tutorialSidebar"},{"id":"book-summaries/principles","path":"/book-summaries/principles","sidebar":"tutorialSidebar"},{"id":"book-summaries/readme","path":"/book-summaries/","sidebar":"tutorialSidebar"},{"id":"book-summaries/secrets-of-power-negotiating","path":"/book-summaries/secrets-of-power-negotiating","sidebar":"tutorialSidebar"},{"id":"book-summaries/sell-like-crazy","path":"/book-summaries/sell-like-crazy","sidebar":"tutorialSidebar"},{"id":"book-summaries/skin-in-the-game","path":"/book-summaries/skin-in-the-game","sidebar":"tutorialSidebar"},{"id":"book-summaries/small-is-beautiful","path":"/book-summaries/small-is-beautiful","sidebar":"tutorialSidebar"},{"id":"book-summaries/social-intelligence","path":"/book-summaries/social-intelligence","sidebar":"tutorialSidebar"},{"id":"book-summaries/solve-for-happy","path":"/book-summaries/solve-for-happy","sidebar":"tutorialSidebar"},{"id":"book-summaries/switch-on-your-brain","path":"/book-summaries/switch-on-your-brain","sidebar":"tutorialSidebar"},{"id":"book-summaries/talking-across-divide","path":"/book-summaries/talking-across-divide","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-22-immutable-laws-of-branding","path":"/book-summaries/the-22-immutable-laws-of-branding","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-3-minute-rule","path":"/book-summaries/the-3-minute-rule","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-4-agreements","path":"/book-summaries/the-4-agreements","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-4-hour-workweek","path":"/book-summaries/the-4-hour-workweek","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-5-am-club","path":"/book-summaries/the-5-am-club","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-almanack-of-naval-ravikant","path":"/book-summaries/the-almanack-of-naval-ravikant","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-art-of-impossible","path":"/book-summaries/the-art-of-impossible","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-art-of-logic","path":"/book-summaries/the-art-of-logic","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-book-of-joy","path":"/book-summaries/the-book-of-joy","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-courage-to-be-happy","path":"/book-summaries/the-courage-to-be-happy","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-dip","path":"/book-summaries/the-dip","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-distraction-addiction","path":"/book-summaries/the-distraction-addiction","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-elephant-in-the-brain","path":"/book-summaries/the-elephant-in-the-brain","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-grid","path":"/book-summaries/the-grid","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-knowledge-illusion","path":"/book-summaries/the-knowledge-illusion","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-life-you-can-save","path":"/book-summaries/the-life-you-can-save","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-organized-mind","path":"/book-summaries/the-organized-mind","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-path-between-us","path":"/book-summaries/the-path-between-us","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-power-of-concentration","path":"/book-summaries/the-power-of-concentration","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-power-of-regret","path":"/book-summaries/the-power-of-regret","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-science-of-selling","path":"/book-summaries/the-science-of-selling","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-seven-habits-of-highly-effective-people","path":"/book-summaries/the-seven-habits-of-highly-effective-people","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-slight-edge","path":"/book-summaries/the-slight-edge","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-squiggly-career","path":"/book-summaries/the-squiggly-career","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-status-game","path":"/book-summaries/the-status-game","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-tangled-tree","path":"/book-summaries/the-tangled-tree","sidebar":"tutorialSidebar"},{"id":"book-summaries/the-uninhabitable-earth","path":"/book-summaries/the-uninhabitable-earth","sidebar":"tutorialSidebar"},{"id":"book-summaries/think-again","path":"/book-summaries/think-again","sidebar":"tutorialSidebar"},{"id":"book-summaries/think-and-grow-rich","path":"/book-summaries/think-and-grow-rich","sidebar":"tutorialSidebar"},{"id":"book-summaries/thinking-fast-and-slow","path":"/book-summaries/thinking-fast-and-slow","sidebar":"tutorialSidebar"},{"id":"book-summaries/thinking-in-systems","path":"/book-summaries/thinking-in-systems","sidebar":"tutorialSidebar"},{"id":"book-summaries/time-and-how-to-spend-it","path":"/book-summaries/time-and-how-to-spend-it","sidebar":"tutorialSidebar"},{"id":"book-summaries/ultralearning","path":"/book-summaries/ultralearning","sidebar":"tutorialSidebar"},{"id":"book-summaries/what-philosophy-can-teach-you-about-being-a-better-leader","path":"/book-summaries/what-philosophy-can-teach-you-about-being-a-better-leader","sidebar":"tutorialSidebar"},{"id":"book-summaries/who-we-are-and-how-we-got-here","path":"/book-summaries/who-we-are-and-how-we-got-here","sidebar":"tutorialSidebar"},{"id":"cloud/aws/amazon-pinpoint","path":"/cloud/aws/amazon-pinpoint","sidebar":"tutorialSidebar"},{"id":"cloud/aws/analytics/amazon-athena","path":"/cloud/aws/analytics/amazon-athena","sidebar":"tutorialSidebar"},{"id":"cloud/aws/analytics/amazon-devops-guru","path":"/cloud/aws/analytics/amazon-devops-guru","sidebar":"tutorialSidebar"},{"id":"cloud/aws/analytics/amazon-kinesis","path":"/cloud/aws/analytics/amazon-kinesis","sidebar":"tutorialSidebar"},{"id":"cloud/aws/analytics/readme","path":"/cloud/aws/analytics/","sidebar":"tutorialSidebar"},{"id":"cloud/aws/aws-backup","path":"/cloud/aws/aws-backup","sidebar":"tutorialSidebar"},{"id":"cloud/aws/aws-competency-program","path":"/cloud/aws/aws-competency-program","sidebar":"tutorialSidebar"},{"id":"cloud/aws/aws-database-migration-service-dms","path":"/cloud/aws/aws-database-migration-service-dms","sidebar":"tutorialSidebar"},{"id":"cloud/aws/aws-glue","path":"/cloud/aws/aws-glue","sidebar":"tutorialSidebar"},{"id":"cloud/aws/aws-rekognition","path":"/cloud/aws/aws-rekognition","sidebar":"tutorialSidebar"},{"id":"cloud/aws/aws-services","path":"/cloud/aws/aws-services","sidebar":"tutorialSidebar"},{"id":"cloud/aws/aws-services-list","path":"/cloud/aws/aws-services-list","sidebar":"tutorialSidebar"},{"id":"cloud/aws/aws-sns","path":"/cloud/aws/aws-sns","sidebar":"tutorialSidebar"},{"id":"cloud/aws/aws-sqs","path":"/cloud/aws/aws-sqs","sidebar":"tutorialSidebar"},{"id":"cloud/aws/cli-commands","path":"/cloud/aws/cli-commands","sidebar":"tutorialSidebar"},{"id":"cloud/aws/compute/amazon-ecs","path":"/cloud/aws/compute/amazon-ecs","sidebar":"tutorialSidebar"},{"id":"cloud/aws/compute/amazon-eks","path":"/cloud/aws/compute/amazon-eks","sidebar":"tutorialSidebar"},{"id":"cloud/aws/compute/aws-lambda","path":"/cloud/aws/compute/aws-lambda","sidebar":"tutorialSidebar"},{"id":"cloud/aws/compute/burstable-instances","path":"/cloud/aws/compute/burstable-instances","sidebar":"tutorialSidebar"},{"id":"cloud/aws/compute/ec2-instance-types","path":"/cloud/aws/compute/ec2-instance-types","sidebar":"tutorialSidebar"},{"id":"cloud/aws/compute/readme","path":"/cloud/aws/compute/","sidebar":"tutorialSidebar"},{"id":"cloud/aws/cost-optimization-explorer-billing","path":"/cloud/aws/cost-optimization-explorer-billing","sidebar":"tutorialSidebar"},{"id":"cloud/aws/course-architecting-on-aws","path":"/cloud/aws/course-architecting-on-aws","sidebar":"tutorialSidebar"},{"id":"cloud/aws/developer-tools/code-build","path":"/cloud/aws/developer-tools/code-build","sidebar":"tutorialSidebar"},{"id":"cloud/aws/developer-tools/intro","path":"/cloud/aws/developer-tools/intro","sidebar":"tutorialSidebar"},{"id":"cloud/aws/intro","path":"/cloud/aws/intro","sidebar":"tutorialSidebar"},{"id":"cloud/aws/networking-content-delivery/amazon-cloudfront","path":"/cloud/aws/networking-content-delivery/amazon-cloudfront","sidebar":"tutorialSidebar"},{"id":"cloud/aws/networking-content-delivery/amazon-vpc","path":"/cloud/aws/networking-content-delivery/amazon-vpc","sidebar":"tutorialSidebar"},{"id":"cloud/aws/networking-content-delivery/aws-elb","path":"/cloud/aws/networking-content-delivery/aws-elb","sidebar":"tutorialSidebar"},{"id":"cloud/aws/networking-content-delivery/intro","path":"/cloud/aws/networking-content-delivery/intro","sidebar":"tutorialSidebar"},{"id":"cloud/aws/others","path":"/cloud/aws/others","sidebar":"tutorialSidebar"},{"id":"cloud/aws/readme","path":"/cloud/aws/","sidebar":"tutorialSidebar"},{"id":"cloud/aws/security-identity-compliance/compliance","path":"/cloud/aws/security-identity-compliance/compliance","sidebar":"tutorialSidebar"},{"id":"cloud/aws/security-identity-compliance/compliance-mcqs","path":"/cloud/aws/security-identity-compliance/compliance-mcqs","sidebar":"tutorialSidebar"},{"id":"cloud/aws/security-identity-compliance/iam","path":"/cloud/aws/security-identity-compliance/iam","sidebar":"tutorialSidebar"},{"id":"cloud/aws/security-identity-compliance/intro","path":"/cloud/aws/security-identity-compliance/intro","sidebar":"tutorialSidebar"},{"id":"cloud/aws/security-identity-compliance/license-scanning","path":"/cloud/aws/security-identity-compliance/license-scanning","sidebar":"tutorialSidebar"},{"id":"cloud/aws/security-identity-compliance/security-guidelines","path":"/cloud/aws/security-identity-compliance/security-guidelines","sidebar":"tutorialSidebar"},{"id":"cloud/aws/security-identity-compliance/tools","path":"/cloud/aws/security-identity-compliance/tools","sidebar":"tutorialSidebar"},{"id":"cloud/aws/storage/amazon-ebs","path":"/cloud/aws/storage/amazon-ebs","sidebar":"tutorialSidebar"},{"id":"cloud/aws/storage/amazon-efs","path":"/cloud/aws/storage/amazon-efs","sidebar":"tutorialSidebar"},{"id":"cloud/aws/storage/amazon-s3","path":"/cloud/aws/storage/amazon-s3","sidebar":"tutorialSidebar"},{"id":"cloud/aws/storage/amazon-s3-pricing","path":"/cloud/aws/storage/amazon-s3-pricing","sidebar":"tutorialSidebar"},{"id":"cloud/aws/storage/amazon-s3-storage-classes","path":"/cloud/aws/storage/amazon-s3-storage-classes","sidebar":"tutorialSidebar"},{"id":"cloud/aws/storage/iops","path":"/cloud/aws/storage/iops","sidebar":"tutorialSidebar"},{"id":"cloud/aws/storage/readme","path":"/cloud/aws/storage/","sidebar":"tutorialSidebar"},{"id":"cloud/others/azure/commands","path":"/cloud/others/azure/commands","sidebar":"tutorialSidebar"},{"id":"cloud/others/azure/iam","path":"/cloud/others/azure/iam","sidebar":"tutorialSidebar"},{"id":"cloud/others/azure/microsoft-biztalk","path":"/cloud/others/azure/microsoft-biztalk","sidebar":"tutorialSidebar"},{"id":"cloud/others/azure/readme","path":"/cloud/others/azure/","sidebar":"tutorialSidebar"},{"id":"cloud/others/azure/services","path":"/cloud/others/azure/services","sidebar":"tutorialSidebar"},{"id":"cloud/others/business-rule-engine","path":"/cloud/others/business-rule-engine","sidebar":"tutorialSidebar"},{"id":"cloud/others/cdn-cache-invalidation","path":"/cloud/others/cdn-cache-invalidation","sidebar":"tutorialSidebar"},{"id":"cloud/others/cdn-comparision","path":"/cloud/others/cdn-comparision","sidebar":"tutorialSidebar"},{"id":"cloud/others/cdn-content-delivery-network","path":"/cloud/others/cdn-content-delivery-network","sidebar":"tutorialSidebar"},{"id":"cloud/others/cloudflare","path":"/cloud/others/cloudflare","sidebar":"tutorialSidebar"},{"id":"cloud/others/firebase/automatic-collected-events","path":"/cloud/others/firebase/automatic-collected-events","sidebar":"tutorialSidebar"},{"id":"cloud/others/firebase/fcm-notifications","path":"/cloud/others/firebase/fcm-notifications","sidebar":"tutorialSidebar"},{"id":"cloud/others/firebase/firebase-google-analytics","path":"/cloud/others/firebase/firebase-google-analytics","sidebar":"tutorialSidebar"},{"id":"cloud/others/firebase/readme","path":"/cloud/others/firebase/","sidebar":"tutorialSidebar"},{"id":"cloud/others/firebase/web-push-notifications","path":"/cloud/others/firebase/web-push-notifications","sidebar":"tutorialSidebar"},{"id":"cloud/others/gcp-anthos","path":"/cloud/others/gcp-anthos","sidebar":"tutorialSidebar"},{"id":"cloud/others/gcp-bigquery-big-query","path":"/cloud/others/gcp-bigquery-big-query","sidebar":"tutorialSidebar"},{"id":"cloud/others/gcp-google-cloud-platform","path":"/cloud/others/gcp-google-cloud-platform","sidebar":"tutorialSidebar"},{"id":"cloud/others/gcp-ml-services","path":"/cloud/others/gcp-ml-services","sidebar":"tutorialSidebar"},{"id":"cloud/others/imagekit","path":"/cloud/others/imagekit","sidebar":"tutorialSidebar"},{"id":"cloud/others/linode","path":"/cloud/others/linode","sidebar":"tutorialSidebar"},{"id":"cloud/others/loan-management-system-lms","path":"/cloud/others/loan-management-system-lms","sidebar":"tutorialSidebar"},{"id":"cloud/others/low-code-no-code-lcnc","path":"/cloud/others/low-code-no-code-lcnc","sidebar":"tutorialSidebar"},{"id":"cloud/others/mdm-mobile-device-management","path":"/cloud/others/mdm-mobile-device-management","sidebar":"tutorialSidebar"},{"id":"cloud/others/openstack","path":"/cloud/others/openstack","sidebar":"tutorialSidebar"},{"id":"cloud/others/oracle","path":"/cloud/others/oracle","sidebar":"tutorialSidebar"},{"id":"cloud/others/others-saas","path":"/cloud/others/others-saas","sidebar":"tutorialSidebar"},{"id":"cloud/others/readme","path":"/cloud/others/","sidebar":"tutorialSidebar"},{"id":"cloud/others/sap","path":"/cloud/others/sap","sidebar":"tutorialSidebar"},{"id":"cloud/others/ticketing-tms","path":"/cloud/others/ticketing-tms","sidebar":"tutorialSidebar"},{"id":"cloud/others/vmware","path":"/cloud/others/vmware","sidebar":"tutorialSidebar"},{"id":"cloud/readme","path":"/cloud/","sidebar":"tutorialSidebar"},{"id":"cloud/tools","path":"/cloud/tools","sidebar":"tutorialSidebar"},{"id":"computer-science/distributed-system/byzantine-generals-problem","path":"/computer-science/distributed-system/byzantine-generals-problem","sidebar":"tutorialSidebar"},{"id":"computer-science/distributed-system/cap-theorem","path":"/computer-science/distributed-system/cap-theorem","sidebar":"tutorialSidebar"},{"id":"computer-science/distributed-system/clocks","path":"/computer-science/distributed-system/clocks","sidebar":"tutorialSidebar"},{"id":"computer-science/distributed-system/consensus-protocols","path":"/computer-science/distributed-system/consensus-protocols","sidebar":"tutorialSidebar"},{"id":"computer-science/distributed-system/consistency","path":"/computer-science/distributed-system/consistency","sidebar":"tutorialSidebar"},{"id":"computer-science/distributed-system/distributed-logging","path":"/computer-science/distributed-system/distributed-logging","sidebar":"tutorialSidebar"},{"id":"computer-science/distributed-system/fallacies-and-problems","path":"/computer-science/distributed-system/fallacies-and-problems","sidebar":"tutorialSidebar"},{"id":"computer-science/distributed-system/intro","path":"/computer-science/distributed-system/intro","sidebar":"tutorialSidebar"},{"id":"computer-science/distributed-system/others","path":"/computer-science/distributed-system/others","sidebar":"tutorialSidebar"},{"id":"computer-science/distributed-system/readme","path":"/computer-science/distributed-system/","sidebar":"tutorialSidebar"},{"id":"computer-science/distributed-system/vocabulary","path":"/computer-science/distributed-system/vocabulary","sidebar":"tutorialSidebar"},{"id":"computer-science/general/common","path":"/computer-science/general/common","sidebar":"tutorialSidebar"},{"id":"computer-science/general/newsletter-learning-resources","path":"/computer-science/general/newsletter-learning-resources","sidebar":"tutorialSidebar"},{"id":"computer-science/general/others","path":"/computer-science/general/others","sidebar":"tutorialSidebar"},{"id":"computer-science/general/readme","path":"/computer-science/general/","sidebar":"tutorialSidebar"},{"id":"computer-science/general/research-papers","path":"/computer-science/general/research-papers","sidebar":"tutorialSidebar"},{"id":"computer-science/general/standards","path":"/computer-science/general/standards","sidebar":"tutorialSidebar"},{"id":"computer-science/general/uuid-guid","path":"/computer-science/general/uuid-guid","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/aws-tech-other-questions","path":"/computer-science/interview-question/aws-tech-other-questions","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/blogs-conferences-blogging-presentation-tech-thursdays","path":"/computer-science/interview-question/blogs-conferences-blogging-presentation-tech-thursdays","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/coding-interview-questions","path":"/computer-science/interview-question/coding-interview-questions","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/others","path":"/computer-science/interview-question/others","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/readme","path":"/computer-science/interview-question/","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/system-design-autocomplete-or-typeahead","path":"/computer-science/interview-question/system-design-autocomplete-or-typeahead","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/system-design-google-com-into-browser-press-enter","path":"/computer-science/interview-question/system-design-google-com-into-browser-press-enter","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/system-design-google-search","path":"/computer-science/interview-question/system-design-google-search","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/system-design-messenger-whatsapp","path":"/computer-science/interview-question/system-design-messenger-whatsapp","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/system-design-mmog-game","path":"/computer-science/interview-question/system-design-mmog-game","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/system-design-others","path":"/computer-science/interview-question/system-design-others","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/system-design-parking-lot","path":"/computer-science/interview-question/system-design-parking-lot","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/system-design-tinyurl","path":"/computer-science/interview-question/system-design-tinyurl","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/system-design-twitter","path":"/computer-science/interview-question/system-design-twitter","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/system-design-uber-data-architecture","path":"/computer-science/interview-question/system-design-uber-data-architecture","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/system-design-uber-lyft-ride-sharing-services","path":"/computer-science/interview-question/system-design-uber-lyft-ride-sharing-services","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/system-design-youtube","path":"/computer-science/interview-question/system-design-youtube","sidebar":"tutorialSidebar"},{"id":"computer-science/interview-question/toptal","path":"/computer-science/interview-question/toptal","sidebar":"tutorialSidebar"},{"id":"computer-science/iot/device-management","path":"/computer-science/iot/device-management","sidebar":"tutorialSidebar"},{"id":"computer-science/iot/edge-computing","path":"/computer-science/iot/edge-computing","sidebar":"tutorialSidebar"},{"id":"computer-science/iot/edgexfoundary","path":"/computer-science/iot/edgexfoundary","sidebar":"tutorialSidebar"},{"id":"computer-science/iot/industrial-iot-iiot","path":"/computer-science/iot/industrial-iot-iiot","sidebar":"tutorialSidebar"},{"id":"computer-science/iot/iot-intro","path":"/computer-science/iot/iot-intro","sidebar":"tutorialSidebar"},{"id":"computer-science/iot/others","path":"/computer-science/iot/others","sidebar":"tutorialSidebar"},{"id":"computer-science/iot/readme","path":"/computer-science/iot/","sidebar":"tutorialSidebar"},{"id":"computer-science/links","path":"/computer-science/links","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/basic-computer-organization","path":"/computer-science/operating-system/basic-computer-organization","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/cache-access-patterns","path":"/computer-science/operating-system/cache-access-patterns","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/cache-coherence-invalidation","path":"/computer-science/operating-system/cache-coherence-invalidation","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/caches-caching","path":"/computer-science/operating-system/caches-caching","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/caching-strategies-topologies","path":"/computer-science/operating-system/caching-strategies-topologies","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/compilers","path":"/computer-science/operating-system/compilers","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/concepts","path":"/computer-science/operating-system/concepts","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/concurrency-models-async","path":"/computer-science/operating-system/concurrency-models-async","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/concurrency-problems","path":"/computer-science/operating-system/concurrency-problems","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/concurrency-threading","path":"/computer-science/operating-system/concurrency-threading","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/coroutines","path":"/computer-science/operating-system/coroutines","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/cpu-gpu-tpu","path":"/computer-science/operating-system/cpu-gpu-tpu","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/disk-io","path":"/computer-science/operating-system/disk-io","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/dram","path":"/computer-science/operating-system/dram","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/intro","path":"/computer-science/operating-system/intro","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/journaling-file-system","path":"/computer-science/operating-system/journaling-file-system","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/memory","path":"/computer-science/operating-system/memory","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/memory-allocation","path":"/computer-science/operating-system/memory-allocation","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/memory-layout","path":"/computer-science/operating-system/memory-layout","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/memory-mapping-mmap","path":"/computer-science/operating-system/memory-mapping-mmap","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/microprocessor","path":"/computer-science/operating-system/microprocessor","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/others","path":"/computer-science/operating-system/others","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/parallel-processing","path":"/computer-science/operating-system/parallel-processing","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/raid","path":"/computer-science/operating-system/raid","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/readme","path":"/computer-science/operating-system/","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/scheduling","path":"/computer-science/operating-system/scheduling","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/swap-paging-caching","path":"/computer-science/operating-system/swap-paging-caching","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/unix-linux","path":"/computer-science/operating-system/unix-linux","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/unix-linux-file-system","path":"/computer-science/operating-system/unix-linux-file-system","sidebar":"tutorialSidebar"},{"id":"computer-science/operating-system/write-ahead-log-wal","path":"/computer-science/operating-system/write-ahead-log-wal","sidebar":"tutorialSidebar"},{"id":"computer-science/others/bioinformatics-biotechnology","path":"/computer-science/others/bioinformatics-biotechnology","sidebar":"tutorialSidebar"},{"id":"computer-science/others/computer-graphics","path":"/computer-science/others/computer-graphics","sidebar":"tutorialSidebar"},{"id":"computer-science/others/digital-circuits","path":"/computer-science/others/digital-circuits","sidebar":"tutorialSidebar"},{"id":"computer-science/others/game-development","path":"/computer-science/others/game-development","sidebar":"tutorialSidebar"},{"id":"computer-science/others/gamification","path":"/computer-science/others/gamification","sidebar":"tutorialSidebar"},{"id":"computer-science/others/other","path":"/computer-science/others/other","sidebar":"tutorialSidebar"},{"id":"computer-science/others/readme","path":"/computer-science/others/","sidebar":"tutorialSidebar"},{"id":"computer-science/others/tech-books","path":"/computer-science/others/tech-books","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-concepts/cohesion-and-coupling","path":"/computer-science/programming-concepts/cohesion-and-coupling","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-concepts/dependency-injection","path":"/computer-science/programming-concepts/dependency-injection","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-concepts/inversion-of-control","path":"/computer-science/programming-concepts/inversion-of-control","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-concepts/marshalling","path":"/computer-science/programming-concepts/marshalling","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-concepts/metaprogramming","path":"/computer-science/programming-concepts/metaprogramming","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-concepts/others","path":"/computer-science/programming-concepts/others","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-concepts/programming-styles","path":"/computer-science/programming-concepts/programming-styles","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-concepts/readme","path":"/computer-science/programming-concepts/","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-concepts/type-introspection-and-reflection","path":"/computer-science/programming-concepts/type-introspection-and-reflection","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-concepts/type-systems","path":"/computer-science/programming-concepts/type-systems","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/architectural-mvvm","path":"/computer-science/programming-paradigms/architectural-mvvm","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/behavioral-chain-of-responsibility","path":"/computer-science/programming-paradigms/behavioral-chain-of-responsibility","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/behavioral-iterator","path":"/computer-science/programming-paradigms/behavioral-iterator","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/behavioral-mediator","path":"/computer-science/programming-paradigms/behavioral-mediator","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/behavioral-memento","path":"/computer-science/programming-paradigms/behavioral-memento","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/behavioral-observer","path":"/computer-science/programming-paradigms/behavioral-observer","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/behavioral-publisher-subscriber","path":"/computer-science/programming-paradigms/behavioral-publisher-subscriber","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/behavioral-state","path":"/computer-science/programming-paradigms/behavioral-state","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/behavioral-strategy","path":"/computer-science/programming-paradigms/behavioral-strategy","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/concurrency-reactor","path":"/computer-science/programming-paradigms/concurrency-reactor","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/creational-abstract-factory","path":"/computer-science/programming-paradigms/creational-abstract-factory","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/creational-object-pool","path":"/computer-science/programming-paradigms/creational-object-pool","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/design-patterns","path":"/computer-science/programming-paradigms/design-patterns","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/functional-programming","path":"/computer-science/programming-paradigms/functional-programming","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/oops-solid","path":"/computer-science/programming-paradigms/oops-solid","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/others","path":"/computer-science/programming-paradigms/others","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/readme","path":"/computer-science/programming-paradigms/","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/structural-adapter","path":"/computer-science/programming-paradigms/structural-adapter","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/structural-bridge","path":"/computer-science/programming-paradigms/structural-bridge","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/structural-decorator","path":"/computer-science/programming-paradigms/structural-decorator","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/structural-facade","path":"/computer-science/programming-paradigms/structural-facade","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/structural-proxy","path":"/computer-science/programming-paradigms/structural-proxy","sidebar":"tutorialSidebar"},{"id":"computer-science/programming-paradigms/types-of-programming-paradigm","path":"/computer-science/programming-paradigms/types-of-programming-paradigm","sidebar":"tutorialSidebar"},{"id":"computer-science/readme","path":"/computer-science/","sidebar":"tutorialSidebar"},{"id":"computer-science/security/attacks","path":"/computer-science/security/attacks","sidebar":"tutorialSidebar"},{"id":"computer-science/security/authentication/certificates","path":"/computer-science/security/authentication/certificates","sidebar":"tutorialSidebar"},{"id":"computer-science/security/authentication/http-authentication","path":"/computer-science/security/authentication/http-authentication","sidebar":"tutorialSidebar"},{"id":"computer-science/security/authentication/intro","path":"/computer-science/security/authentication/intro","sidebar":"tutorialSidebar"},{"id":"computer-science/security/authentication/jwt","path":"/computer-science/security/authentication/jwt","sidebar":"tutorialSidebar"},{"id":"computer-science/security/authentication/oauth","path":"/computer-science/security/authentication/oauth","sidebar":"tutorialSidebar"},{"id":"computer-science/security/authentication/openid","path":"/computer-science/security/authentication/openid","sidebar":"tutorialSidebar"},{"id":"computer-science/security/authentication/readme","path":"/computer-science/security/authentication/","sidebar":"tutorialSidebar"},{"id":"computer-science/security/authentication/siem","path":"/computer-science/security/authentication/siem","sidebar":"tutorialSidebar"},{"id":"computer-science/security/authentication/two-2fa","path":"/computer-science/security/authentication/two-2fa","sidebar":"tutorialSidebar"},{"id":"computer-science/security/concepts","path":"/computer-science/security/concepts","sidebar":"tutorialSidebar"},{"id":"computer-science/security/cryptography/cryptographic-algorithms","path":"/computer-science/security/cryptography/cryptographic-algorithms","sidebar":"tutorialSidebar"},{"id":"computer-science/security/cryptography/cryptographic-hash-functions","path":"/computer-science/security/cryptography/cryptographic-hash-functions","sidebar":"tutorialSidebar"},{"id":"computer-science/security/cryptography/cryptography-terms","path":"/computer-science/security/cryptography/cryptography-terms","sidebar":"tutorialSidebar"},{"id":"computer-science/security/cryptography/diffie-hellman-key-exchange","path":"/computer-science/security/cryptography/diffie-hellman-key-exchange","sidebar":"tutorialSidebar"},{"id":"computer-science/security/cryptography/hash-function-design","path":"/computer-science/security/cryptography/hash-function-design","sidebar":"tutorialSidebar"},{"id":"computer-science/security/cryptography/intro","path":"/computer-science/security/cryptography/intro","sidebar":"tutorialSidebar"},{"id":"computer-science/security/cryptography/post-quantum-cryptography","path":"/computer-science/security/cryptography/post-quantum-cryptography","sidebar":"tutorialSidebar"},{"id":"computer-science/security/cryptography/public-key-cryptography","path":"/computer-science/security/cryptography/public-key-cryptography","sidebar":"tutorialSidebar"},{"id":"computer-science/security/cryptography/readme","path":"/computer-science/security/cryptography/","sidebar":"tutorialSidebar"},{"id":"computer-science/security/ethical-hacking","path":"/computer-science/security/ethical-hacking","sidebar":"tutorialSidebar"},{"id":"computer-science/security/firewall-waf","path":"/computer-science/security/firewall-waf","sidebar":"tutorialSidebar"},{"id":"computer-science/security/improving-security-posture","path":"/computer-science/security/improving-security-posture","sidebar":"tutorialSidebar"},{"id":"computer-science/security/others","path":"/computer-science/security/others","sidebar":"tutorialSidebar"},{"id":"computer-science/security/readme","path":"/computer-science/security/","sidebar":"tutorialSidebar"},{"id":"computer-science/security/systems-protection","path":"/computer-science/security/systems-protection","sidebar":"tutorialSidebar"},{"id":"computer-science/security/tools","path":"/computer-science/security/tools","sidebar":"tutorialSidebar"},{"id":"computer-science/security/vault","path":"/computer-science/security/vault","sidebar":"tutorialSidebar"},{"id":"computer-science/security/vulnerabilities","path":"/computer-science/security/vulnerabilities","sidebar":"tutorialSidebar"},{"id":"computer-science/software-engineering/change-management","path":"/computer-science/software-engineering/change-management","sidebar":"tutorialSidebar"},{"id":"computer-science/software-engineering/code-smell","path":"/computer-science/software-engineering/code-smell","sidebar":"tutorialSidebar"},{"id":"computer-science/software-engineering/coding-guidelines-code-reviews-clean-code","path":"/computer-science/software-engineering/coding-guidelines-code-reviews-clean-code","sidebar":"tutorialSidebar"},{"id":"computer-science/software-engineering/complexity","path":"/computer-science/software-engineering/complexity","sidebar":"tutorialSidebar"},{"id":"computer-science/software-engineering/developer-roles","path":"/computer-science/software-engineering/developer-roles","sidebar":"tutorialSidebar"},{"id":"computer-science/software-engineering/development-approaches","path":"/computer-science/software-engineering/development-approaches","sidebar":"tutorialSidebar"},{"id":"computer-science/software-engineering/intro","path":"/computer-science/software-engineering/intro","sidebar":"tutorialSidebar"},{"id":"computer-science/software-engineering/modeling-languages","path":"/computer-science/software-engineering/modeling-languages","sidebar":"tutorialSidebar"},{"id":"computer-science/software-engineering/principles","path":"/computer-science/software-engineering/principles","sidebar":"tutorialSidebar"},{"id":"computer-science/software-engineering/readme","path":"/computer-science/software-engineering/","sidebar":"tutorialSidebar"},{"id":"computer-science/software-engineering/refactoring","path":"/computer-science/software-engineering/refactoring","sidebar":"tutorialSidebar"},{"id":"computer-science/software-engineering/static-code-analysis","path":"/computer-science/software-engineering/static-code-analysis","sidebar":"tutorialSidebar"},{"id":"computer-science/software-engineering/technical-debt","path":"/computer-science/software-engineering/technical-debt","sidebar":"tutorialSidebar"},{"id":"computer-science/software-engineering/types-of-code","path":"/computer-science/software-engineering/types-of-code","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/addressing-failures","path":"/computer-science/system-design/addressing-failures","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/api-gateway","path":"/computer-science/system-design/api-gateway","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/architecture-guide","path":"/computer-science/system-design/architecture-guide","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/cloud-native","path":"/computer-science/system-design/cloud-native","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/enterprise-integration-patterns","path":"/computer-science/system-design/enterprise-integration-patterns","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/event-driven-architecture","path":"/computer-science/system-design/event-driven-architecture","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/intro","path":"/computer-science/system-design/intro","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/message-oriented-architecture-mom","path":"/computer-science/system-design/message-oriented-architecture-mom","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/message-queues","path":"/computer-science/system-design/message-queues","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/microservice-architecture/design-patterns","path":"/computer-science/system-design/microservice-architecture/design-patterns","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/microservice-architecture/domain-driven-design","path":"/computer-science/system-design/microservice-architecture/domain-driven-design","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/microservice-architecture/example","path":"/computer-science/system-design/microservice-architecture/example","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/microservice-architecture/intro","path":"/computer-science/system-design/microservice-architecture/intro","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/microservice-architecture/readme","path":"/computer-science/system-design/microservice-architecture/","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/n-tier-application-architecture","path":"/computer-science/system-design/n-tier-application-architecture","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/others","path":"/computer-science/system-design/others","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/rate-limiting","path":"/computer-science/system-design/rate-limiting","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/reactive-microservices-manifesto","path":"/computer-science/system-design/reactive-microservices-manifesto","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/readme","path":"/computer-science/system-design/","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/retries","path":"/computer-science/system-design/retries","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/serverless-architecture","path":"/computer-science/system-design/serverless-architecture","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/trade-offs","path":"/computer-science/system-design/trade-offs","sidebar":"tutorialSidebar"},{"id":"computer-science/system-design/twelve-factor-app","path":"/computer-science/system-design/twelve-factor-app","sidebar":"tutorialSidebar"},{"id":"computer-science/testing/checkov","path":"/computer-science/testing/checkov","sidebar":"tutorialSidebar"},{"id":"computer-science/testing/intro","path":"/computer-science/testing/intro","sidebar":"tutorialSidebar"},{"id":"computer-science/testing/iperf3-testing","path":"/computer-science/testing/iperf3-testing","sidebar":"tutorialSidebar"},{"id":"computer-science/testing/load-performance-testing-qa-tools","path":"/computer-science/testing/load-performance-testing-qa-tools","sidebar":"tutorialSidebar"},{"id":"computer-science/testing/mocking","path":"/computer-science/testing/mocking","sidebar":"tutorialSidebar"},{"id":"computer-science/testing/postman","path":"/computer-science/testing/postman","sidebar":"tutorialSidebar"},{"id":"computer-science/testing/readme","path":"/computer-science/testing/","sidebar":"tutorialSidebar"},{"id":"computer-science/testing/selenium","path":"/computer-science/testing/selenium","sidebar":"tutorialSidebar"},{"id":"computer-science/testing/terms","path":"/computer-science/testing/terms","sidebar":"tutorialSidebar"},{"id":"computer-science/testing/test-pyramid","path":"/computer-science/testing/test-pyramid","sidebar":"tutorialSidebar"},{"id":"computer-science/testing/tools","path":"/computer-science/testing/tools","sidebar":"tutorialSidebar"},{"id":"courses/365-data-science-program","path":"/courses/365-data-science-program","sidebar":"tutorialSidebar"},{"id":"courses/365-ds-advanced-stastistical-methods-in-python","path":"/courses/365-ds-advanced-stastistical-methods-in-python","sidebar":"tutorialSidebar"},{"id":"courses/365-ds-mathematics","path":"/courses/365-ds-mathematics","sidebar":"tutorialSidebar"},{"id":"courses/aws-certified-data-engineer-associate","path":"/courses/aws-certified-data-engineer-associate","sidebar":"tutorialSidebar"},{"id":"courses/aws-certified-data-engineer-associate-questions","path":"/courses/aws-certified-data-engineer-associate-questions","sidebar":"tutorialSidebar"},{"id":"courses/aws-certified-developer-associate","path":"/courses/aws-certified-developer-associate","sidebar":"tutorialSidebar"},{"id":"courses/course-art-and-science-of-ml","path":"/courses/course-art-and-science-of-ml","sidebar":"tutorialSidebar"},{"id":"courses/course-big-data-computing-nptel","path":"/courses/course-big-data-computing-nptel","sidebar":"tutorialSidebar"},{"id":"courses/course-credit-risk-modeling/credit-and-debt","path":"/courses/course-credit-risk-modeling/credit-and-debt","sidebar":"tutorialSidebar"},{"id":"courses/course-credit-risk-modeling/decision-areas-and-credit-scorecards","path":"/courses/course-credit-risk-modeling/decision-areas-and-credit-scorecards","sidebar":"tutorialSidebar"},{"id":"courses/course-credit-risk-modeling/fraud-detection-and-prevention","path":"/courses/course-credit-risk-modeling/fraud-detection-and-prevention","sidebar":"tutorialSidebar"},{"id":"courses/course-credit-risk-modeling/fraud-features","path":"/courses/course-credit-risk-modeling/fraud-features","sidebar":"tutorialSidebar"},{"id":"courses/course-credit-risk-modeling/fraud-types","path":"/courses/course-credit-risk-modeling/fraud-types","sidebar":"tutorialSidebar"},{"id":"courses/course-credit-risk-modeling/intro","path":"/courses/course-credit-risk-modeling/intro","sidebar":"tutorialSidebar"},{"id":"courses/course-credit-risk-modeling/syllabus","path":"/courses/course-credit-risk-modeling/syllabus","sidebar":"tutorialSidebar"},{"id":"courses/course-data-mining-nptel","path":"/courses/course-data-mining-nptel","sidebar":"tutorialSidebar"},{"id":"courses/course-data-storage-and-processing-edx","path":"/courses/course-data-storage-and-processing-edx","sidebar":"tutorialSidebar"},{"id":"courses/course-feature-engineering","path":"/courses/course-feature-engineering","sidebar":"tutorialSidebar"},{"id":"courses/course-intro-to-data-and-data-science","path":"/courses/course-intro-to-data-and-data-science","sidebar":"tutorialSidebar"},{"id":"courses/course-intro-to-tensorflow","path":"/courses/course-intro-to-tensorflow","sidebar":"tutorialSidebar"},{"id":"courses/course-launching-into-ml","path":"/courses/course-launching-into-ml","sidebar":"tutorialSidebar"},{"id":"courses/course-time-series-analysis/exponential-smoothing","path":"/courses/course-time-series-analysis/exponential-smoothing","sidebar":"tutorialSidebar"},{"id":"courses/course-time-series-analysis/intro-time-series","path":"/courses/course-time-series-analysis/intro-time-series","sidebar":"tutorialSidebar"},{"id":"courses/course-time-series-analysis/syllabus","path":"/courses/course-time-series-analysis/syllabus","sidebar":"tutorialSidebar"},{"id":"courses/course-time-series-analysis/time-series-modeling","path":"/courses/course-time-series-analysis/time-series-modeling","sidebar":"tutorialSidebar"},{"id":"courses/coursera-algorithms-part-1","path":"/courses/coursera-algorithms-part-1","sidebar":"tutorialSidebar"},{"id":"courses/coursera-algorithms-part-2","path":"/courses/coursera-algorithms-part-2","sidebar":"tutorialSidebar"},{"id":"courses/coursera-how-google-does-ml","path":"/courses/coursera-how-google-does-ml","sidebar":"tutorialSidebar"},{"id":"courses/customer-analytics-in-python/intro","path":"/courses/customer-analytics-in-python/intro","sidebar":"tutorialSidebar"},{"id":"courses/customer-analytics-in-python/syllabus","path":"/courses/customer-analytics-in-python/syllabus","sidebar":"tutorialSidebar"},{"id":"courses/data-integration-specialist-aws","path":"/courses/data-integration-specialist-aws","sidebar":"tutorialSidebar"},{"id":"courses/google-professional-cloud-architect-pca","path":"/courses/google-professional-cloud-architect-pca","sidebar":"tutorialSidebar"},{"id":"courses/google-professional-data-engineer-pde","path":"/courses/google-professional-data-engineer-pde","sidebar":"tutorialSidebar"},{"id":"courses/microsoft-excel-google-sheets","path":"/courses/microsoft-excel-google-sheets","sidebar":"tutorialSidebar"},{"id":"courses/mordern-algorithm-design","path":"/courses/mordern-algorithm-design","sidebar":"tutorialSidebar"},{"id":"courses/nutanix-hybrid-cloud","path":"/courses/nutanix-hybrid-cloud","sidebar":"tutorialSidebar"},{"id":"courses/readme","path":"/courses/","sidebar":"tutorialSidebar"},{"id":"courses/se-radio","path":"/courses/se-radio","sidebar":"tutorialSidebar"},{"id":"courses/self-driving-nanodegree","path":"/courses/self-driving-nanodegree","sidebar":"tutorialSidebar"},{"id":"courses/udemy-becoming-a-production-mysql-dba","path":"/courses/udemy-becoming-a-production-mysql-dba","sidebar":"tutorialSidebar"},{"id":"courses/udemy-python-for-data-structures-algorithms","path":"/courses/udemy-python-for-data-structures-algorithms","sidebar":"tutorialSidebar"},{"id":"data-structures/general/disjoint-set-data-structure","path":"/data-structures/general/disjoint-set-data-structure","sidebar":"tutorialSidebar"},{"id":"data-structures/general/ds-intro","path":"/data-structures/general/ds-intro","sidebar":"tutorialSidebar"},{"id":"data-structures/general/elementary-symbol-tables","path":"/data-structures/general/elementary-symbol-tables","sidebar":"tutorialSidebar"},{"id":"data-structures/general/endianness","path":"/data-structures/general/endianness","sidebar":"tutorialSidebar"},{"id":"data-structures/general/mutable-immutable-data-structures","path":"/data-structures/general/mutable-immutable-data-structures","sidebar":"tutorialSidebar"},{"id":"data-structures/general/readme","path":"/data-structures/general/","sidebar":"tutorialSidebar"},{"id":"data-structures/graph/adjacency-list","path":"/data-structures/graph/adjacency-list","sidebar":"tutorialSidebar"},{"id":"data-structures/graph/adjacency-matrix","path":"/data-structures/graph/adjacency-matrix","sidebar":"tutorialSidebar"},{"id":"data-structures/graph/digraphs-directed-graphs","path":"/data-structures/graph/digraphs-directed-graphs","sidebar":"tutorialSidebar"},{"id":"data-structures/graph/implementation","path":"/data-structures/graph/implementation","sidebar":"tutorialSidebar"},{"id":"data-structures/graph/intro","path":"/data-structures/graph/intro","sidebar":"tutorialSidebar"},{"id":"data-structures/graph/questions","path":"/data-structures/graph/questions","sidebar":"tutorialSidebar"},{"id":"data-structures/graph/readme","path":"/data-structures/graph/","sidebar":"tutorialSidebar"},{"id":"data-structures/graph/undirected-graph","path":"/data-structures/graph/undirected-graph","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/bloom-filters","path":"/data-structures/hashtable/bloom-filters","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/chord","path":"/data-structures/hashtable/chord","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/count-min-sketch","path":"/data-structures/hashtable/count-min-sketch","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/dht-distributed-hash-tables","path":"/data-structures/hashtable/dht-distributed-hash-tables","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/dictionaries","path":"/data-structures/hashtable/dictionaries","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/hash-functions","path":"/data-structures/hashtable/hash-functions","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/hash-tables","path":"/data-structures/hashtable/hash-tables","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/hashing","path":"/data-structures/hashtable/hashing","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/hashing-techniques","path":"/data-structures/hashtable/hashing-techniques","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/hyperloglog","path":"/data-structures/hashtable/hyperloglog","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/kademlia","path":"/data-structures/hashtable/kademlia","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/list-of-hash-functions","path":"/data-structures/hashtable/list-of-hash-functions","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/merkle-trees","path":"/data-structures/hashtable/merkle-trees","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/probabilistic-data-structure","path":"/data-structures/hashtable/probabilistic-data-structure","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/questions","path":"/data-structures/hashtable/questions","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/readme","path":"/data-structures/hashtable/","sidebar":"tutorialSidebar"},{"id":"data-structures/hashtable/verkle-trees","path":"/data-structures/hashtable/verkle-trees","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/2-3-search-trees","path":"/data-structures/hierarchical-data-structure/2-3-search-trees","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/avl-tree","path":"/data-structures/hierarchical-data-structure/avl-tree","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/b-tree","path":"/data-structures/hierarchical-data-structure/b-tree","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/beap-bi-parental-heap","path":"/data-structures/hierarchical-data-structure/beap-bi-parental-heap","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/binary-heap","path":"/data-structures/hierarchical-data-structure/binary-heap","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/binary-search-tree","path":"/data-structures/hierarchical-data-structure/binary-search-tree","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/binary-tree","path":"/data-structures/hierarchical-data-structure/binary-tree","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/binomial-heap","path":"/data-structures/hierarchical-data-structure/binomial-heap","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/fibonacci-heap","path":"/data-structures/hierarchical-data-structure/fibonacci-heap","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/interval-search-tree","path":"/data-structures/hierarchical-data-structure/interval-search-tree","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/k-ary-heap-d-ary-heap-d-way-heap","path":"/data-structures/hierarchical-data-structure/k-ary-heap-d-ary-heap-d-way-heap","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/kd-trees","path":"/data-structures/hierarchical-data-structure/kd-trees","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/left-leaning-red-black-bsts-llrb-tree","path":"/data-structures/hierarchical-data-structure/left-leaning-red-black-bsts-llrb-tree","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/problems","path":"/data-structures/hierarchical-data-structure/problems","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/readme","path":"/data-structures/hierarchical-data-structure/","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/segment-tree","path":"/data-structures/hierarchical-data-structure/segment-tree","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/space-partitioning-trees","path":"/data-structures/hierarchical-data-structure/space-partitioning-trees","sidebar":"tutorialSidebar"},{"id":"data-structures/hierarchical-data-structure/tree-ds","path":"/data-structures/hierarchical-data-structure/tree-ds","sidebar":"tutorialSidebar"},{"id":"data-structures/linear-data-structure/array","path":"/data-structures/linear-data-structure/array","sidebar":"tutorialSidebar"},{"id":"data-structures/linear-data-structure/bag-data-structure","path":"/data-structures/linear-data-structure/bag-data-structure","sidebar":"tutorialSidebar"},{"id":"data-structures/linear-data-structure/circular-buffer","path":"/data-structures/linear-data-structure/circular-buffer","sidebar":"tutorialSidebar"},{"id":"data-structures/linear-data-structure/dequeue","path":"/data-structures/linear-data-structure/dequeue","sidebar":"tutorialSidebar"},{"id":"data-structures/linear-data-structure/indexed-priority-queue","path":"/data-structures/linear-data-structure/indexed-priority-queue","sidebar":"tutorialSidebar"},{"id":"data-structures/linear-data-structure/linked-list","path":"/data-structures/linear-data-structure/linked-list","sidebar":"tutorialSidebar"},{"id":"data-structures/linear-data-structure/priority-queue","path":"/data-structures/linear-data-structure/priority-queue","sidebar":"tutorialSidebar"},{"id":"data-structures/linear-data-structure/problems","path":"/data-structures/linear-data-structure/problems","sidebar":"tutorialSidebar"},{"id":"data-structures/linear-data-structure/queue-fifo","path":"/data-structures/linear-data-structure/queue-fifo","sidebar":"tutorialSidebar"},{"id":"data-structures/linear-data-structure/randomized-queue","path":"/data-structures/linear-data-structure/randomized-queue","sidebar":"tutorialSidebar"},{"id":"data-structures/linear-data-structure/readme","path":"/data-structures/linear-data-structure/","sidebar":"tutorialSidebar"},{"id":"data-structures/linear-data-structure/sets","path":"/data-structures/linear-data-structure/sets","sidebar":"tutorialSidebar"},{"id":"data-structures/linear-data-structure/skip-lists","path":"/data-structures/linear-data-structure/skip-lists","sidebar":"tutorialSidebar"},{"id":"data-structures/linear-data-structure/stack-lifo","path":"/data-structures/linear-data-structure/stack-lifo","sidebar":"tutorialSidebar"},{"id":"data-structures/others/bitmap","path":"/data-structures/others/bitmap","sidebar":"tutorialSidebar"},{"id":"data-structures/others/large-objects","path":"/data-structures/others/large-objects","sidebar":"tutorialSidebar"},{"id":"data-structures/others/lsm-log-structured-merge-trees","path":"/data-structures/others/lsm-log-structured-merge-trees","sidebar":"tutorialSidebar"},{"id":"data-structures/others/readme","path":"/data-structures/others/","sidebar":"tutorialSidebar"},{"id":"data-structures/others/sstables-sorted-string-tables","path":"/data-structures/others/sstables-sorted-string-tables","sidebar":"tutorialSidebar"},{"id":"data-structures/readme","path":"/data-structures/","sidebar":"tutorialSidebar"},{"id":"data-structures/trie/compressed-trie","path":"/data-structures/trie/compressed-trie","sidebar":"tutorialSidebar"},{"id":"data-structures/trie/others","path":"/data-structures/trie/others","sidebar":"tutorialSidebar"},{"id":"data-structures/trie/patricia-trie","path":"/data-structures/trie/patricia-trie","sidebar":"tutorialSidebar"},{"id":"data-structures/trie/questions","path":"/data-structures/trie/questions","sidebar":"tutorialSidebar"},{"id":"data-structures/trie/r-way-tries","path":"/data-structures/trie/r-way-tries","sidebar":"tutorialSidebar"},{"id":"data-structures/trie/readme","path":"/data-structures/trie/","sidebar":"tutorialSidebar"},{"id":"data-structures/trie/standard-trie","path":"/data-structures/trie/standard-trie","sidebar":"tutorialSidebar"},{"id":"data-structures/trie/suffix-array","path":"/data-structures/trie/suffix-array","sidebar":"tutorialSidebar"},{"id":"data-structures/trie/suffix-tree","path":"/data-structures/trie/suffix-tree","sidebar":"tutorialSidebar"},{"id":"data-structures/trie/ternary-search-tries-tst","path":"/data-structures/trie/ternary-search-tries-tst","sidebar":"tutorialSidebar"},{"id":"databases/concepts/acid-and-base","path":"/databases/concepts/acid-and-base","sidebar":"tutorialSidebar"},{"id":"databases/concepts/amazon-databases","path":"/databases/concepts/amazon-databases","sidebar":"tutorialSidebar"},{"id":"databases/concepts/comparisions","path":"/databases/concepts/comparisions","sidebar":"tutorialSidebar"},{"id":"databases/concepts/concurrency-control","path":"/databases/concepts/concurrency-control","sidebar":"tutorialSidebar"},{"id":"databases/concepts/core-concepts","path":"/databases/concepts/core-concepts","sidebar":"tutorialSidebar"},{"id":"databases/concepts/database-workloads","path":"/databases/concepts/database-workloads","sidebar":"tutorialSidebar"},{"id":"databases/concepts/disk-oriented-vs-in-memory-dbs","path":"/databases/concepts/disk-oriented-vs-in-memory-dbs","sidebar":"tutorialSidebar"},{"id":"databases/concepts/history","path":"/databases/concepts/history","sidebar":"tutorialSidebar"},{"id":"databases/concepts/intro","path":"/databases/concepts/intro","sidebar":"tutorialSidebar"},{"id":"databases/concepts/isolation-levels","path":"/databases/concepts/isolation-levels","sidebar":"tutorialSidebar"},{"id":"databases/concepts/mvcc-multiversion-concurrency-control","path":"/databases/concepts/mvcc-multiversion-concurrency-control","sidebar":"tutorialSidebar"},{"id":"databases/concepts/others","path":"/databases/concepts/others","sidebar":"tutorialSidebar"},{"id":"databases/concepts/readme","path":"/databases/concepts/","sidebar":"tutorialSidebar"},{"id":"databases/concepts/rum-conjecture","path":"/databases/concepts/rum-conjecture","sidebar":"tutorialSidebar"},{"id":"databases/concepts/types-of-databases","path":"/databases/concepts/types-of-databases","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/01-intro","path":"/databases/data-warehousing/01-intro","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/02-concepts","path":"/databases/data-warehousing/02-concepts","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/03-slowly-changing-dimension-scd","path":"/databases/data-warehousing/03-slowly-changing-dimension-scd","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/04-fact-dimension-tables","path":"/databases/data-warehousing/04-fact-dimension-tables","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/05-characteristics","path":"/databases/data-warehousing/05-characteristics","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/06-architecture","path":"/databases/data-warehousing/06-architecture","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/07-warehouse-schemas","path":"/databases/data-warehousing/07-warehouse-schemas","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/08-data-lake","path":"/databases/data-warehousing/08-data-lake","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/09-kimball-inmon-architecture","path":"/databases/data-warehousing/09-kimball-inmon-architecture","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/10-lambda-architecture","path":"/databases/data-warehousing/10-lambda-architecture","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/11-dw-databases","path":"/databases/data-warehousing/11-dw-databases","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/change-data-capture-cdc","path":"/databases/data-warehousing/change-data-capture-cdc","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/data-engineering","path":"/databases/data-warehousing/data-engineering","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/debezium","path":"/databases/data-warehousing/debezium","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/etl-extract-transform-load","path":"/databases/data-warehousing/etl-extract-transform-load","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/master-data-management-mdm","path":"/databases/data-warehousing/master-data-management-mdm","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/readme","path":"/databases/data-warehousing/","sidebar":"tutorialSidebar"},{"id":"databases/data-warehousing/tools","path":"/databases/data-warehousing/tools","sidebar":"tutorialSidebar"},{"id":"databases/indexing/database-index","path":"/databases/indexing/database-index","sidebar":"tutorialSidebar"},{"id":"databases/indexing/indexing-questions","path":"/databases/indexing/indexing-questions","sidebar":"tutorialSidebar"},{"id":"databases/indexing/intro","path":"/databases/indexing/intro","sidebar":"tutorialSidebar"},{"id":"databases/indexing/inverted-index","path":"/databases/indexing/inverted-index","sidebar":"tutorialSidebar"},{"id":"databases/indexing/mysql-indexing","path":"/databases/indexing/mysql-indexing","sidebar":"tutorialSidebar"},{"id":"databases/indexing/readme","path":"/databases/indexing/","sidebar":"tutorialSidebar"},{"id":"databases/modeling/data-modeling","path":"/databases/modeling/data-modeling","sidebar":"tutorialSidebar"},{"id":"databases/modeling/er-diagrams-entity-relationships","path":"/databases/modeling/er-diagrams-entity-relationships","sidebar":"tutorialSidebar"},{"id":"databases/modeling/er-tools","path":"/databases/modeling/er-tools","sidebar":"tutorialSidebar"},{"id":"databases/modeling/readme","path":"/databases/modeling/","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/aws-dynamodb/capacity-modes","path":"/databases/nosql-databases/aws-dynamodb/capacity-modes","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/aws-dynamodb/cheatsheet","path":"/databases/nosql-databases/aws-dynamodb/cheatsheet","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/aws-dynamodb/core-components","path":"/databases/nosql-databases/aws-dynamodb/core-components","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/aws-dynamodb/documentation","path":"/databases/nosql-databases/aws-dynamodb/documentation","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/aws-dynamodb/intro","path":"/databases/nosql-databases/aws-dynamodb/intro","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/aws-dynamodb/others","path":"/databases/nosql-databases/aws-dynamodb/others","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/aws-dynamodb/readme","path":"/databases/nosql-databases/aws-dynamodb/","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/aws-dynamodb/table-classes","path":"/databases/nosql-databases/aws-dynamodb/table-classes","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/aws-dynamodb/working","path":"/databases/nosql-databases/aws-dynamodb/working","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/cassandra/commands","path":"/databases/nosql-databases/cassandra/commands","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/cassandra/consistency","path":"/databases/nosql-databases/cassandra/consistency","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/cassandra/cql-cassandra-query-language","path":"/databases/nosql-databases/cassandra/cql-cassandra-query-language","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/cassandra/data-model","path":"/databases/nosql-databases/cassandra/data-model","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/cassandra/design","path":"/databases/nosql-databases/cassandra/design","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/cassandra/drivers-clients","path":"/databases/nosql-databases/cassandra/drivers-clients","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/cassandra/intro","path":"/databases/nosql-databases/cassandra/intro","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/cassandra/questions","path":"/databases/nosql-databases/cassandra/questions","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/cassandra/readme","path":"/databases/nosql-databases/cassandra/","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/cassandra/working","path":"/databases/nosql-databases/cassandra/working","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/clickhouse","path":"/databases/nosql-databases/clickhouse","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/column-family","path":"/databases/nosql-databases/column-family","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/comparisions","path":"/databases/nosql-databases/comparisions","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/druid/architecture","path":"/databases/nosql-databases/druid/architecture","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/druid/cheatsheet","path":"/databases/nosql-databases/druid/cheatsheet","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/druid/commands","path":"/databases/nosql-databases/druid/commands","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/druid/documentation","path":"/databases/nosql-databases/druid/documentation","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/druid/faqs","path":"/databases/nosql-databases/druid/faqs","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/druid/intro","path":"/databases/nosql-databases/druid/intro","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/druid/others","path":"/databases/nosql-databases/druid/others","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/druid/paper","path":"/databases/nosql-databases/druid/paper","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/druid/readme","path":"/databases/nosql-databases/druid/","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/etcd","path":"/databases/nosql-databases/etcd","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/mongodb/commands","path":"/databases/nosql-databases/mongodb/commands","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/mongodb/data-types","path":"/databases/nosql-databases/mongodb/data-types","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/mongodb/indexes","path":"/databases/nosql-databases/mongodb/indexes","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/mongodb/intro","path":"/databases/nosql-databases/mongodb/intro","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/mongodb/others","path":"/databases/nosql-databases/mongodb/others","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/mongodb/overview","path":"/databases/nosql-databases/mongodb/overview","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/mongodb/pymongo","path":"/databases/nosql-databases/mongodb/pymongo","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/mongodb/questions","path":"/databases/nosql-databases/mongodb/questions","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/mongodb/read-write-concern","path":"/databases/nosql-databases/mongodb/read-write-concern","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/mongodb/readme","path":"/databases/nosql-databases/mongodb/","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/mongodb/sharding-replication","path":"/databases/nosql-databases/mongodb/sharding-replication","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/mongodb/vector-search","path":"/databases/nosql-databases/mongodb/vector-search","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/others","path":"/databases/nosql-databases/others","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/readme","path":"/databases/nosql-databases/","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/redis/best-practices","path":"/databases/nosql-databases/redis/best-practices","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/redis/commands","path":"/databases/nosql-databases/redis/commands","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/redis/documentation","path":"/databases/nosql-databases/redis/documentation","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/redis/intro","path":"/databases/nosql-databases/redis/intro","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/redis/others","path":"/databases/nosql-databases/redis/others","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/redis/readme","path":"/databases/nosql-databases/redis/","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/redis/redis-concepts","path":"/databases/nosql-databases/redis/redis-concepts","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/redis/redis-data-types","path":"/databases/nosql-databases/redis/redis-data-types","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/redis/redis-eviction-policies","path":"/databases/nosql-databases/redis/redis-eviction-policies","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/redis/redis-py","path":"/databases/nosql-databases/redis/redis-py","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/redis/redis-queues","path":"/databases/nosql-databases/redis/redis-queues","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/redis/redis-streams-pubsub","path":"/databases/nosql-databases/redis/redis-streams-pubsub","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/redis/scaling","path":"/databases/nosql-databases/redis/scaling","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/snowflake/architecture","path":"/databases/nosql-databases/snowflake/architecture","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/snowflake/commands","path":"/databases/nosql-databases/snowflake/commands","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/snowflake/compute","path":"/databases/nosql-databases/snowflake/compute","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/snowflake/documentation","path":"/databases/nosql-databases/snowflake/documentation","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/snowflake/governance","path":"/databases/nosql-databases/snowflake/governance","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/snowflake/ingestion","path":"/databases/nosql-databases/snowflake/ingestion","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/snowflake/intro","path":"/databases/nosql-databases/snowflake/intro","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/snowflake/optimizations","path":"/databases/nosql-databases/snowflake/optimizations","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/snowflake/readme","path":"/databases/nosql-databases/snowflake/","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/snowflake/recovery","path":"/databases/nosql-databases/snowflake/recovery","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/snowflake/stages","path":"/databases/nosql-databases/snowflake/stages","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/snowflake/terms","path":"/databases/nosql-databases/snowflake/terms","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/tidb","path":"/databases/nosql-databases/tidb","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/time-series-db/influxdb/administration","path":"/databases/nosql-databases/time-series-db/influxdb/administration","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/time-series-db/influxdb/commands-influx-query-language-influxql","path":"/databases/nosql-databases/time-series-db/influxdb/commands-influx-query-language-influxql","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/time-series-db/influxdb/concepts","path":"/databases/nosql-databases/time-series-db/influxdb/concepts","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/time-series-db/influxdb/influx","path":"/databases/nosql-databases/time-series-db/influxdb/influx","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/time-series-db/influxdb/kapacitor","path":"/databases/nosql-databases/time-series-db/influxdb/kapacitor","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/time-series-db/influxdb/others","path":"/databases/nosql-databases/time-series-db/influxdb/others","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/time-series-db/influxdb/readme","path":"/databases/nosql-databases/time-series-db/influxdb/","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/time-series-db/influxdb/tools","path":"/databases/nosql-databases/time-series-db/influxdb/tools","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/time-series-db/influxdb/upgrades","path":"/databases/nosql-databases/time-series-db/influxdb/upgrades","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/time-series-db/influxdb/write-protocols","path":"/databases/nosql-databases/time-series-db/influxdb/write-protocols","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/time-series-db/readme","path":"/databases/nosql-databases/time-series-db/","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/time-series-db/time-series-databases","path":"/databases/nosql-databases/time-series-db/time-series-databases","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/time-series-db/timescaledb","path":"/databases/nosql-databases/time-series-db/timescaledb","sidebar":"tutorialSidebar"},{"id":"databases/nosql-databases/yugabytedb","path":"/databases/nosql-databases/yugabytedb","sidebar":"tutorialSidebar"},{"id":"databases/others/course-advanced-database-systems","path":"/databases/others/course-advanced-database-systems","sidebar":"tutorialSidebar"},{"id":"databases/others/course-aws-certified-database-specialty","path":"/databases/others/course-aws-certified-database-specialty","sidebar":"tutorialSidebar"},{"id":"databases/others/database-activity-monitoring-dam","path":"/databases/others/database-activity-monitoring-dam","sidebar":"tutorialSidebar"},{"id":"databases/others/database-migration-tools","path":"/databases/others/database-migration-tools","sidebar":"tutorialSidebar"},{"id":"databases/others/databases-others","path":"/databases/others/databases-others","sidebar":"tutorialSidebar"},{"id":"databases/others/readme","path":"/databases/others/","sidebar":"tutorialSidebar"},{"id":"databases/others/technologies-tools","path":"/databases/others/technologies-tools","sidebar":"tutorialSidebar"},{"id":"databases/readme","path":"/databases/","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/amazon-aurora-vs-rds","path":"/databases/sql-databases/amazon-aurora-vs-rds","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/amazon-rds","path":"/databases/sql-databases/amazon-rds","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-aurora/aurora-documentation","path":"/databases/sql-databases/aws-aurora/aurora-documentation","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-aurora/aurora-global-databases","path":"/databases/sql-databases/aws-aurora/aurora-global-databases","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-aurora/aurora-serverless","path":"/databases/sql-databases/aws-aurora/aurora-serverless","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-aurora/backup","path":"/databases/sql-databases/aws-aurora/backup","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-aurora/configurations-optimizations-best-practices","path":"/databases/sql-databases/aws-aurora/configurations-optimizations-best-practices","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-aurora/costs","path":"/databases/sql-databases/aws-aurora/costs","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-aurora/high-availability-ha","path":"/databases/sql-databases/aws-aurora/high-availability-ha","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-aurora/high-availability-ha-others","path":"/databases/sql-databases/aws-aurora/high-availability-ha-others","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-aurora/intro","path":"/databases/sql-databases/aws-aurora/intro","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-aurora/monitoring","path":"/databases/sql-databases/aws-aurora/monitoring","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-aurora/others","path":"/databases/sql-databases/aws-aurora/others","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-aurora/readme","path":"/databases/sql-databases/aws-aurora/","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-aurora/storage","path":"/databases/sql-databases/aws-aurora/storage","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-redshift/architecture","path":"/databases/sql-databases/aws-redshift/architecture","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-redshift/deep-dive-best-practices","path":"/databases/sql-databases/aws-redshift/deep-dive-best-practices","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-redshift/documentation","path":"/databases/sql-databases/aws-redshift/documentation","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-redshift/etl-redshift","path":"/databases/sql-databases/aws-redshift/etl-redshift","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-redshift/intro","path":"/databases/sql-databases/aws-redshift/intro","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-redshift/others","path":"/databases/sql-databases/aws-redshift/others","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-redshift/pricing-sizing","path":"/databases/sql-databases/aws-redshift/pricing-sizing","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-redshift/readme","path":"/databases/sql-databases/aws-redshift/","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-redshift/redshift-sql-queries-commands","path":"/databases/sql-databases/aws-redshift/redshift-sql-queries-commands","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/aws-redshift/wlm-qmr","path":"/databases/sql-databases/aws-redshift/wlm-qmr","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/memsql/intro","path":"/databases/sql-databases/memsql/intro","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/memsql/readme","path":"/databases/sql-databases/memsql/","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/administration-configuration","path":"/databases/sql-databases/mysql/administration-configuration","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/backup-comparisons","path":"/databases/sql-databases/mysql/backup-comparisons","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/backup-policy","path":"/databases/sql-databases/mysql/backup-policy","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/backup-types","path":"/databases/sql-databases/mysql/backup-types","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/connection-handling","path":"/databases/sql-databases/mysql/connection-handling","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/documentation","path":"/databases/sql-databases/mysql/documentation","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/gtid-replication","path":"/databases/sql-databases/mysql/gtid-replication","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/intro","path":"/databases/sql-databases/mysql/intro","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/mydumper","path":"/databases/sql-databases/mysql/mydumper","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/mysql-data-types","path":"/databases/sql-databases/mysql/mysql-data-types","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/mysql-heatwave","path":"/databases/sql-databases/mysql/mysql-heatwave","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/mysql-triggers","path":"/databases/sql-databases/mysql/mysql-triggers","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/mysqlbinlog","path":"/databases/sql-databases/mysql/mysqlbinlog","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/mysqldump","path":"/databases/sql-databases/mysql/mysqldump","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/optimizing-locking-operations","path":"/databases/sql-databases/mysql/optimizing-locking-operations","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/others","path":"/databases/sql-databases/mysql/others","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/partitioning","path":"/databases/sql-databases/mysql/partitioning","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/percona-toolkit","path":"/databases/sql-databases/mysql/percona-toolkit","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/percona-xtrabackup","path":"/databases/sql-databases/mysql/percona-xtrabackup","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/readme","path":"/databases/sql-databases/mysql/","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/replication","path":"/databases/sql-databases/mysql/replication","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/scaling-optimizations","path":"/databases/sql-databases/mysql/scaling-optimizations","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/server-sql-modes","path":"/databases/sql-databases/mysql/server-sql-modes","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/sql-mysql-tools","path":"/databases/sql-databases/mysql/sql-mysql-tools","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/thread-states","path":"/databases/sql-databases/mysql/thread-states","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/mysql/transaction-commit-rollback","path":"/databases/sql-databases/mysql/transaction-commit-rollback","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/normalization","path":"/databases/sql-databases/normalization","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/partitioning-sharding","path":"/databases/sql-databases/partitioning-sharding","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/postgres/architecture","path":"/databases/sql-databases/postgres/architecture","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/postgres/documentation","path":"/databases/sql-databases/postgres/documentation","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/postgres/indexes","path":"/databases/sql-databases/postgres/indexes","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/postgres/others","path":"/databases/sql-databases/postgres/others","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/postgres/parameters-configuration-optimization","path":"/databases/sql-databases/postgres/parameters-configuration-optimization","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/postgres/readme","path":"/databases/sql-databases/postgres/","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/postgres/replication","path":"/databases/sql-databases/postgres/replication","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/postgres/table-partitioning","path":"/databases/sql-databases/postgres/table-partitioning","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/rdbms","path":"/databases/sql-databases/rdbms","sidebar":"tutorialSidebar"},{"id":"databases/sql-databases/readme","path":"/databases/sql-databases/","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/blockchain","path":"/decentralized-applications/blockchain","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/bip39","path":"/decentralized-applications/coins-tokens-chains/bip39","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/bitcoin","path":"/decentralized-applications/coins-tokens-chains/bitcoin","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/bnb","path":"/decentralized-applications/coins-tokens-chains/bnb","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/cardano","path":"/decentralized-applications/coins-tokens-chains/cardano","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/celestia","path":"/decentralized-applications/coins-tokens-chains/celestia","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/coin-token-intro","path":"/decentralized-applications/coins-tokens-chains/coin-token-intro","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/dai","path":"/decentralized-applications/coins-tokens-chains/dai","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/dtokens","path":"/decentralized-applications/coins-tokens-chains/dtokens","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/dual-token-economy","path":"/decentralized-applications/coins-tokens-chains/dual-token-economy","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/litecoin","path":"/decentralized-applications/coins-tokens-chains/litecoin","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/near-protocol","path":"/decentralized-applications/coins-tokens-chains/near-protocol","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/nft-non-fungible-tokens","path":"/decentralized-applications/coins-tokens-chains/nft-non-fungible-tokens","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/ordinals","path":"/decentralized-applications/coins-tokens-chains/ordinals","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/readme","path":"/decentralized-applications/coins-tokens-chains/","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/stable-coins","path":"/decentralized-applications/coins-tokens-chains/stable-coins","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/thorchain","path":"/decentralized-applications/coins-tokens-chains/thorchain","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/uniswap","path":"/decentralized-applications/coins-tokens-chains/uniswap","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/usdc","path":"/decentralized-applications/coins-tokens-chains/usdc","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/usdt","path":"/decentralized-applications/coins-tokens-chains/usdt","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/vechain","path":"/decentralized-applications/coins-tokens-chains/vechain","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/coins-tokens-chains/wallets","path":"/decentralized-applications/coins-tokens-chains/wallets","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/consensus-protocols","path":"/decentralized-applications/consensus-protocols","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/crypto-exchanges","path":"/decentralized-applications/crypto-exchanges","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/crypto-future","path":"/decentralized-applications/crypto-future","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/crypto-investing","path":"/decentralized-applications/crypto-investing","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/crypto-news","path":"/decentralized-applications/crypto-news","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/defi","path":"/decentralized-applications/defi","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/defi-apps","path":"/decentralized-applications/defi-apps","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/development/infura","path":"/decentralized-applications/development/infura","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/development/readme","path":"/decentralized-applications/development/","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/development/sample-code","path":"/decentralized-applications/development/sample-code","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/01-intro-to-ethereum","path":"/decentralized-applications/ethereum/01-intro-to-ethereum","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/02-intro-to-ether","path":"/decentralized-applications/ethereum/02-intro-to-ether","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/03-intro-to-dapps","path":"/decentralized-applications/ethereum/03-intro-to-dapps","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/05-accounts","path":"/decentralized-applications/ethereum/05-accounts","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/06-transactions","path":"/decentralized-applications/ethereum/06-transactions","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/07-blocks","path":"/decentralized-applications/ethereum/07-blocks","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/08-evm","path":"/decentralized-applications/ethereum/08-evm","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/09-gas","path":"/decentralized-applications/ethereum/09-gas","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/10-nodes-and-clients","path":"/decentralized-applications/ethereum/10-nodes-and-clients","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/30-bridges","path":"/decentralized-applications/ethereum/30-bridges","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/40-proof-of-stake","path":"/decentralized-applications/ethereum/40-proof-of-stake","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/41-rewards-and-penalties","path":"/decentralized-applications/ethereum/41-rewards-and-penalties","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/42-block-proposals","path":"/decentralized-applications/ethereum/42-block-proposals","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/arbitrum","path":"/decentralized-applications/ethereum/arbitrum","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/dao","path":"/decentralized-applications/ethereum/dao","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/erc-4337","path":"/decentralized-applications/ethereum/erc-4337","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/ethereum-intro","path":"/decentralized-applications/ethereum/ethereum-intro","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/ethereum-staking","path":"/decentralized-applications/ethereum/ethereum-staking","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/etherjs","path":"/decentralized-applications/ethereum/etherjs","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/layer-2-protocols","path":"/decentralized-applications/ethereum/layer-2-protocols","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/others","path":"/decentralized-applications/ethereum/others","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/polygon","path":"/decentralized-applications/ethereum/polygon","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/readme","path":"/decentralized-applications/ethereum/","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/solidity","path":"/decentralized-applications/ethereum/solidity","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/ethereum/upgrades","path":"/decentralized-applications/ethereum/upgrades","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/intro","path":"/decentralized-applications/intro","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/key-concepts","path":"/decentralized-applications/key-concepts","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/liquidity-mining","path":"/decentralized-applications/liquidity-mining","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/on-chain-analytics","path":"/decentralized-applications/on-chain-analytics","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/others","path":"/decentralized-applications/others","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/readme","path":"/decentralized-applications/","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/references-learning","path":"/decentralized-applications/references-learning","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/tokenomics","path":"/decentralized-applications/tokenomics","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/tools","path":"/decentralized-applications/tools","sidebar":"tutorialSidebar"},{"id":"decentralized-applications/trilemmas","path":"/decentralized-applications/trilemmas","sidebar":"tutorialSidebar"},{"id":"devops/ansible/commands","path":"/devops/ansible/commands","sidebar":"tutorialSidebar"},{"id":"devops/ansible/readme","path":"/devops/ansible/","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/application-management","path":"/devops/devops-intro/application-management","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/chaos-engineering","path":"/devops/devops-intro/chaos-engineering","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/concepts","path":"/devops/devops-intro/concepts","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/deployment-strategies","path":"/devops/devops-intro/deployment-strategies","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/design","path":"/devops/devops-intro/design","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/disaster-recovery","path":"/devops/devops-intro/disaster-recovery","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/distributed-tracing","path":"/devops/devops-intro/distributed-tracing","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/dora-metrics","path":"/devops/devops-intro/dora-metrics","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/feature-toggles-flags","path":"/devops/devops-intro/feature-toggles-flags","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/finops","path":"/devops/devops-intro/finops","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/gitops","path":"/devops/devops-intro/gitops","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/high-availability","path":"/devops/devops-intro/high-availability","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/infra-as-code-iac","path":"/devops/devops-intro/infra-as-code-iac","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/intro","path":"/devops/devops-intro/intro","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/load-balancer","path":"/devops/devops-intro/load-balancer","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/load-balancer-features","path":"/devops/devops-intro/load-balancer-features","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/load-balancer-tools","path":"/devops/devops-intro/load-balancer-tools","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/load-balancing-algorithms","path":"/devops/devops-intro/load-balancing-algorithms","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/others","path":"/devops/devops-intro/others","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/platform-engineering","path":"/devops/devops-intro/platform-engineering","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/proxy","path":"/devops/devops-intro/proxy","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/readme","path":"/devops/devops-intro/","sidebar":"tutorialSidebar"},{"id":"devops/devops-intro/sre-site-reliability-engineering","path":"/devops/devops-intro/sre-site-reliability-engineering","sidebar":"tutorialSidebar"},{"id":"devops/docker/concepts","path":"/devops/docker/concepts","sidebar":"tutorialSidebar"},{"id":"devops/docker/containers","path":"/devops/docker/containers","sidebar":"tutorialSidebar"},{"id":"devops/docker/docker-commands","path":"/devops/docker/docker-commands","sidebar":"tutorialSidebar"},{"id":"devops/docker/docker-compose","path":"/devops/docker/docker-compose","sidebar":"tutorialSidebar"},{"id":"devops/docker/docker-compose-example","path":"/devops/docker/docker-compose-example","sidebar":"tutorialSidebar"},{"id":"devops/docker/dockerfile-example","path":"/devops/docker/dockerfile-example","sidebar":"tutorialSidebar"},{"id":"devops/docker/dockerfiles","path":"/devops/docker/dockerfiles","sidebar":"tutorialSidebar"},{"id":"devops/docker/intro","path":"/devops/docker/intro","sidebar":"tutorialSidebar"},{"id":"devops/docker/networking","path":"/devops/docker/networking","sidebar":"tutorialSidebar"},{"id":"devops/docker/others","path":"/devops/docker/others","sidebar":"tutorialSidebar"},{"id":"devops/docker/readme","path":"/devops/docker/","sidebar":"tutorialSidebar"},{"id":"devops/docker/service-configuration-reference","path":"/devops/docker/service-configuration-reference","sidebar":"tutorialSidebar"},{"id":"devops/docker/stack-swarm","path":"/devops/docker/stack-swarm","sidebar":"tutorialSidebar"},{"id":"devops/ides/jupyter-jupyterlab-notebook/readme","path":"/devops/ides/jupyter-jupyterlab-notebook/","sidebar":"tutorialSidebar"},{"id":"devops/ides/jupyter-jupyterlab-notebook/template","path":"/devops/ides/jupyter-jupyterlab-notebook/template","sidebar":"tutorialSidebar"},{"id":"devops/ides/jupyter-jupyterlab-notebook/tools","path":"/devops/ides/jupyter-jupyterlab-notebook/tools","sidebar":"tutorialSidebar"},{"id":"devops/ides/mac","path":"/devops/ides/mac","sidebar":"tutorialSidebar"},{"id":"devops/ides/medium-blogging","path":"/devops/ides/medium-blogging","sidebar":"tutorialSidebar"},{"id":"devops/ides/obsidian","path":"/devops/ides/obsidian","sidebar":"tutorialSidebar"},{"id":"devops/ides/obsidian-in-vscode","path":"/devops/ides/obsidian-in-vscode","sidebar":"tutorialSidebar"},{"id":"devops/ides/onenote","path":"/devops/ides/onenote","sidebar":"tutorialSidebar"},{"id":"devops/ides/others","path":"/devops/ides/others","sidebar":"tutorialSidebar"},{"id":"devops/ides/pycharm","path":"/devops/ides/pycharm","sidebar":"tutorialSidebar"},{"id":"devops/ides/readme","path":"/devops/ides/","sidebar":"tutorialSidebar"},{"id":"devops/ides/spyder","path":"/devops/ides/spyder","sidebar":"tutorialSidebar"},{"id":"devops/ides/vscode-vs-code","path":"/devops/ides/vscode-vs-code","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/api-resources","path":"/devops/kubernetes/api-resources","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/architecture","path":"/devops/kubernetes/architecture","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/cluster-administration/logging-architecture","path":"/devops/kubernetes/cluster-administration/logging-architecture","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/cluster-administration/others","path":"/devops/kubernetes/cluster-administration/others","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/cluster-administration/readme","path":"/devops/kubernetes/cluster-administration/","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/concepts-and-overview/configuration/readme","path":"/devops/kubernetes/concepts-and-overview/configuration/","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/concepts-and-overview/configuration/secrets","path":"/devops/kubernetes/concepts-and-overview/configuration/secrets","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/concepts-and-overview/policies","path":"/devops/kubernetes/concepts-and-overview/policies","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/concepts-and-overview/readme","path":"/devops/kubernetes/concepts-and-overview/","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/configuration","path":"/devops/kubernetes/configuration","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/design-patterns","path":"/devops/kubernetes/design-patterns","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/helm","path":"/devops/kubernetes/helm","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/intro","path":"/devops/kubernetes/intro","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/keda","path":"/devops/kubernetes/keda","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/kubectl-commands","path":"/devops/kubernetes/kubectl-commands","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/kubeedge","path":"/devops/kubernetes/kubeedge","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/kubernetes-manifests-examples","path":"/devops/kubernetes/kubernetes-manifests-examples","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/operators","path":"/devops/kubernetes/operators","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/optimizations","path":"/devops/kubernetes/optimizations","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/others","path":"/devops/kubernetes/others","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/outline-documentation","path":"/devops/kubernetes/outline-documentation","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/readme","path":"/devops/kubernetes/","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/reference/quality-of-service-qos","path":"/devops/kubernetes/reference/quality-of-service-qos","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/reference/rbac","path":"/devops/kubernetes/reference/rbac","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/reference/readme","path":"/devops/kubernetes/reference/","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/services-loadbalancing-and-networking/ingress","path":"/devops/kubernetes/services-loadbalancing-and-networking/ingress","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/services-loadbalancing-and-networking/others","path":"/devops/kubernetes/services-loadbalancing-and-networking/others","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/services-loadbalancing-and-networking/readme","path":"/devops/kubernetes/services-loadbalancing-and-networking/","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/services-loadbalancing-and-networking/services","path":"/devops/kubernetes/services-loadbalancing-and-networking/services","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/storage","path":"/devops/kubernetes/storage","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/tasks","path":"/devops/kubernetes/tasks","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/tools","path":"/devops/kubernetes/tools","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/tools-scaling","path":"/devops/kubernetes/tools-scaling","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/tools-serverless","path":"/devops/kubernetes/tools-serverless","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/troubleshooting","path":"/devops/kubernetes/troubleshooting","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/workloads/controllers","path":"/devops/kubernetes/workloads/controllers","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/workloads/others","path":"/devops/kubernetes/workloads/others","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/workloads/pod-lifecycle","path":"/devops/kubernetes/workloads/pod-lifecycle","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/workloads/pods","path":"/devops/kubernetes/workloads/pods","sidebar":"tutorialSidebar"},{"id":"devops/kubernetes/workloads/readme","path":"/devops/kubernetes/workloads/","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/grafana","path":"/devops/monitoring/grafana","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/grafana-loki","path":"/devops/monitoring/grafana-loki","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/graphite","path":"/devops/monitoring/graphite","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/istio/architecture","path":"/devops/monitoring/istio/architecture","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/istio/commands","path":"/devops/monitoring/istio/commands","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/istio/examples","path":"/devops/monitoring/istio/examples","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/istio/intro","path":"/devops/monitoring/istio/intro","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/istio/observability","path":"/devops/monitoring/istio/observability","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/istio/operations","path":"/devops/monitoring/istio/operations","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/istio/others","path":"/devops/monitoring/istio/others","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/istio/readme","path":"/devops/monitoring/istio/","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/istio/security","path":"/devops/monitoring/istio/security","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/istio/tasks","path":"/devops/monitoring/istio/tasks","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/istio/traffic-management","path":"/devops/monitoring/istio/traffic-management","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/linkerd","path":"/devops/monitoring/linkerd","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/metrics","path":"/devops/monitoring/metrics","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/open-tracing","path":"/devops/monitoring/open-tracing","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/others","path":"/devops/monitoring/others","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/prometheus/alert-manager","path":"/devops/monitoring/prometheus/alert-manager","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/prometheus/intro","path":"/devops/monitoring/prometheus/intro","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/prometheus/prometheus-architecture","path":"/devops/monitoring/prometheus/prometheus-architecture","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/prometheus/querying","path":"/devops/monitoring/prometheus/querying","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/prometheus/readme","path":"/devops/monitoring/prometheus/","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/prometheus/rules","path":"/devops/monitoring/prometheus/rules","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/readme","path":"/devops/monitoring/","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/service-mesh","path":"/devops/monitoring/service-mesh","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/telegraf/commands-and-configs","path":"/devops/monitoring/telegraf/commands-and-configs","sidebar":"tutorialSidebar"},{"id":"devops/monitoring/telegraf/readme","path":"/devops/monitoring/telegraf/","sidebar":"tutorialSidebar"},{"id":"devops/others/backstage","path":"/devops/others/backstage","sidebar":"tutorialSidebar"},{"id":"devops/others/coresync-pacemaker","path":"/devops/others/coresync-pacemaker","sidebar":"tutorialSidebar"},{"id":"devops/others/devtron","path":"/devops/others/devtron","sidebar":"tutorialSidebar"},{"id":"devops/others/jenkins","path":"/devops/others/jenkins","sidebar":"tutorialSidebar"},{"id":"devops/others/keycloak","path":"/devops/others/keycloak","sidebar":"tutorialSidebar"},{"id":"devops/others/kong","path":"/devops/others/kong","sidebar":"tutorialSidebar"},{"id":"devops/others/other-cicd","path":"/devops/others/other-cicd","sidebar":"tutorialSidebar"},{"id":"devops/others/other-tools","path":"/devops/others/other-tools","sidebar":"tutorialSidebar"},{"id":"devops/others/readme","path":"/devops/others/","sidebar":"tutorialSidebar"},{"id":"devops/readme","path":"/devops/","sidebar":"tutorialSidebar"},{"id":"devops/servers/apache-server","path":"/devops/servers/apache-server","sidebar":"tutorialSidebar"},{"id":"devops/servers/gunicorn","path":"/devops/servers/gunicorn","sidebar":"tutorialSidebar"},{"id":"devops/servers/nginx/configs","path":"/devops/servers/nginx/configs","sidebar":"tutorialSidebar"},{"id":"devops/servers/nginx/readme","path":"/devops/servers/nginx/","sidebar":"tutorialSidebar"},{"id":"devops/servers/readme","path":"/devops/servers/","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/1-linux-general-unix-linux-commands","path":"/devops/terminal-bash/1-linux-general-unix-linux-commands","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/2-system-calls","path":"/devops/terminal-bash/2-system-calls","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/3-library-functions","path":"/devops/terminal-bash/3-library-functions","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/8-linux-system-administration","path":"/devops/terminal-bash/8-linux-system-administration","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/bash-metacharacters","path":"/devops/terminal-bash/bash-metacharacters","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/bash-shortcuts","path":"/devops/terminal-bash/bash-shortcuts","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/manual-pages","path":"/devops/terminal-bash/manual-pages","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/networking-tools","path":"/devops/terminal-bash/networking-tools","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/others","path":"/devops/terminal-bash/others","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/readme","path":"/devops/terminal-bash/","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/shell-bash-script","path":"/devops/terminal-bash/shell-bash-script","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/shell-intro","path":"/devops/terminal-bash/shell-intro","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/sysctl","path":"/devops/terminal-bash/sysctl","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/tmux-iterm","path":"/devops/terminal-bash/tmux-iterm","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/tools/awk","path":"/devops/terminal-bash/tools/awk","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/tools/crontab","path":"/devops/terminal-bash/tools/crontab","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/tools/curl","path":"/devops/terminal-bash/tools/curl","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/tools/editors","path":"/devops/terminal-bash/tools/editors","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/tools/mosh","path":"/devops/terminal-bash/tools/mosh","sidebar":"tutorialSidebar"},{"id":"devops/terminal-bash/tools/rsync-rclone","path":"/devops/terminal-bash/tools/rsync-rclone","sidebar":"tutorialSidebar"},{"id":"devops/terraform/commands","path":"/devops/terraform/commands","sidebar":"tutorialSidebar"},{"id":"devops/terraform/documentation","path":"/devops/terraform/documentation","sidebar":"tutorialSidebar"},{"id":"devops/terraform/examples","path":"/devops/terraform/examples","sidebar":"tutorialSidebar"},{"id":"devops/terraform/readme","path":"/devops/terraform/","sidebar":"tutorialSidebar"},{"id":"devops/terraform/variables","path":"/devops/terraform/variables","sidebar":"tutorialSidebar"},{"id":"economics/accounting-for-finance/0-accounting-for-finance","path":"/economics/accounting-for-finance/0-accounting-for-finance","sidebar":"tutorialSidebar"},{"id":"economics/accounting-for-finance/1-accounting-first-steps","path":"/economics/accounting-for-finance/1-accounting-first-steps","sidebar":"tutorialSidebar"},{"id":"economics/accounting-for-finance/2-income-statements-and-profitability-measures","path":"/economics/accounting-for-finance/2-income-statements-and-profitability-measures","sidebar":"tutorialSidebar"},{"id":"economics/accounting-for-finance/2a-income-statement-comparisons","path":"/economics/accounting-for-finance/2a-income-statement-comparisons","sidebar":"tutorialSidebar"},{"id":"economics/accounting-for-finance/3-balance-sheets","path":"/economics/accounting-for-finance/3-balance-sheets","sidebar":"tutorialSidebar"},{"id":"economics/accounting-for-finance/3a-balance-sheet-comparisons","path":"/economics/accounting-for-finance/3a-balance-sheet-comparisons","sidebar":"tutorialSidebar"},{"id":"economics/accounting-for-finance/4-cash-flow-statements-cash-in-and-cash-out","path":"/economics/accounting-for-finance/4-cash-flow-statements-cash-in-and-cash-out","sidebar":"tutorialSidebar"},{"id":"economics/accounting-for-finance/4a-cash-flow-statement-comparisons","path":"/economics/accounting-for-finance/4a-cash-flow-statement-comparisons","sidebar":"tutorialSidebar"},{"id":"economics/accounting-for-finance/5-cleaning-up-accounting","path":"/economics/accounting-for-finance/5-cleaning-up-accounting","sidebar":"tutorialSidebar"},{"id":"economics/accounting-for-finance/5a-accounting-inconsistency-examples","path":"/economics/accounting-for-finance/5a-accounting-inconsistency-examples","sidebar":"tutorialSidebar"},{"id":"economics/accounting-for-finance/6-accouting-financial-ratios-profitability-measures","path":"/economics/accounting-for-finance/6-accouting-financial-ratios-profitability-measures","sidebar":"tutorialSidebar"},{"id":"economics/accounting-for-finance/6a-ratio-analysis","path":"/economics/accounting-for-finance/6a-ratio-analysis","sidebar":"tutorialSidebar"},{"id":"economics/accounting-for-finance/readme","path":"/economics/accounting-for-finance/","sidebar":"tutorialSidebar"},{"id":"economics/buy-now-pay-later-bnpl","path":"/economics/buy-now-pay-later-bnpl","sidebar":"tutorialSidebar"},{"id":"economics/corporate-finance/capital-budgeting","path":"/economics/corporate-finance/capital-budgeting","sidebar":"tutorialSidebar"},{"id":"economics/corporate-finance/corporate-actions","path":"/economics/corporate-finance/corporate-actions","sidebar":"tutorialSidebar"},{"id":"economics/corporate-finance/readme","path":"/economics/corporate-finance/","sidebar":"tutorialSidebar"},{"id":"economics/course-investing-zerodha-varsity","path":"/economics/course-investing-zerodha-varsity","sidebar":"tutorialSidebar"},{"id":"economics/finance-investing/asset-classes","path":"/economics/finance-investing/asset-classes","sidebar":"tutorialSidebar"},{"id":"economics/finance-investing/checklist-tips","path":"/economics/finance-investing/checklist-tips","sidebar":"tutorialSidebar"},{"id":"economics/finance-investing/company-analysis","path":"/economics/finance-investing/company-analysis","sidebar":"tutorialSidebar"},{"id":"economics/finance-investing/company-management","path":"/economics/finance-investing/company-management","sidebar":"tutorialSidebar"},{"id":"economics/finance-investing/financial-independence-fire","path":"/economics/finance-investing/financial-independence-fire","sidebar":"tutorialSidebar"},{"id":"economics/finance-investing/huf-private-trust","path":"/economics/finance-investing/huf-private-trust","sidebar":"tutorialSidebar"},{"id":"economics/finance-investing/indian-company-types","path":"/economics/finance-investing/indian-company-types","sidebar":"tutorialSidebar"},{"id":"economics/finance-investing/industry-sectors","path":"/economics/finance-investing/industry-sectors","sidebar":"tutorialSidebar"},{"id":"economics/finance-investing/personal-finance","path":"/economics/finance-investing/personal-finance","sidebar":"tutorialSidebar"},{"id":"economics/finance-investing/portfolio-management-services-pms","path":"/economics/finance-investing/portfolio-management-services-pms","sidebar":"tutorialSidebar"},{"id":"economics/finance-investing/portfolios","path":"/economics/finance-investing/portfolios","sidebar":"tutorialSidebar"},{"id":"economics/finance-investing/quotes","path":"/economics/finance-investing/quotes","sidebar":"tutorialSidebar"},{"id":"economics/finance-investing/readme","path":"/economics/finance-investing/","sidebar":"tutorialSidebar"},{"id":"economics/finance-investing/returns-tax-taxes-itr","path":"/economics/finance-investing/returns-tax-taxes-itr","sidebar":"tutorialSidebar"},{"id":"economics/finance-investing/stocks-equity","path":"/economics/finance-investing/stocks-equity","sidebar":"tutorialSidebar"},{"id":"economics/finance-terms","path":"/economics/finance-terms","sidebar":"tutorialSidebar"},{"id":"economics/financial-facts","path":"/economics/financial-facts","sidebar":"tutorialSidebar"},{"id":"economics/fintech-nbfc-banking-terms","path":"/economics/fintech-nbfc-banking-terms","sidebar":"tutorialSidebar"},{"id":"economics/government-terms","path":"/economics/government-terms","sidebar":"tutorialSidebar"},{"id":"economics/gross-domestic-product-gdp","path":"/economics/gross-domestic-product-gdp","sidebar":"tutorialSidebar"},{"id":"economics/inflation-indexes","path":"/economics/inflation-indexes","sidebar":"tutorialSidebar"},{"id":"economics/insurance","path":"/economics/insurance","sidebar":"tutorialSidebar"},{"id":"economics/intro","path":"/economics/intro","sidebar":"tutorialSidebar"},{"id":"economics/investment-banking","path":"/economics/investment-banking","sidebar":"tutorialSidebar"},{"id":"economics/investment-terms","path":"/economics/investment-terms","sidebar":"tutorialSidebar"},{"id":"economics/learning","path":"/economics/learning","sidebar":"tutorialSidebar"},{"id":"economics/market-terms/fundamental-analysis","path":"/economics/market-terms/fundamental-analysis","sidebar":"tutorialSidebar"},{"id":"economics/market-terms/futures-options-trading","path":"/economics/market-terms/futures-options-trading","sidebar":"tutorialSidebar"},{"id":"economics/market-terms/ipo","path":"/economics/market-terms/ipo","sidebar":"tutorialSidebar"},{"id":"economics/market-terms/others","path":"/economics/market-terms/others","sidebar":"tutorialSidebar"},{"id":"economics/market-terms/readme","path":"/economics/market-terms/","sidebar":"tutorialSidebar"},{"id":"economics/market-terms/swing-trading","path":"/economics/market-terms/swing-trading","sidebar":"tutorialSidebar"},{"id":"economics/market-terms/technical-analysis","path":"/economics/market-terms/technical-analysis","sidebar":"tutorialSidebar"},{"id":"economics/market-terms/technical-indicators","path":"/economics/market-terms/technical-indicators","sidebar":"tutorialSidebar"},{"id":"economics/market-terms/valuation-metrics","path":"/economics/market-terms/valuation-metrics","sidebar":"tutorialSidebar"},{"id":"economics/market-terms/wyckoff-method","path":"/economics/market-terms/wyckoff-method","sidebar":"tutorialSidebar"},{"id":"economics/mental-models/economics-mental-models","path":"/economics/mental-models/economics-mental-models","sidebar":"tutorialSidebar"},{"id":"economics/mental-models/inequality","path":"/economics/mental-models/inequality","sidebar":"tutorialSidebar"},{"id":"economics/mental-models/macroeconomics","path":"/economics/mental-models/macroeconomics","sidebar":"tutorialSidebar"},{"id":"economics/mental-models/marginal-utility-analysis","path":"/economics/mental-models/marginal-utility-analysis","sidebar":"tutorialSidebar"},{"id":"economics/mental-models/microeconomics","path":"/economics/mental-models/microeconomics","sidebar":"tutorialSidebar"},{"id":"economics/mental-models/rankings","path":"/economics/mental-models/rankings","sidebar":"tutorialSidebar"},{"id":"economics/mental-models/recession-shapes-recovery","path":"/economics/mental-models/recession-shapes-recovery","sidebar":"tutorialSidebar"},{"id":"economics/monetary-policies","path":"/economics/monetary-policies","sidebar":"tutorialSidebar"},{"id":"economics/mutual-funds/debentures-bonds","path":"/economics/mutual-funds/debentures-bonds","sidebar":"tutorialSidebar"},{"id":"economics/mutual-funds/debt-mutual-funds","path":"/economics/mutual-funds/debt-mutual-funds","sidebar":"tutorialSidebar"},{"id":"economics/mutual-funds/debt-mutual-funds-analysis","path":"/economics/mutual-funds/debt-mutual-funds-analysis","sidebar":"tutorialSidebar"},{"id":"economics/mutual-funds/debt-mutual-funds-risks","path":"/economics/mutual-funds/debt-mutual-funds-risks","sidebar":"tutorialSidebar"},{"id":"economics/mutual-funds/equity-mutual-funds","path":"/economics/mutual-funds/equity-mutual-funds","sidebar":"tutorialSidebar"},{"id":"economics/mutual-funds/fixed-income","path":"/economics/mutual-funds/fixed-income","sidebar":"tutorialSidebar"},{"id":"economics/mutual-funds/index-investing-etf","path":"/economics/mutual-funds/index-investing-etf","sidebar":"tutorialSidebar"},{"id":"economics/mutual-funds/mutual-funds-indicators","path":"/economics/mutual-funds/mutual-funds-indicators","sidebar":"tutorialSidebar"},{"id":"economics/mutual-funds/nifty-indexes-indices","path":"/economics/mutual-funds/nifty-indexes-indices","sidebar":"tutorialSidebar"},{"id":"economics/mutual-funds/others","path":"/economics/mutual-funds/others","sidebar":"tutorialSidebar"},{"id":"economics/mutual-funds/readme","path":"/economics/mutual-funds/","sidebar":"tutorialSidebar"},{"id":"economics/readme","path":"/economics/","sidebar":"tutorialSidebar"},{"id":"economics/schools-of-economic-thought","path":"/economics/schools-of-economic-thought","sidebar":"tutorialSidebar"},{"id":"frontend/frontend-intro/design-system","path":"/frontend/frontend-intro/design-system","sidebar":"tutorialSidebar"},{"id":"frontend/frontend-intro/frontend-architecture","path":"/frontend/frontend-intro/frontend-architecture","sidebar":"tutorialSidebar"},{"id":"frontend/frontend-intro/gestalt-principles","path":"/frontend/frontend-intro/gestalt-principles","sidebar":"tutorialSidebar"},{"id":"frontend/frontend-intro/google-crawlers-crawling","path":"/frontend/frontend-intro/google-crawlers-crawling","sidebar":"tutorialSidebar"},{"id":"frontend/frontend-intro/intro","path":"/frontend/frontend-intro/intro","sidebar":"tutorialSidebar"},{"id":"frontend/frontend-intro/jamstack-cms","path":"/frontend/frontend-intro/jamstack-cms","sidebar":"tutorialSidebar"},{"id":"frontend/frontend-intro/microfrontend-architecture","path":"/frontend/frontend-intro/microfrontend-architecture","sidebar":"tutorialSidebar"},{"id":"frontend/frontend-intro/others","path":"/frontend/frontend-intro/others","sidebar":"tutorialSidebar"},{"id":"frontend/frontend-intro/performance","path":"/frontend/frontend-intro/performance","sidebar":"tutorialSidebar"},{"id":"frontend/frontend-intro/pwa","path":"/frontend/frontend-intro/pwa","sidebar":"tutorialSidebar"},{"id":"frontend/frontend-intro/readme","path":"/frontend/frontend-intro/","sidebar":"tutorialSidebar"},{"id":"frontend/frontend-intro/seo-aso","path":"/frontend/frontend-intro/seo-aso","sidebar":"tutorialSidebar"},{"id":"frontend/frontend-intro/ui-ux-ixd-design-frontend","path":"/frontend/frontend-intro/ui-ux-ixd-design-frontend","sidebar":"tutorialSidebar"},{"id":"frontend/frontend-intro/web-vitals","path":"/frontend/frontend-intro/web-vitals","sidebar":"tutorialSidebar"},{"id":"frontend/frontend-intro/wordpress","path":"/frontend/frontend-intro/wordpress","sidebar":"tutorialSidebar"},{"id":"frontend/html-css/component-libraries/components","path":"/frontend/html-css/component-libraries/components","sidebar":"tutorialSidebar"},{"id":"frontend/html-css/component-libraries/others","path":"/frontend/html-css/component-libraries/others","sidebar":"tutorialSidebar"},{"id":"frontend/html-css/component-libraries/readme","path":"/frontend/html-css/component-libraries/","sidebar":"tutorialSidebar"},{"id":"frontend/html-css/css-intro/centering","path":"/frontend/html-css/css-intro/centering","sidebar":"tutorialSidebar"},{"id":"frontend/html-css/css-intro/css-positions","path":"/frontend/html-css/css-intro/css-positions","sidebar":"tutorialSidebar"},{"id":"frontend/html-css/css-intro/css-transitions","path":"/frontend/html-css/css-intro/css-transitions","sidebar":"tutorialSidebar"},{"id":"frontend/html-css/css-intro/mastering-css","path":"/frontend/html-css/css-intro/mastering-css","sidebar":"tutorialSidebar"},{"id":"frontend/html-css/css-intro/others","path":"/frontend/html-css/css-intro/others","sidebar":"tutorialSidebar"},{"id":"frontend/html-css/css-intro/readme","path":"/frontend/html-css/css-intro/","sidebar":"tutorialSidebar"},{"id":"frontend/html-css/html-intro/html-entities-attributes","path":"/frontend/html-css/html-intro/html-entities-attributes","sidebar":"tutorialSidebar"},{"id":"frontend/html-css/html-intro/readme","path":"/frontend/html-css/html-intro/","sidebar":"tutorialSidebar"},{"id":"frontend/html-css/html-intro/tags","path":"/frontend/html-css/html-intro/tags","sidebar":"tutorialSidebar"},{"id":"frontend/html-css/readme","path":"/frontend/html-css/","sidebar":"tutorialSidebar"},{"id":"frontend/js-javascript/basic","path":"/frontend/js-javascript/basic","sidebar":"tutorialSidebar"},{"id":"frontend/js-javascript/intro","path":"/frontend/js-javascript/intro","sidebar":"tutorialSidebar"},{"id":"frontend/js-javascript/libraries","path":"/frontend/js-javascript/libraries","sidebar":"tutorialSidebar"},{"id":"frontend/js-javascript/others","path":"/frontend/js-javascript/others","sidebar":"tutorialSidebar"},{"id":"frontend/js-javascript/promises","path":"/frontend/js-javascript/promises","sidebar":"tutorialSidebar"},{"id":"frontend/js-javascript/questions","path":"/frontend/js-javascript/questions","sidebar":"tutorialSidebar"},{"id":"frontend/js-javascript/readme","path":"/frontend/js-javascript/","sidebar":"tutorialSidebar"},{"id":"frontend/js-javascript/typescript","path":"/frontend/js-javascript/typescript","sidebar":"tutorialSidebar"},{"id":"frontend/js-javascript/web-api","path":"/frontend/js-javascript/web-api","sidebar":"tutorialSidebar"},{"id":"frontend/others/angularjs/01-intro","path":"/frontend/others/angularjs/01-intro","sidebar":"tutorialSidebar"},{"id":"frontend/others/angularjs/03-modules","path":"/frontend/others/angularjs/03-modules","sidebar":"tutorialSidebar"},{"id":"frontend/others/angularjs/06-components","path":"/frontend/others/angularjs/06-components","sidebar":"tutorialSidebar"},{"id":"frontend/others/angularjs/08-metadata","path":"/frontend/others/angularjs/08-metadata","sidebar":"tutorialSidebar"},{"id":"frontend/others/angularjs/09-data-binding","path":"/frontend/others/angularjs/09-data-binding","sidebar":"tutorialSidebar"},{"id":"frontend/others/angularjs/10-directives","path":"/frontend/others/angularjs/10-directives","sidebar":"tutorialSidebar"},{"id":"frontend/others/angularjs/11-services","path":"/frontend/others/angularjs/11-services","sidebar":"tutorialSidebar"},{"id":"frontend/others/angularjs/12-dependency-injection","path":"/frontend/others/angularjs/12-dependency-injection","sidebar":"tutorialSidebar"},{"id":"frontend/others/angularjs/intro","path":"/frontend/others/angularjs/intro","sidebar":"tutorialSidebar"},{"id":"frontend/others/angularjs/readme","path":"/frontend/others/angularjs/","sidebar":"tutorialSidebar"},{"id":"frontend/others/angularjs/tour-of-heroes","path":"/frontend/others/angularjs/tour-of-heroes","sidebar":"tutorialSidebar"},{"id":"frontend/others/docusaurus","path":"/frontend/others/docusaurus","sidebar":"tutorialSidebar"},{"id":"frontend/others/frontend-frameworks","path":"/frontend/others/frontend-frameworks","sidebar":"tutorialSidebar"},{"id":"frontend/others/gatsby","path":"/frontend/others/gatsby","sidebar":"tutorialSidebar"},{"id":"frontend/others/jquery","path":"/frontend/others/jquery","sidebar":"tutorialSidebar"},{"id":"frontend/others/nestjs/documentation","path":"/frontend/others/nestjs/documentation","sidebar":"tutorialSidebar"},{"id":"frontend/others/nestjs/readme","path":"/frontend/others/nestjs/","sidebar":"tutorialSidebar"},{"id":"frontend/others/nextjs/data-fetching","path":"/frontend/others/nextjs/data-fetching","sidebar":"tutorialSidebar"},{"id":"frontend/others/nextjs/others","path":"/frontend/others/nextjs/others","sidebar":"tutorialSidebar"},{"id":"frontend/others/nextjs/readme","path":"/frontend/others/nextjs/","sidebar":"tutorialSidebar"},{"id":"frontend/others/nodejs/libraries","path":"/frontend/others/nodejs/libraries","sidebar":"tutorialSidebar"},{"id":"frontend/others/nodejs/nodejs-frameworks","path":"/frontend/others/nodejs/nodejs-frameworks","sidebar":"tutorialSidebar"},{"id":"frontend/others/nodejs/npm-commands","path":"/frontend/others/nodejs/npm-commands","sidebar":"tutorialSidebar"},{"id":"frontend/others/nodejs/readme","path":"/frontend/others/nodejs/","sidebar":"tutorialSidebar"},{"id":"frontend/others/readme","path":"/frontend/others/","sidebar":"tutorialSidebar"},{"id":"frontend/others/static-site-generators","path":"/frontend/others/static-site-generators","sidebar":"tutorialSidebar"},{"id":"frontend/react/code-commands-snippets","path":"/frontend/react/code-commands-snippets","sidebar":"tutorialSidebar"},{"id":"frontend/react/components","path":"/frontend/react/components","sidebar":"tutorialSidebar"},{"id":"frontend/react/course","path":"/frontend/react/course","sidebar":"tutorialSidebar"},{"id":"frontend/react/docs","path":"/frontend/react/docs","sidebar":"tutorialSidebar"},{"id":"frontend/react/events","path":"/frontend/react/events","sidebar":"tutorialSidebar"},{"id":"frontend/react/hooks","path":"/frontend/react/hooks","sidebar":"tutorialSidebar"},{"id":"frontend/react/intro","path":"/frontend/react/intro","sidebar":"tutorialSidebar"},{"id":"frontend/react/jsx","path":"/frontend/react/jsx","sidebar":"tutorialSidebar"},{"id":"frontend/react/libraries","path":"/frontend/react/libraries","sidebar":"tutorialSidebar"},{"id":"frontend/react/mordern-react-with-redux","path":"/frontend/react/mordern-react-with-redux","sidebar":"tutorialSidebar"},{"id":"frontend/react/react-admin-templates","path":"/frontend/react/react-admin-templates","sidebar":"tutorialSidebar"},{"id":"frontend/react/react-dom","path":"/frontend/react/react-dom","sidebar":"tutorialSidebar"},{"id":"frontend/react/react-native","path":"/frontend/react/react-native","sidebar":"tutorialSidebar"},{"id":"frontend/react/react-router","path":"/frontend/react/react-router","sidebar":"tutorialSidebar"},{"id":"frontend/react/readme","path":"/frontend/react/","sidebar":"tutorialSidebar"},{"id":"frontend/react/redux","path":"/frontend/react/redux","sidebar":"tutorialSidebar"},{"id":"frontend/react/state","path":"/frontend/react/state","sidebar":"tutorialSidebar"},{"id":"frontend/react/tools","path":"/frontend/react/tools","sidebar":"tutorialSidebar"},{"id":"frontend/readme","path":"/frontend/","sidebar":"tutorialSidebar"},{"id":"knowledge/applied-sciences/chemical-engineering","path":"/knowledge/applied-sciences/chemical-engineering","sidebar":"tutorialSidebar"},{"id":"knowledge/applied-sciences/civil-engineering","path":"/knowledge/applied-sciences/civil-engineering","sidebar":"tutorialSidebar"},{"id":"knowledge/applied-sciences/control-engineering","path":"/knowledge/applied-sciences/control-engineering","sidebar":"tutorialSidebar"},{"id":"knowledge/applied-sciences/crash-course-engineering","path":"/knowledge/applied-sciences/crash-course-engineering","sidebar":"tutorialSidebar"},{"id":"knowledge/applied-sciences/electrical-engineering","path":"/knowledge/applied-sciences/electrical-engineering","sidebar":"tutorialSidebar"},{"id":"knowledge/applied-sciences/embedded-systems-electronics","path":"/knowledge/applied-sciences/embedded-systems-electronics","sidebar":"tutorialSidebar"},{"id":"knowledge/applied-sciences/hvac-systems","path":"/knowledge/applied-sciences/hvac-systems","sidebar":"tutorialSidebar"},{"id":"knowledge/applied-sciences/mechanical-engineering","path":"/knowledge/applied-sciences/mechanical-engineering","sidebar":"tutorialSidebar"},{"id":"knowledge/applied-sciences/others-power-energy","path":"/knowledge/applied-sciences/others-power-energy","sidebar":"tutorialSidebar"},{"id":"knowledge/applied-sciences/readme","path":"/knowledge/applied-sciences/","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/alternative-medicine","path":"/knowledge/biology/alternative-medicine","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/digestive-system","path":"/knowledge/biology/digestive-system","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/diseases-tests","path":"/knowledge/biology/diseases-tests","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/exercise-stretching/gym","path":"/knowledge/biology/exercise-stretching/gym","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/exercise-stretching/gym-nutrition","path":"/knowledge/biology/exercise-stretching/gym-nutrition","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/exercise-stretching/gym-routine","path":"/knowledge/biology/exercise-stretching/gym-routine","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/exercise-stretching/home-exercise-routine","path":"/knowledge/biology/exercise-stretching/home-exercise-routine","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/exercise-stretching/home-gym","path":"/knowledge/biology/exercise-stretching/home-gym","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/exercise-stretching/intro","path":"/knowledge/biology/exercise-stretching/intro","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/exercise-stretching/readme","path":"/knowledge/biology/exercise-stretching/","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/genetics","path":"/knowledge/biology/genetics","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/human-skeleton","path":"/knowledge/biology/human-skeleton","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/intro","path":"/knowledge/biology/intro","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/mbbs-medicine-medical-health","path":"/knowledge/biology/mbbs-medicine-medical-health","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/muscles","path":"/knowledge/biology/muscles","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/nerves-system","path":"/knowledge/biology/nerves-system","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/nutrition/chart","path":"/knowledge/biology/nutrition/chart","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/nutrition/daily-requirements","path":"/knowledge/biology/nutrition/daily-requirements","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/nutrition/diet","path":"/knowledge/biology/nutrition/diet","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/nutrition/ecology","path":"/knowledge/biology/nutrition/ecology","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/nutrition/essentiality","path":"/knowledge/biology/nutrition/essentiality","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/nutrition/fatigue","path":"/knowledge/biology/nutrition/fatigue","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/nutrition/food","path":"/knowledge/biology/nutrition/food","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/nutrition/honey","path":"/knowledge/biology/nutrition/honey","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/nutrition/intro","path":"/knowledge/biology/nutrition/intro","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/nutrition/plants-gardening","path":"/knowledge/biology/nutrition/plants-gardening","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/nutrition/pulses-daal-lentils","path":"/knowledge/biology/nutrition/pulses-daal-lentils","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/nutrition/readme","path":"/knowledge/biology/nutrition/","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/nutrition/recipe","path":"/knowledge/biology/nutrition/recipe","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/omics","path":"/knowledge/biology/omics","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/organ-systems","path":"/knowledge/biology/organ-systems","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/others","path":"/knowledge/biology/others","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/pregnancy-baby","path":"/knowledge/biology/pregnancy-baby","sidebar":"tutorialSidebar"},{"id":"knowledge/biology/readme","path":"/knowledge/biology/","sidebar":"tutorialSidebar"},{"id":"knowledge/games/chess","path":"/knowledge/games/chess","sidebar":"tutorialSidebar"},{"id":"knowledge/games/couple-activities","path":"/knowledge/games/couple-activities","sidebar":"tutorialSidebar"},{"id":"knowledge/games/family-games-gifts","path":"/knowledge/games/family-games-gifts","sidebar":"tutorialSidebar"},{"id":"knowledge/games/marathon-running","path":"/knowledge/games/marathon-running","sidebar":"tutorialSidebar"},{"id":"knowledge/games/others","path":"/knowledge/games/others","sidebar":"tutorialSidebar"},{"id":"knowledge/games/readme","path":"/knowledge/games/","sidebar":"tutorialSidebar"},{"id":"knowledge/games/rubix-rubics-cube","path":"/knowledge/games/rubix-rubics-cube","sidebar":"tutorialSidebar"},{"id":"knowledge/games/skiing-sking","path":"/knowledge/games/skiing-sking","sidebar":"tutorialSidebar"},{"id":"knowledge/games/sudoku-techniques","path":"/knowledge/games/sudoku-techniques","sidebar":"tutorialSidebar"},{"id":"knowledge/games/swimming","path":"/knowledge/games/swimming","sidebar":"tutorialSidebar"},{"id":"knowledge/games/touch-typing","path":"/knowledge/games/touch-typing","sidebar":"tutorialSidebar"},{"id":"knowledge/general/important-dates-timelines","path":"/knowledge/general/important-dates-timelines","sidebar":"tutorialSidebar"},{"id":"knowledge/general/intro","path":"/knowledge/general/intro","sidebar":"tutorialSidebar"},{"id":"knowledge/general/knowledge-of-humanity","path":"/knowledge/general/knowledge-of-humanity","sidebar":"tutorialSidebar"},{"id":"knowledge/general/mental-models","path":"/knowledge/general/mental-models","sidebar":"tutorialSidebar"},{"id":"knowledge/general/others","path":"/knowledge/general/others","sidebar":"tutorialSidebar"},{"id":"knowledge/general/outline-of-knowledge","path":"/knowledge/general/outline-of-knowledge","sidebar":"tutorialSidebar"},{"id":"knowledge/general/readme","path":"/knowledge/general/","sidebar":"tutorialSidebar"},{"id":"knowledge/general/science","path":"/knowledge/general/science","sidebar":"tutorialSidebar"},{"id":"knowledge/geography/continents","path":"/knowledge/geography/continents","sidebar":"tutorialSidebar"},{"id":"knowledge/geography/countries","path":"/knowledge/geography/countries","sidebar":"tutorialSidebar"},{"id":"knowledge/geography/home-house-building","path":"/knowledge/geography/home-house-building","sidebar":"tutorialSidebar"},{"id":"knowledge/geography/india","path":"/knowledge/geography/india","sidebar":"tutorialSidebar"},{"id":"knowledge/geography/indian-states-and-uts","path":"/knowledge/geography/indian-states-and-uts","sidebar":"tutorialSidebar"},{"id":"knowledge/geography/living","path":"/knowledge/geography/living","sidebar":"tutorialSidebar"},{"id":"knowledge/geography/new-home-place-house","path":"/knowledge/geography/new-home-place-house","sidebar":"tutorialSidebar"},{"id":"knowledge/geography/others","path":"/knowledge/geography/others","sidebar":"tutorialSidebar"},{"id":"knowledge/geography/readme","path":"/knowledge/geography/","sidebar":"tutorialSidebar"},{"id":"knowledge/geography/rivers","path":"/knowledge/geography/rivers","sidebar":"tutorialSidebar"},{"id":"knowledge/geography/wildlife","path":"/knowledge/geography/wildlife","sidebar":"tutorialSidebar"},{"id":"knowledge/history/crash-course-history-of-science","path":"/knowledge/history/crash-course-history-of-science","sidebar":"tutorialSidebar"},{"id":"knowledge/history/crash-course-world-history","path":"/knowledge/history/crash-course-world-history","sidebar":"tutorialSidebar"},{"id":"knowledge/history/histomap","path":"/knowledge/history/histomap","sidebar":"tutorialSidebar"},{"id":"knowledge/history/human-history-anthropology","path":"/knowledge/history/human-history-anthropology","sidebar":"tutorialSidebar"},{"id":"knowledge/history/indian-history-timeline","path":"/knowledge/history/indian-history-timeline","sidebar":"tutorialSidebar"},{"id":"knowledge/history/others","path":"/knowledge/history/others","sidebar":"tutorialSidebar"},{"id":"knowledge/history/readme","path":"/knowledge/history/","sidebar":"tutorialSidebar"},{"id":"knowledge/history/religion","path":"/knowledge/history/religion","sidebar":"tutorialSidebar"},{"id":"knowledge/language/figures-of-speech","path":"/knowledge/language/figures-of-speech","sidebar":"tutorialSidebar"},{"id":"knowledge/language/general","path":"/knowledge/language/general","sidebar":"tutorialSidebar"},{"id":"knowledge/language/grammer-vocabulary","path":"/knowledge/language/grammer-vocabulary","sidebar":"tutorialSidebar"},{"id":"knowledge/language/languages-others","path":"/knowledge/language/languages-others","sidebar":"tutorialSidebar"},{"id":"knowledge/language/linguistics","path":"/knowledge/language/linguistics","sidebar":"tutorialSidebar"},{"id":"knowledge/language/mistakes","path":"/knowledge/language/mistakes","sidebar":"tutorialSidebar"},{"id":"knowledge/language/parts-of-speech","path":"/knowledge/language/parts-of-speech","sidebar":"tutorialSidebar"},{"id":"knowledge/language/readme","path":"/knowledge/language/","sidebar":"tutorialSidebar"},{"id":"knowledge/language/spanish","path":"/knowledge/language/spanish","sidebar":"tutorialSidebar"},{"id":"knowledge/law/constitution-of-india/constitution","path":"/knowledge/law/constitution-of-india/constitution","sidebar":"tutorialSidebar"},{"id":"knowledge/law/constitution-of-india/others","path":"/knowledge/law/constitution-of-india/others","sidebar":"tutorialSidebar"},{"id":"knowledge/law/constitution-of-india/schedules","path":"/knowledge/law/constitution-of-india/schedules","sidebar":"tutorialSidebar"},{"id":"knowledge/law/judgements-2023","path":"/knowledge/law/judgements-2023","sidebar":"tutorialSidebar"},{"id":"knowledge/law/laws","path":"/knowledge/law/laws","sidebar":"tutorialSidebar"},{"id":"knowledge/law/lsat","path":"/knowledge/law/lsat","sidebar":"tutorialSidebar"},{"id":"knowledge/law/mcat","path":"/knowledge/law/mcat","sidebar":"tutorialSidebar"},{"id":"knowledge/law/others","path":"/knowledge/law/others","sidebar":"tutorialSidebar"},{"id":"knowledge/law/readme","path":"/knowledge/law/","sidebar":"tutorialSidebar"},{"id":"knowledge/links","path":"/knowledge/links","sidebar":"tutorialSidebar"},{"id":"knowledge/others/chemistry-outline","path":"/knowledge/others/chemistry-outline","sidebar":"tutorialSidebar"},{"id":"knowledge/others/climate-change","path":"/knowledge/others/climate-change","sidebar":"tutorialSidebar"},{"id":"knowledge/others/clothes-textiles","path":"/knowledge/others/clothes-textiles","sidebar":"tutorialSidebar"},{"id":"knowledge/others/education-phd","path":"/knowledge/others/education-phd","sidebar":"tutorialSidebar"},{"id":"knowledge/others/international-relations-ir","path":"/knowledge/others/international-relations-ir","sidebar":"tutorialSidebar"},{"id":"knowledge/others/mythology","path":"/knowledge/others/mythology","sidebar":"tutorialSidebar"},{"id":"knowledge/others/news-problems","path":"/knowledge/others/news-problems","sidebar":"tutorialSidebar"},{"id":"knowledge/others/others","path":"/knowledge/others/","sidebar":"tutorialSidebar"},{"id":"knowledge/others/philosophy","path":"/knowledge/others/philosophy","sidebar":"tutorialSidebar"},{"id":"knowledge/others/politics/indian-polity","path":"/knowledge/others/politics/indian-polity","sidebar":"tutorialSidebar"},{"id":"knowledge/others/politics/others","path":"/knowledge/others/politics/others","sidebar":"tutorialSidebar"},{"id":"knowledge/others/politics/readme","path":"/knowledge/others/politics/","sidebar":"tutorialSidebar"},{"id":"knowledge/others/politics/types-of-governments","path":"/knowledge/others/politics/types-of-governments","sidebar":"tutorialSidebar"},{"id":"knowledge/others/readme","path":"/knowledge/others/","sidebar":"tutorialSidebar"},{"id":"knowledge/physics/astronomy","path":"/knowledge/physics/astronomy","sidebar":"tutorialSidebar"},{"id":"knowledge/physics/crash-course-physics","path":"/knowledge/physics/crash-course-physics","sidebar":"tutorialSidebar"},{"id":"knowledge/physics/intro","path":"/knowledge/physics/intro","sidebar":"tutorialSidebar"},{"id":"knowledge/physics/khan-academy-physics","path":"/knowledge/physics/khan-academy-physics","sidebar":"tutorialSidebar"},{"id":"knowledge/physics/others","path":"/knowledge/physics/others","sidebar":"tutorialSidebar"},{"id":"knowledge/physics/readme","path":"/knowledge/physics/","sidebar":"tutorialSidebar"},{"id":"knowledge/quotes-proverbs/business-management","path":"/knowledge/quotes-proverbs/business-management","sidebar":"tutorialSidebar"},{"id":"knowledge/quotes-proverbs/coding","path":"/knowledge/quotes-proverbs/coding","sidebar":"tutorialSidebar"},{"id":"knowledge/quotes-proverbs/funny","path":"/knowledge/quotes-proverbs/funny","sidebar":"tutorialSidebar"},{"id":"knowledge/quotes-proverbs/habits","path":"/knowledge/quotes-proverbs/habits","sidebar":"tutorialSidebar"},{"id":"knowledge/quotes-proverbs/hindi","path":"/knowledge/quotes-proverbs/hindi","sidebar":"tutorialSidebar"},{"id":"knowledge/quotes-proverbs/life","path":"/knowledge/quotes-proverbs/life","sidebar":"tutorialSidebar"},{"id":"knowledge/quotes-proverbs/motivation","path":"/knowledge/quotes-proverbs/motivation","sidebar":"tutorialSidebar"},{"id":"knowledge/quotes-proverbs/my-quotes","path":"/knowledge/quotes-proverbs/my-quotes","sidebar":"tutorialSidebar"},{"id":"knowledge/quotes-proverbs/poems","path":"/knowledge/quotes-proverbs/poems","sidebar":"tutorialSidebar"},{"id":"knowledge/quotes-proverbs/readme","path":"/knowledge/quotes-proverbs/","sidebar":"tutorialSidebar"},{"id":"knowledge/quotes-proverbs/science","path":"/knowledge/quotes-proverbs/science","sidebar":"tutorialSidebar"},{"id":"knowledge/quotes-proverbs/stories","path":"/knowledge/quotes-proverbs/stories","sidebar":"tutorialSidebar"},{"id":"knowledge/quotes-proverbs/tatoos-quotes","path":"/knowledge/quotes-proverbs/tatoos-quotes","sidebar":"tutorialSidebar"},{"id":"knowledge/quotes-proverbs/tips","path":"/knowledge/quotes-proverbs/tips","sidebar":"tutorialSidebar"},{"id":"knowledge/readme","path":"/knowledge/","sidebar":"tutorialSidebar"},{"id":"knowledge/youtube-podcasts-magazine-apps","path":"/knowledge/youtube-podcasts-magazine-apps","sidebar":"tutorialSidebar"},{"id":"languages/c++/constructor","path":"/languages/c++/constructor","sidebar":"tutorialSidebar"},{"id":"languages/c++/frameworks","path":"/languages/c++/frameworks","sidebar":"tutorialSidebar"},{"id":"languages/c++/friend-function","path":"/languages/c++/friend-function","sidebar":"tutorialSidebar"},{"id":"languages/c++/header-files","path":"/languages/c++/header-files","sidebar":"tutorialSidebar"},{"id":"languages/c++/intro","path":"/languages/c++/intro","sidebar":"tutorialSidebar"},{"id":"languages/c++/io","path":"/languages/c++/io","sidebar":"tutorialSidebar"},{"id":"languages/c++/others","path":"/languages/c++/others","sidebar":"tutorialSidebar"},{"id":"languages/c++/printf","path":"/languages/c++/printf","sidebar":"tutorialSidebar"},{"id":"languages/c++/readme","path":"/languages/c++/","sidebar":"tutorialSidebar"},{"id":"languages/c++/stl-containers","path":"/languages/c++/stl-containers","sidebar":"tutorialSidebar"},{"id":"languages/c++/stl-iterators-algorithms","path":"/languages/c++/stl-iterators-algorithms","sidebar":"tutorialSidebar"},{"id":"languages/c++/storage-classes","path":"/languages/c++/storage-classes","sidebar":"tutorialSidebar"},{"id":"languages/c++/tc-pl4","path":"/languages/c++/tc-pl4","sidebar":"tutorialSidebar"},{"id":"languages/c++/templates","path":"/languages/c++/templates","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/android/jetpack","path":"/languages/frameworks/android/jetpack","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/android/kotlin","path":"/languages/frameworks/android/kotlin","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/android/questions","path":"/languages/frameworks/android/questions","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/android/readme","path":"/languages/frameworks/android/","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/android/service","path":"/languages/frameworks/android/service","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/android/testing","path":"/languages/frameworks/android/testing","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/android/tools","path":"/languages/frameworks/android/tools","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/comparison","path":"/languages/frameworks/comparison","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/dash","path":"/languages/frameworks/dash","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/flutter","path":"/languages/frameworks/flutter","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/intro","path":"/languages/frameworks/intro","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/ios","path":"/languages/frameworks/ios","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/masonite","path":"/languages/frameworks/masonite","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/others","path":"/languages/frameworks/others","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/readme","path":"/languages/frameworks/","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/server-driven-mobile-uis","path":"/languages/frameworks/server-driven-mobile-uis","sidebar":"tutorialSidebar"},{"id":"languages/frameworks/stacks","path":"/languages/frameworks/stacks","sidebar":"tutorialSidebar"},{"id":"languages/golang/concepts","path":"/languages/golang/concepts","sidebar":"tutorialSidebar"},{"id":"languages/golang/data-types","path":"/languages/golang/data-types","sidebar":"tutorialSidebar"},{"id":"languages/golang/examples","path":"/languages/golang/examples","sidebar":"tutorialSidebar"},{"id":"languages/golang/hello-world","path":"/languages/golang/hello-world","sidebar":"tutorialSidebar"},{"id":"languages/golang/interview-questions","path":"/languages/golang/interview-questions","sidebar":"tutorialSidebar"},{"id":"languages/golang/intro","path":"/languages/golang/intro","sidebar":"tutorialSidebar"},{"id":"languages/golang/readme","path":"/languages/golang/","sidebar":"tutorialSidebar"},{"id":"languages/golang/syntax","path":"/languages/golang/syntax","sidebar":"tutorialSidebar"},{"id":"languages/golang/testing","path":"/languages/golang/testing","sidebar":"tutorialSidebar"},{"id":"languages/golang/tools","path":"/languages/golang/tools","sidebar":"tutorialSidebar"},{"id":"languages/java/collections","path":"/languages/java/collections","sidebar":"tutorialSidebar"},{"id":"languages/java/comparable-interface","path":"/languages/java/comparable-interface","sidebar":"tutorialSidebar"},{"id":"languages/java/concurrency","path":"/languages/java/concurrency","sidebar":"tutorialSidebar"},{"id":"languages/java/defining-constants","path":"/languages/java/defining-constants","sidebar":"tutorialSidebar"},{"id":"languages/java/frameworks","path":"/languages/java/frameworks","sidebar":"tutorialSidebar"},{"id":"languages/java/hash-collection","path":"/languages/java/hash-collection","sidebar":"tutorialSidebar"},{"id":"languages/java/intro","path":"/languages/java/intro","sidebar":"tutorialSidebar"},{"id":"languages/java/jmx","path":"/languages/java/jmx","sidebar":"tutorialSidebar"},{"id":"languages/java/jvm-architecture","path":"/languages/java/jvm-architecture","sidebar":"tutorialSidebar"},{"id":"languages/java/knowledge","path":"/languages/java/knowledge","sidebar":"tutorialSidebar"},{"id":"languages/java/lambda-expressions","path":"/languages/java/lambda-expressions","sidebar":"tutorialSidebar"},{"id":"languages/java/libraries","path":"/languages/java/libraries","sidebar":"tutorialSidebar"},{"id":"languages/java/others","path":"/languages/java/others","sidebar":"tutorialSidebar"},{"id":"languages/java/questions","path":"/languages/java/questions","sidebar":"tutorialSidebar"},{"id":"languages/java/readme","path":"/languages/java/","sidebar":"tutorialSidebar"},{"id":"languages/java/reflection","path":"/languages/java/reflection","sidebar":"tutorialSidebar"},{"id":"languages/java/spring","path":"/languages/java/spring","sidebar":"tutorialSidebar"},{"id":"languages/java/template-fastio","path":"/languages/java/template-fastio","sidebar":"tutorialSidebar"},{"id":"languages/java/threading-in-javafx","path":"/languages/java/threading-in-javafx","sidebar":"tutorialSidebar"},{"id":"languages/others/erlang","path":"/languages/others/erlang","sidebar":"tutorialSidebar"},{"id":"languages/others/general","path":"/languages/others/general","sidebar":"tutorialSidebar"},{"id":"languages/others/javascript-templating","path":"/languages/others/javascript-templating","sidebar":"tutorialSidebar"},{"id":"languages/others/json","path":"/languages/others/json","sidebar":"tutorialSidebar"},{"id":"languages/others/markdown","path":"/languages/others/markdown","sidebar":"tutorialSidebar"},{"id":"languages/others/other-languages","path":"/languages/others/other-languages","sidebar":"tutorialSidebar"},{"id":"languages/others/r-language","path":"/languages/others/r-language","sidebar":"tutorialSidebar"},{"id":"languages/others/readme","path":"/languages/others/","sidebar":"tutorialSidebar"},{"id":"languages/others/regular-expressions-regex","path":"/languages/others/regular-expressions-regex","sidebar":"tutorialSidebar"},{"id":"languages/others/ruby","path":"/languages/others/ruby","sidebar":"tutorialSidebar"},{"id":"languages/others/rust","path":"/languages/others/rust","sidebar":"tutorialSidebar"},{"id":"languages/others/scala","path":"/languages/others/scala","sidebar":"tutorialSidebar"},{"id":"languages/others/swift","path":"/languages/others/swift","sidebar":"tutorialSidebar"},{"id":"languages/others/tla-plus","path":"/languages/others/tla-plus","sidebar":"tutorialSidebar"},{"id":"languages/others/toml","path":"/languages/others/toml","sidebar":"tutorialSidebar"},{"id":"languages/others/web-assembly","path":"/languages/others/web-assembly","sidebar":"tutorialSidebar"},{"id":"languages/others/yaml","path":"/languages/others/yaml","sidebar":"tutorialSidebar"},{"id":"languages/php/codeigniter/application-architecture","path":"/languages/php/codeigniter/application-architecture","sidebar":"tutorialSidebar"},{"id":"languages/php/codeigniter/basic-concepts","path":"/languages/php/codeigniter/basic-concepts","sidebar":"tutorialSidebar"},{"id":"languages/php/codeigniter/commands","path":"/languages/php/codeigniter/commands","sidebar":"tutorialSidebar"},{"id":"languages/php/codeigniter/configurations","path":"/languages/php/codeigniter/configurations","sidebar":"tutorialSidebar"},{"id":"languages/php/codeigniter/helpers-functions","path":"/languages/php/codeigniter/helpers-functions","sidebar":"tutorialSidebar"},{"id":"languages/php/codeigniter/http","path":"/languages/php/codeigniter/http","sidebar":"tutorialSidebar"},{"id":"languages/php/codeigniter/intro","path":"/languages/php/codeigniter/intro","sidebar":"tutorialSidebar"},{"id":"languages/php/codeigniter/mvc","path":"/languages/php/codeigniter/mvc","sidebar":"tutorialSidebar"},{"id":"languages/php/codeigniter/others","path":"/languages/php/codeigniter/others","sidebar":"tutorialSidebar"},{"id":"languages/php/codeigniter/readme","path":"/languages/php/codeigniter/","sidebar":"tutorialSidebar"},{"id":"languages/php/documentation","path":"/languages/php/documentation","sidebar":"tutorialSidebar"},{"id":"languages/php/example","path":"/languages/php/example","sidebar":"tutorialSidebar"},{"id":"languages/php/frameworks","path":"/languages/php/frameworks","sidebar":"tutorialSidebar"},{"id":"languages/php/intro","path":"/languages/php/intro","sidebar":"tutorialSidebar"},{"id":"languages/php/operators","path":"/languages/php/operators","sidebar":"tutorialSidebar"},{"id":"languages/php/others","path":"/languages/php/others","sidebar":"tutorialSidebar"},{"id":"languages/php/readme","path":"/languages/php/","sidebar":"tutorialSidebar"},{"id":"languages/php/syntax","path":"/languages/php/syntax","sidebar":"tutorialSidebar"},{"id":"languages/php/web-concepts","path":"/languages/php/web-concepts","sidebar":"tutorialSidebar"},{"id":"languages/readme","path":"/languages/","sidebar":"tutorialSidebar"},{"id":"languages/sql/concepts","path":"/languages/sql/concepts","sidebar":"tutorialSidebar"},{"id":"languages/sql/cte-subquery","path":"/languages/sql/cte-subquery","sidebar":"tutorialSidebar"},{"id":"languages/sql/databricks-sql","path":"/languages/sql/databricks-sql","sidebar":"tutorialSidebar"},{"id":"languages/sql/databricks-sql-functions","path":"/languages/sql/databricks-sql-functions","sidebar":"tutorialSidebar"},{"id":"languages/sql/dcl-data-control-language","path":"/languages/sql/dcl-data-control-language","sidebar":"tutorialSidebar"},{"id":"languages/sql/ddl-data-definition-language/create-table","path":"/languages/sql/ddl-data-definition-language/create-table","sidebar":"tutorialSidebar"},{"id":"languages/sql/ddl-data-definition-language/readme","path":"/languages/sql/ddl-data-definition-language/","sidebar":"tutorialSidebar"},{"id":"languages/sql/ddl-data-definition-language/truncate-delete","path":"/languages/sql/ddl-data-definition-language/truncate-delete","sidebar":"tutorialSidebar"},{"id":"languages/sql/dml-data-manipulation-language","path":"/languages/sql/dml-data-manipulation-language","sidebar":"tutorialSidebar"},{"id":"languages/sql/dql-data-query-language/aggregation-queries","path":"/languages/sql/dql-data-query-language/aggregation-queries","sidebar":"tutorialSidebar"},{"id":"languages/sql/dql-data-query-language/analytical-queries","path":"/languages/sql/dql-data-query-language/analytical-queries","sidebar":"tutorialSidebar"},{"id":"languages/sql/dql-data-query-language/readme","path":"/languages/sql/dql-data-query-language/","sidebar":"tutorialSidebar"},{"id":"languages/sql/dql-data-query-language/window-functions","path":"/languages/sql/dql-data-query-language/window-functions","sidebar":"tutorialSidebar"},{"id":"languages/sql/functions","path":"/languages/sql/functions","sidebar":"tutorialSidebar"},{"id":"languages/sql/intro","path":"/languages/sql/intro","sidebar":"tutorialSidebar"},{"id":"languages/sql/join-algorithms","path":"/languages/sql/join-algorithms","sidebar":"tutorialSidebar"},{"id":"languages/sql/keys","path":"/languages/sql/keys","sidebar":"tutorialSidebar"},{"id":"languages/sql/operators-wildcards","path":"/languages/sql/operators-wildcards","sidebar":"tutorialSidebar"},{"id":"languages/sql/others","path":"/languages/sql/others","sidebar":"tutorialSidebar"},{"id":"languages/sql/partiql","path":"/languages/sql/partiql","sidebar":"tutorialSidebar"},{"id":"languages/sql/postgres-commands","path":"/languages/sql/postgres-commands","sidebar":"tutorialSidebar"},{"id":"languages/sql/readme","path":"/languages/sql/","sidebar":"tutorialSidebar"},{"id":"languages/sql/sql-commands","path":"/languages/sql/sql-commands","sidebar":"tutorialSidebar"},{"id":"languages/sql/sql-data-types","path":"/languages/sql/sql-data-types","sidebar":"tutorialSidebar"},{"id":"languages/sql/sql-examples-queries","path":"/languages/sql/sql-examples-queries","sidebar":"tutorialSidebar"},{"id":"languages/sql/sql-joins","path":"/languages/sql/sql-joins","sidebar":"tutorialSidebar"},{"id":"languages/sql/sql-views","path":"/languages/sql/sql-views","sidebar":"tutorialSidebar"},{"id":"languages/sql/stored-procedure","path":"/languages/sql/stored-procedure","sidebar":"tutorialSidebar"},{"id":"languages/sql/types","path":"/languages/sql/types","sidebar":"tutorialSidebar"},{"id":"management/books-blinkist-management","path":"/management/books-blinkist-management","sidebar":"tutorialSidebar"},{"id":"management/business/business-case-studies","path":"/management/business/business-case-studies","sidebar":"tutorialSidebar"},{"id":"management/business/business-terms","path":"/management/business/business-terms","sidebar":"tutorialSidebar"},{"id":"management/business/indian-market","path":"/management/business/indian-market","sidebar":"tutorialSidebar"},{"id":"management/business/readme","path":"/management/business/","sidebar":"tutorialSidebar"},{"id":"management/business/service-based-model","path":"/management/business/service-based-model","sidebar":"tutorialSidebar"},{"id":"management/community-building","path":"/management/community-building","sidebar":"tutorialSidebar"},{"id":"management/customer-engagement-cx","path":"/management/customer-engagement-cx","sidebar":"tutorialSidebar"},{"id":"management/decision-making/ethics","path":"/management/decision-making/ethics","sidebar":"tutorialSidebar"},{"id":"management/decision-making/readme","path":"/management/decision-making/","sidebar":"tutorialSidebar"},{"id":"management/growth-hacking","path":"/management/growth-hacking","sidebar":"tutorialSidebar"},{"id":"management/growth-hacking-metrics","path":"/management/growth-hacking-metrics","sidebar":"tutorialSidebar"},{"id":"management/jobs/career","path":"/management/jobs/career","sidebar":"tutorialSidebar"},{"id":"management/jobs/companies","path":"/management/jobs/companies","sidebar":"tutorialSidebar"},{"id":"management/jobs/finance-equity-stocks-esops-questions","path":"/management/jobs/finance-equity-stocks-esops-questions","sidebar":"tutorialSidebar"},{"id":"management/jobs/good-profiles","path":"/management/jobs/good-profiles","sidebar":"tutorialSidebar"},{"id":"management/jobs/hiring-plan-hr-recruiting","path":"/management/jobs/hiring-plan-hr-recruiting","sidebar":"tutorialSidebar"},{"id":"management/jobs/questions-to-company","path":"/management/jobs/questions-to-company","sidebar":"tutorialSidebar"},{"id":"management/jobs/readme","path":"/management/jobs/","sidebar":"tutorialSidebar"},{"id":"management/jobs/resume-keywords-pointers","path":"/management/jobs/resume-keywords-pointers","sidebar":"tutorialSidebar"},{"id":"management/marketing","path":"/management/marketing","sidebar":"tutorialSidebar"},{"id":"management/mental-models","path":"/management/mental-models","sidebar":"tutorialSidebar"},{"id":"management/others","path":"/management/others","sidebar":"tutorialSidebar"},{"id":"management/people-management/culture","path":"/management/people-management/culture","sidebar":"tutorialSidebar"},{"id":"management/people-management/leadership-interview-questions","path":"/management/people-management/leadership-interview-questions","sidebar":"tutorialSidebar"},{"id":"management/people-management/mentoring-teaching-coaching-leading-leader-leadership","path":"/management/people-management/mentoring-teaching-coaching-leading-leader-leadership","sidebar":"tutorialSidebar"},{"id":"management/people-management/onboarding","path":"/management/people-management/onboarding","sidebar":"tutorialSidebar"},{"id":"management/people-management/people-team-management","path":"/management/people-management/people-team-management","sidebar":"tutorialSidebar"},{"id":"management/people-management/readme","path":"/management/people-management/","sidebar":"tutorialSidebar"},{"id":"management/people-management/remote-working-teams","path":"/management/people-management/remote-working-teams","sidebar":"tutorialSidebar"},{"id":"management/people-management/types-of-leadership","path":"/management/people-management/types-of-leadership","sidebar":"tutorialSidebar"},{"id":"management/product-management/behavioral-design-economics","path":"/management/product-management/behavioral-design-economics","sidebar":"tutorialSidebar"},{"id":"management/product-management/coursera-pm","path":"/management/product-management/coursera-pm","sidebar":"tutorialSidebar"},{"id":"management/product-management/intro","path":"/management/product-management/intro","sidebar":"tutorialSidebar"},{"id":"management/product-management/kano-model","path":"/management/product-management/kano-model","sidebar":"tutorialSidebar"},{"id":"management/product-management/product-book-summaries","path":"/management/product-management/product-book-summaries","sidebar":"tutorialSidebar"},{"id":"management/product-management/product-design-questions","path":"/management/product-management/product-design-questions","sidebar":"tutorialSidebar"},{"id":"management/product-management/product-design-stages","path":"/management/product-management/product-design-stages","sidebar":"tutorialSidebar"},{"id":"management/product-management/product-manager-role","path":"/management/product-management/product-manager-role","sidebar":"tutorialSidebar"},{"id":"management/product-management/product-market-fit-pmf","path":"/management/product-management/product-market-fit-pmf","sidebar":"tutorialSidebar"},{"id":"management/product-management/product-terms-saas","path":"/management/product-management/product-terms-saas","sidebar":"tutorialSidebar"},{"id":"management/product-management/readme","path":"/management/product-management/","sidebar":"tutorialSidebar"},{"id":"management/product-management/retail-offline-sales","path":"/management/product-management/retail-offline-sales","sidebar":"tutorialSidebar"},{"id":"management/project-management/agile","path":"/management/project-management/agile","sidebar":"tutorialSidebar"},{"id":"management/project-management/atlas","path":"/management/project-management/atlas","sidebar":"tutorialSidebar"},{"id":"management/project-management/goals-setting","path":"/management/project-management/goals-setting","sidebar":"tutorialSidebar"},{"id":"management/project-management/intro","path":"/management/project-management/intro","sidebar":"tutorialSidebar"},{"id":"management/project-management/jira","path":"/management/project-management/jira","sidebar":"tutorialSidebar"},{"id":"management/project-management/others","path":"/management/project-management/others","sidebar":"tutorialSidebar"},{"id":"management/project-management/pert-and-cpm","path":"/management/project-management/pert-and-cpm","sidebar":"tutorialSidebar"},{"id":"management/project-management/pm101","path":"/management/project-management/pm101","sidebar":"tutorialSidebar"},{"id":"management/project-management/program-management","path":"/management/project-management/program-management","sidebar":"tutorialSidebar"},{"id":"management/project-management/project-contraints","path":"/management/project-management/project-contraints","sidebar":"tutorialSidebar"},{"id":"management/project-management/readme","path":"/management/project-management/","sidebar":"tutorialSidebar"},{"id":"management/project-management/scrum-meetings","path":"/management/project-management/scrum-meetings","sidebar":"tutorialSidebar"},{"id":"management/project-management/sdlc-methodologies","path":"/management/project-management/sdlc-methodologies","sidebar":"tutorialSidebar"},{"id":"management/project-management/template","path":"/management/project-management/template","sidebar":"tutorialSidebar"},{"id":"management/project-product-business-tools-saas","path":"/management/project-product-business-tools-saas","sidebar":"tutorialSidebar"},{"id":"management/readme","path":"/management/","sidebar":"tutorialSidebar"},{"id":"management/roles/data","path":"/management/roles/data","sidebar":"tutorialSidebar"},{"id":"management/roles/engineering-manager","path":"/management/roles/engineering-manager","sidebar":"tutorialSidebar"},{"id":"management/roles/others","path":"/management/roles/others","sidebar":"tutorialSidebar"},{"id":"management/roles/principle-software-engineer","path":"/management/roles/principle-software-engineer","sidebar":"tutorialSidebar"},{"id":"management/sales","path":"/management/sales","sidebar":"tutorialSidebar"},{"id":"management/six-sigma","path":"/management/six-sigma","sidebar":"tutorialSidebar"},{"id":"mathematics/algebra/cheatsheet","path":"/mathematics/algebra/cheatsheet","sidebar":"tutorialSidebar"},{"id":"mathematics/algebra/complex-numbers","path":"/mathematics/algebra/complex-numbers","sidebar":"tutorialSidebar"},{"id":"mathematics/algebra/exponential-and-logarithms","path":"/mathematics/algebra/exponential-and-logarithms","sidebar":"tutorialSidebar"},{"id":"mathematics/algebra/functions","path":"/mathematics/algebra/functions","sidebar":"tutorialSidebar"},{"id":"mathematics/algebra/intro","path":"/mathematics/algebra/intro","sidebar":"tutorialSidebar"},{"id":"mathematics/algebra/others","path":"/mathematics/algebra/others","sidebar":"tutorialSidebar"},{"id":"mathematics/algebra/readme","path":"/mathematics/algebra/","sidebar":"tutorialSidebar"},{"id":"mathematics/algebra/root","path":"/mathematics/algebra/root","sidebar":"tutorialSidebar"},{"id":"mathematics/algebra/series","path":"/mathematics/algebra/series","sidebar":"tutorialSidebar"},{"id":"mathematics/algebra/sets","path":"/mathematics/algebra/sets","sidebar":"tutorialSidebar"},{"id":"mathematics/aptitude/chinese-remainder-theorem","path":"/mathematics/aptitude/chinese-remainder-theorem","sidebar":"tutorialSidebar"},{"id":"mathematics/aptitude/cube-cutting","path":"/mathematics/aptitude/cube-cutting","sidebar":"tutorialSidebar"},{"id":"mathematics/aptitude/distance-speed-and-time","path":"/mathematics/aptitude/distance-speed-and-time","sidebar":"tutorialSidebar"},{"id":"mathematics/aptitude/readme","path":"/mathematics/aptitude/","sidebar":"tutorialSidebar"},{"id":"mathematics/calculus/essence-of-calculus-3blue1brown","path":"/mathematics/calculus/essence-of-calculus-3blue1brown","sidebar":"tutorialSidebar"},{"id":"mathematics/calculus/functions","path":"/mathematics/calculus/functions","sidebar":"tutorialSidebar"},{"id":"mathematics/calculus/gradient","path":"/mathematics/calculus/gradient","sidebar":"tutorialSidebar"},{"id":"mathematics/calculus/intro","path":"/mathematics/calculus/intro","sidebar":"tutorialSidebar"},{"id":"mathematics/calculus/others","path":"/mathematics/calculus/others","sidebar":"tutorialSidebar"},{"id":"mathematics/calculus/precalculus-intro","path":"/mathematics/calculus/precalculus-intro","sidebar":"tutorialSidebar"},{"id":"mathematics/calculus/product-rule-for-derivatives","path":"/mathematics/calculus/product-rule-for-derivatives","sidebar":"tutorialSidebar"},{"id":"mathematics/calculus/quotient-rule","path":"/mathematics/calculus/quotient-rule","sidebar":"tutorialSidebar"},{"id":"mathematics/calculus/readme","path":"/mathematics/calculus/","sidebar":"tutorialSidebar"},{"id":"mathematics/calculus/tangent-line-and-the-derivative","path":"/mathematics/calculus/tangent-line-and-the-derivative","sidebar":"tutorialSidebar"},{"id":"mathematics/combinatorics/birthday-paradox","path":"/mathematics/combinatorics/birthday-paradox","sidebar":"tutorialSidebar"},{"id":"mathematics/combinatorics/conditional-probability","path":"/mathematics/combinatorics/conditional-probability","sidebar":"tutorialSidebar"},{"id":"mathematics/combinatorics/inclusion-exclusion-principle","path":"/mathematics/combinatorics/inclusion-exclusion-principle","sidebar":"tutorialSidebar"},{"id":"mathematics/combinatorics/intro","path":"/mathematics/combinatorics/intro","sidebar":"tutorialSidebar"},{"id":"mathematics/combinatorics/permutation-and-combination","path":"/mathematics/combinatorics/permutation-and-combination","sidebar":"tutorialSidebar"},{"id":"mathematics/combinatorics/pigeonhole-principle","path":"/mathematics/combinatorics/pigeonhole-principle","sidebar":"tutorialSidebar"},{"id":"mathematics/combinatorics/readme","path":"/mathematics/combinatorics/","sidebar":"tutorialSidebar"},{"id":"mathematics/general/ackermann-function","path":"/mathematics/general/ackermann-function","sidebar":"tutorialSidebar"},{"id":"mathematics/general/advanced-topics","path":"/mathematics/general/advanced-topics","sidebar":"tutorialSidebar"},{"id":"mathematics/general/conjecture","path":"/mathematics/general/conjecture","sidebar":"tutorialSidebar"},{"id":"mathematics/general/discrete-mathematics","path":"/mathematics/general/discrete-mathematics","sidebar":"tutorialSidebar"},{"id":"mathematics/general/fermat-last-theorem","path":"/mathematics/general/fermat-last-theorem","sidebar":"tutorialSidebar"},{"id":"mathematics/general/fermat-little-theorem","path":"/mathematics/general/fermat-little-theorem","sidebar":"tutorialSidebar"},{"id":"mathematics/general/gcd-lcm","path":"/mathematics/general/gcd-lcm","sidebar":"tutorialSidebar"},{"id":"mathematics/general/godel-incompleteness-theorem","path":"/mathematics/general/godel-incompleteness-theorem","sidebar":"tutorialSidebar"},{"id":"mathematics/general/golden-ratio-phi","path":"/mathematics/general/golden-ratio-phi","sidebar":"tutorialSidebar"},{"id":"mathematics/general/greek-letters-latin","path":"/mathematics/general/greek-letters-latin","sidebar":"tutorialSidebar"},{"id":"mathematics/general/handshaking-lemma","path":"/mathematics/general/handshaking-lemma","sidebar":"tutorialSidebar"},{"id":"mathematics/general/logic","path":"/mathematics/general/logic","sidebar":"tutorialSidebar"},{"id":"mathematics/general/numbers","path":"/mathematics/general/numbers","sidebar":"tutorialSidebar"},{"id":"mathematics/general/others","path":"/mathematics/general/others","sidebar":"tutorialSidebar"},{"id":"mathematics/general/pie","path":"/mathematics/general/pie","sidebar":"tutorialSidebar"},{"id":"mathematics/general/properties","path":"/mathematics/general/properties","sidebar":"tutorialSidebar"},{"id":"mathematics/general/readme","path":"/mathematics/general/","sidebar":"tutorialSidebar"},{"id":"mathematics/geometry/analytic-geometry","path":"/mathematics/geometry/analytic-geometry","sidebar":"tutorialSidebar"},{"id":"mathematics/geometry/circles","path":"/mathematics/geometry/circles","sidebar":"tutorialSidebar"},{"id":"mathematics/geometry/congruence","path":"/mathematics/geometry/congruence","sidebar":"tutorialSidebar"},{"id":"mathematics/geometry/geometry-foundations","path":"/mathematics/geometry/geometry-foundations","sidebar":"tutorialSidebar"},{"id":"mathematics/geometry/others","path":"/mathematics/geometry/others","sidebar":"tutorialSidebar"},{"id":"mathematics/geometry/readme","path":"/mathematics/geometry/","sidebar":"tutorialSidebar"},{"id":"mathematics/geometry/right-triangles-and-geometry","path":"/mathematics/geometry/right-triangles-and-geometry","sidebar":"tutorialSidebar"},{"id":"mathematics/geometry/similarity","path":"/mathematics/geometry/similarity","sidebar":"tutorialSidebar"},{"id":"mathematics/geometry/solid-geometry","path":"/mathematics/geometry/solid-geometry","sidebar":"tutorialSidebar"},{"id":"mathematics/geometry/transformations","path":"/mathematics/geometry/transformations","sidebar":"tutorialSidebar"},{"id":"mathematics/linear-algebra/3blue1brown","path":"/mathematics/linear-algebra/3blue1brown","sidebar":"tutorialSidebar"},{"id":"mathematics/linear-algebra/alternate-coordinate-systems-bases","path":"/mathematics/linear-algebra/alternate-coordinate-systems-bases","sidebar":"tutorialSidebar"},{"id":"mathematics/linear-algebra/cheatsheet","path":"/mathematics/linear-algebra/cheatsheet","sidebar":"tutorialSidebar"},{"id":"mathematics/linear-algebra/matrix-transformations","path":"/mathematics/linear-algebra/matrix-transformations","sidebar":"tutorialSidebar"},{"id":"mathematics/linear-algebra/others","path":"/mathematics/linear-algebra/others","sidebar":"tutorialSidebar"},{"id":"mathematics/linear-algebra/readme","path":"/mathematics/linear-algebra/","sidebar":"tutorialSidebar"},{"id":"mathematics/linear-algebra/vectors-and-spaces","path":"/mathematics/linear-algebra/vectors-and-spaces","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/365-ds-probability","path":"/mathematics/probability/365-ds-probability","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/binomial-random-variables","path":"/mathematics/probability/binomial-random-variables","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/central-limit-theorem","path":"/mathematics/probability/central-limit-theorem","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/cheatsheet","path":"/mathematics/probability/cheatsheet","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro","path":"/mathematics/probability/intro","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/1.-probability-models-and-axioms","path":"/mathematics/probability/intro-to-probability/1.-probability-models-and-axioms","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/1.1-set-sequences-limits-and-series-un-countable-sets","path":"/mathematics/probability/intro-to-probability/1.1-set-sequences-limits-and-series-un-countable-sets","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/10-conditioning-on-a-random-variable-independence-bayes-rule","path":"/mathematics/probability/intro-to-probability/10-conditioning-on-a-random-variable-independence-bayes-rule","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/11.-derived-distributions","path":"/mathematics/probability/intro-to-probability/11.-derived-distributions","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/12.-sums-of-independent-rv-covariance-and-correlation","path":"/mathematics/probability/intro-to-probability/12.-sums-of-independent-rv-covariance-and-correlation","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/13.-conditional-expectation-and-variance-revisited","path":"/mathematics/probability/intro-to-probability/13.-conditional-expectation-and-variance-revisited","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/14.-intro-to-bayesian-inference","path":"/mathematics/probability/intro-to-probability/14.-intro-to-bayesian-inference","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/2.-conditioning-and-independence","path":"/mathematics/probability/intro-to-probability/2.-conditioning-and-independence","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/3.-independence","path":"/mathematics/probability/intro-to-probability/3.-independence","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/4.-counting","path":"/mathematics/probability/intro-to-probability/4.-counting","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/5.-probability-mass-functions-and-expectations","path":"/mathematics/probability/intro-to-probability/5.-probability-mass-functions-and-expectations","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/6-variance-conditioning-of-an-event-multiple-rv","path":"/mathematics/probability/intro-to-probability/6-variance-conditioning-of-an-event-multiple-rv","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/7-conditioning-on-a-rv-independence-of-rv","path":"/mathematics/probability/intro-to-probability/7-conditioning-on-a-rv-independence-of-rv","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/8.-probability-density-functions","path":"/mathematics/probability/intro-to-probability/8.-probability-density-functions","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/9.-conditioning-on-an-event-multiple-continuous-rv","path":"/mathematics/probability/intro-to-probability/9.-conditioning-on-an-event-multiple-continuous-rv","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/additional-theoretical-material","path":"/mathematics/probability/intro-to-probability/additional-theoretical-material","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/intro-syllabus","path":"/mathematics/probability/intro-to-probability/intro-syllabus","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/readme","path":"/mathematics/probability/intro-to-probability/","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/unit-1-solved-problems","path":"/mathematics/probability/intro-to-probability/unit-1-solved-problems","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/unit-2-solved-problems","path":"/mathematics/probability/intro-to-probability/unit-2-solved-problems","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/intro-to-probability/unit-3-solved-problems","path":"/mathematics/probability/intro-to-probability/unit-3-solved-problems","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/monte-carlo-simulation","path":"/mathematics/probability/monte-carlo-simulation","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/normal-distributions","path":"/mathematics/probability/normal-distributions","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/others","path":"/mathematics/probability/others","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/probability-distribution","path":"/mathematics/probability/probability-distribution","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/random-variables","path":"/mathematics/probability/random-variables","sidebar":"tutorialSidebar"},{"id":"mathematics/probability/readme","path":"/mathematics/probability/","sidebar":"tutorialSidebar"},{"id":"mathematics/readme","path":"/mathematics/","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/bivariate-analysis","path":"/mathematics/statistics/bivariate-analysis","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/confidence-intervals","path":"/mathematics/statistics/confidence-intervals","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/correlation-and-covariance","path":"/mathematics/statistics/correlation-and-covariance","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/crash-course-statistics","path":"/mathematics/statistics/crash-course-statistics","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/crosstab","path":"/mathematics/statistics/crosstab","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/descriptive-statistics","path":"/mathematics/statistics/descriptive-statistics","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/discriminant-analysis","path":"/mathematics/statistics/discriminant-analysis","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/estimation-statistics","path":"/mathematics/statistics/estimation-statistics","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/glossary","path":"/mathematics/statistics/glossary","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/hypothesis-testing","path":"/mathematics/statistics/hypothesis-testing","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/inferential-statistics","path":"/mathematics/statistics/inferential-statistics","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/intro","path":"/mathematics/statistics/intro","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/nonparametric-statistics","path":"/mathematics/statistics/nonparametric-statistics","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/other-statistics","path":"/mathematics/statistics/other-statistics","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/percentiles","path":"/mathematics/statistics/percentiles","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/ranking","path":"/mathematics/statistics/ranking","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/readme","path":"/mathematics/statistics/","sidebar":"tutorialSidebar"},{"id":"mathematics/statistics/sampling","path":"/mathematics/statistics/sampling","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/client-broker-and-connection-establishment","path":"/networking/mqtt/client-broker-and-connection-establishment","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/intro","path":"/networking/mqtt/intro","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/keep-alive-and-client-take-over","path":"/networking/mqtt/keep-alive-and-client-take-over","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/last-will-and-testament","path":"/networking/mqtt/last-will-and-testament","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/libraries","path":"/networking/mqtt/libraries","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/messages","path":"/networking/mqtt/messages","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/mqtt-5.0","path":"/networking/mqtt/mqtt-5.0","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/mqtt-over-websockets","path":"/networking/mqtt/mqtt-over-websockets","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/mqtt-sn","path":"/networking/mqtt/mqtt-sn","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/mqtt-vs-http","path":"/networking/mqtt/mqtt-vs-http","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/paho-client","path":"/networking/mqtt/paho-client","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/persistent-session-and-queuing-messages","path":"/networking/mqtt/persistent-session-and-queuing-messages","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/publish-subscribe-and-unsubscribe","path":"/networking/mqtt/publish-subscribe-and-unsubscribe","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/publish-subscribe-pattern","path":"/networking/mqtt/publish-subscribe-pattern","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/qos-levels","path":"/networking/mqtt/qos-levels","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/readme","path":"/networking/mqtt/","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/retained-messages","path":"/networking/mqtt/retained-messages","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/scaling","path":"/networking/mqtt/scaling","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/security","path":"/networking/mqtt/security","sidebar":"tutorialSidebar"},{"id":"networking/mqtt/topics-and-best-practices","path":"/networking/mqtt/topics-and-best-practices","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/addressing-methods-cast-protocols","path":"/networking/networking-concepts/addressing-methods-cast-protocols","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/book-computer-networks","path":"/networking/networking-concepts/book-computer-networks","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/cidr","path":"/networking/networking-concepts/cidr","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/data-center-networking","path":"/networking/networking-concepts/data-center-networking","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/forward-error-correction","path":"/networking/networking-concepts/forward-error-correction","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/intro","path":"/networking/networking-concepts/intro","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/ip","path":"/networking/networking-concepts/ip","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/network-sockets-ports","path":"/networking/networking-concepts/network-sockets-ports","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/networking-fabric","path":"/networking/networking-concepts/networking-fabric","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/osi-layers","path":"/networking/networking-concepts/osi-layers","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/others","path":"/networking/networking-concepts/others","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/peer-to-peer","path":"/networking/networking-concepts/peer-to-peer","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/questions","path":"/networking/networking-concepts/questions","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/readme","path":"/networking/networking-concepts/","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/routing","path":"/networking/networking-concepts/routing","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/sockets","path":"/networking/networking-concepts/sockets","sidebar":"tutorialSidebar"},{"id":"networking/networking-concepts/tcp-ip","path":"/networking/networking-concepts/tcp-ip","sidebar":"tutorialSidebar"},{"id":"networking/others/5g-wireless-networking","path":"/networking/others/5g-wireless-networking","sidebar":"tutorialSidebar"},{"id":"networking/others/apache-avro","path":"/networking/others/apache-avro","sidebar":"tutorialSidebar"},{"id":"networking/others/apache-parquet","path":"/networking/others/apache-parquet","sidebar":"tutorialSidebar"},{"id":"networking/others/data-formats","path":"/networking/others/data-formats","sidebar":"tutorialSidebar"},{"id":"networking/others/delta-lake","path":"/networking/others/delta-lake","sidebar":"tutorialSidebar"},{"id":"networking/others/delta-lake-tutorial","path":"/networking/others/delta-lake-tutorial","sidebar":"tutorialSidebar"},{"id":"networking/others/falcor","path":"/networking/others/falcor","sidebar":"tutorialSidebar"},{"id":"networking/others/file-formats","path":"/networking/others/file-formats","sidebar":"tutorialSidebar"},{"id":"networking/others/file-formats-comparisons","path":"/networking/others/file-formats-comparisons","sidebar":"tutorialSidebar"},{"id":"networking/others/grpc/commands","path":"/networking/others/grpc/commands","sidebar":"tutorialSidebar"},{"id":"networking/others/grpc/comparison","path":"/networking/others/grpc/comparison","sidebar":"tutorialSidebar"},{"id":"networking/others/grpc/concepts","path":"/networking/others/grpc/concepts","sidebar":"tutorialSidebar"},{"id":"networking/others/grpc/guides","path":"/networking/others/grpc/guides","sidebar":"tutorialSidebar"},{"id":"networking/others/grpc/intro","path":"/networking/others/grpc/intro","sidebar":"tutorialSidebar"},{"id":"networking/others/grpc/others","path":"/networking/others/grpc/others","sidebar":"tutorialSidebar"},{"id":"networking/others/grpc/readme","path":"/networking/others/grpc/","sidebar":"tutorialSidebar"},{"id":"networking/others/other","path":"/networking/others/other","sidebar":"tutorialSidebar"},{"id":"networking/others/protocol-buffers-protobuf","path":"/networking/others/protocol-buffers-protobuf","sidebar":"tutorialSidebar"},{"id":"networking/others/readme","path":"/networking/others/","sidebar":"tutorialSidebar"},{"id":"networking/others/rpc","path":"/networking/others/rpc","sidebar":"tutorialSidebar"},{"id":"networking/others/serialization-deserialization","path":"/networking/others/serialization-deserialization","sidebar":"tutorialSidebar"},{"id":"networking/others/vpn","path":"/networking/others/vpn","sidebar":"tutorialSidebar"},{"id":"networking/others/vpn-tools","path":"/networking/others/vpn-tools","sidebar":"tutorialSidebar"},{"id":"networking/protocols/amqp","path":"/networking/protocols/amqp","sidebar":"tutorialSidebar"},{"id":"networking/protocols/dns-domain-name-system","path":"/networking/protocols/dns-domain-name-system","sidebar":"tutorialSidebar"},{"id":"networking/protocols/graphql","path":"/networking/protocols/graphql","sidebar":"tutorialSidebar"},{"id":"networking/protocols/http-3-quic","path":"/networking/protocols/http-3-quic","sidebar":"tutorialSidebar"},{"id":"networking/protocols/http-https","path":"/networking/protocols/http-https","sidebar":"tutorialSidebar"},{"id":"networking/protocols/http-status-code","path":"/networking/protocols/http-status-code","sidebar":"tutorialSidebar"},{"id":"networking/protocols/intro","path":"/networking/protocols/intro","sidebar":"tutorialSidebar"},{"id":"networking/protocols/messaging","path":"/networking/protocols/messaging","sidebar":"tutorialSidebar"},{"id":"networking/protocols/openapi","path":"/networking/protocols/openapi","sidebar":"tutorialSidebar"},{"id":"networking/protocols/openthread","path":"/networking/protocols/openthread","sidebar":"tutorialSidebar"},{"id":"networking/protocols/others","path":"/networking/protocols/others","sidebar":"tutorialSidebar"},{"id":"networking/protocols/protocols-intro","path":"/networking/protocols/protocols-intro","sidebar":"tutorialSidebar"},{"id":"networking/protocols/readme","path":"/networking/protocols/","sidebar":"tutorialSidebar"},{"id":"networking/protocols/rest-representational-state-transfer-restful","path":"/networking/protocols/rest-representational-state-transfer-restful","sidebar":"tutorialSidebar"},{"id":"networking/protocols/rsocket","path":"/networking/protocols/rsocket","sidebar":"tutorialSidebar"},{"id":"networking/protocols/tcp-connection-oriented-protocol/flow-control","path":"/networking/protocols/tcp-connection-oriented-protocol/flow-control","sidebar":"tutorialSidebar"},{"id":"networking/protocols/tcp-connection-oriented-protocol/readme","path":"/networking/protocols/tcp-connection-oriented-protocol/","sidebar":"tutorialSidebar"},{"id":"networking/protocols/udp","path":"/networking/protocols/udp","sidebar":"tutorialSidebar"},{"id":"networking/protocols/video-live-streaming","path":"/networking/protocols/video-live-streaming","sidebar":"tutorialSidebar"},{"id":"networking/protocols/weave","path":"/networking/protocols/weave","sidebar":"tutorialSidebar"},{"id":"networking/protocols/websockets","path":"/networking/protocols/websockets","sidebar":"tutorialSidebar"},{"id":"networking/protocols/zeromq-distributed-messaging","path":"/networking/protocols/zeromq-distributed-messaging","sidebar":"tutorialSidebar"},{"id":"networking/readme","path":"/networking/","sidebar":"tutorialSidebar"},{"id":"psychology/biases-fallacies","path":"/psychology/biases-fallacies","sidebar":"tutorialSidebar"},{"id":"psychology/brain","path":"/psychology/brain","sidebar":"tutorialSidebar"},{"id":"psychology/burnout","path":"/psychology/burnout","sidebar":"tutorialSidebar"},{"id":"psychology/consumerism","path":"/psychology/consumerism","sidebar":"tutorialSidebar"},{"id":"psychology/course-mindshift","path":"/psychology/course-mindshift","sidebar":"tutorialSidebar"},{"id":"psychology/criticism","path":"/psychology/criticism","sidebar":"tutorialSidebar"},{"id":"psychology/defence-mechanisms","path":"/psychology/defence-mechanisms","sidebar":"tutorialSidebar"},{"id":"psychology/emotions","path":"/psychology/emotions","sidebar":"tutorialSidebar"},{"id":"psychology/habits","path":"/psychology/habits","sidebar":"tutorialSidebar"},{"id":"psychology/human-psychology-and-thinking","path":"/psychology/human-psychology-and-thinking","sidebar":"tutorialSidebar"},{"id":"psychology/ikigai","path":"/psychology/ikigai","sidebar":"tutorialSidebar"},{"id":"psychology/intelligence","path":"/psychology/intelligence","sidebar":"tutorialSidebar"},{"id":"psychology/intro","path":"/psychology/intro","sidebar":"tutorialSidebar"},{"id":"psychology/learning/chunking-the-essentials","path":"/psychology/learning/chunking-the-essentials","sidebar":"tutorialSidebar"},{"id":"psychology/learning/concentration-mindfulness-attention-focus-hard-work","path":"/psychology/learning/concentration-mindfulness-attention-focus-hard-work","sidebar":"tutorialSidebar"},{"id":"psychology/learning/course-learning-how-to-learn","path":"/psychology/learning/course-learning-how-to-learn","sidebar":"tutorialSidebar"},{"id":"psychology/learning/exams","path":"/psychology/learning/exams","sidebar":"tutorialSidebar"},{"id":"psychology/learning/learning-intro","path":"/psychology/learning/learning-intro","sidebar":"tutorialSidebar"},{"id":"psychology/learning/memory","path":"/psychology/learning/memory","sidebar":"tutorialSidebar"},{"id":"psychology/learning/mistakes-apology","path":"/psychology/learning/mistakes-apology","sidebar":"tutorialSidebar"},{"id":"psychology/learning/note-taking-second-brain-pkm-zettelkasten","path":"/psychology/learning/note-taking-second-brain-pkm-zettelkasten","sidebar":"tutorialSidebar"},{"id":"psychology/learning/readme","path":"/psychology/learning/","sidebar":"tutorialSidebar"},{"id":"psychology/learning/speed-reading","path":"/psychology/learning/speed-reading","sidebar":"tutorialSidebar"},{"id":"psychology/learning/tips","path":"/psychology/learning/tips","sidebar":"tutorialSidebar"},{"id":"psychology/life-relationship-people","path":"/psychology/life-relationship-people","sidebar":"tutorialSidebar"},{"id":"psychology/mental-models","path":"/psychology/mental-models","sidebar":"tutorialSidebar"},{"id":"psychology/others","path":"/psychology/others","sidebar":"tutorialSidebar"},{"id":"psychology/paradox","path":"/psychology/paradox","sidebar":"tutorialSidebar"},{"id":"psychology/parenting","path":"/psychology/parenting","sidebar":"tutorialSidebar"},{"id":"psychology/people","path":"/psychology/people","sidebar":"tutorialSidebar"},{"id":"psychology/personality","path":"/psychology/personality","sidebar":"tutorialSidebar"},{"id":"psychology/power","path":"/psychology/power","sidebar":"tutorialSidebar"},{"id":"psychology/procrastination","path":"/psychology/procrastination","sidebar":"tutorialSidebar"},{"id":"psychology/productivity-productive-time-management-todo","path":"/psychology/productivity-productive-time-management-todo","sidebar":"tutorialSidebar"},{"id":"psychology/readme","path":"/psychology/","sidebar":"tutorialSidebar"},{"id":"psychology/research","path":"/psychology/research","sidebar":"tutorialSidebar"},{"id":"psychology/self-awareness","path":"/psychology/self-awareness","sidebar":"tutorialSidebar"},{"id":"psychology/self-control-will-power","path":"/psychology/self-control-will-power","sidebar":"tutorialSidebar"},{"id":"psychology/sleep","path":"/psychology/sleep","sidebar":"tutorialSidebar"},{"id":"psychology/soft-skills/asking-right-questions","path":"/psychology/soft-skills/asking-right-questions","sidebar":"tutorialSidebar"},{"id":"psychology/soft-skills/disagreement-feedback","path":"/psychology/soft-skills/disagreement-feedback","sidebar":"tutorialSidebar"},{"id":"psychology/soft-skills/listening","path":"/psychology/soft-skills/listening","sidebar":"tutorialSidebar"},{"id":"psychology/soft-skills/negotiation","path":"/psychology/soft-skills/negotiation","sidebar":"tutorialSidebar"},{"id":"psychology/soft-skills/prioritization-leverage","path":"/psychology/soft-skills/prioritization-leverage","sidebar":"tutorialSidebar"},{"id":"psychology/soft-skills/readme","path":"/psychology/soft-skills/","sidebar":"tutorialSidebar"},{"id":"psychology/soft-skills/reasoning","path":"/psychology/soft-skills/reasoning","sidebar":"tutorialSidebar"},{"id":"psychology/soft-skills/speaking-phrases-quotes","path":"/psychology/soft-skills/speaking-phrases-quotes","sidebar":"tutorialSidebar"},{"id":"psychology/soft-skills/speaking-story-talking-conversation-presentation-phrases","path":"/psychology/soft-skills/speaking-story-talking-conversation-presentation-phrases","sidebar":"tutorialSidebar"},{"id":"psychology/soft-skills/writing","path":"/psychology/soft-skills/writing","sidebar":"tutorialSidebar"},{"id":"psychology/stoicism","path":"/psychology/stoicism","sidebar":"tutorialSidebar"},{"id":"psychology/strategic-thinking","path":"/psychology/strategic-thinking","sidebar":"tutorialSidebar"},{"id":"psychology/thinking-mental-models","path":"/psychology/thinking-mental-models","sidebar":"tutorialSidebar"},{"id":"psychology/travelling","path":"/psychology/travelling","sidebar":"tutorialSidebar"},{"id":"psychology/trust","path":"/psychology/trust","sidebar":"tutorialSidebar"},{"id":"python/advanced/architecture","path":"/python/advanced/architecture","sidebar":"tutorialSidebar"},{"id":"python/advanced/concurrency","path":"/python/advanced/concurrency","sidebar":"tutorialSidebar"},{"id":"python/advanced/cpython","path":"/python/advanced/cpython","sidebar":"tutorialSidebar"},{"id":"python/advanced/faster-python","path":"/python/advanced/faster-python","sidebar":"tutorialSidebar"},{"id":"python/advanced/idiomatic-python","path":"/python/advanced/idiomatic-python","sidebar":"tutorialSidebar"},{"id":"python/advanced/memory-management","path":"/python/advanced/memory-management","sidebar":"tutorialSidebar"},{"id":"python/advanced/mixin","path":"/python/advanced/mixin","sidebar":"tutorialSidebar"},{"id":"python/advanced/others","path":"/python/advanced/others","sidebar":"tutorialSidebar"},{"id":"python/advanced/python-tricks","path":"/python/advanced/python-tricks","sidebar":"tutorialSidebar"},{"id":"python/advanced/python-versions","path":"/python/advanced/python-versions","sidebar":"tutorialSidebar"},{"id":"python/advanced/readme","path":"/python/advanced/","sidebar":"tutorialSidebar"},{"id":"python/advanced/super","path":"/python/advanced/super","sidebar":"tutorialSidebar"},{"id":"python/advanced/web-scraping","path":"/python/advanced/web-scraping","sidebar":"tutorialSidebar"},{"id":"python/django/admin-site","path":"/python/django/admin-site","sidebar":"tutorialSidebar"},{"id":"python/django/advanced","path":"/python/django/advanced","sidebar":"tutorialSidebar"},{"id":"python/django/architecture","path":"/python/django/architecture","sidebar":"tutorialSidebar"},{"id":"python/django/authentication-authorization","path":"/python/django/authentication-authorization","sidebar":"tutorialSidebar"},{"id":"python/django/cheatsheet","path":"/python/django/cheatsheet","sidebar":"tutorialSidebar"},{"id":"python/django/commands","path":"/python/django/commands","sidebar":"tutorialSidebar"},{"id":"python/django/content-types","path":"/python/django/content-types","sidebar":"tutorialSidebar"},{"id":"python/django/django-rest-framework-drf","path":"/python/django/django-rest-framework-drf","sidebar":"tutorialSidebar"},{"id":"python/django/django-template-language","path":"/python/django/django-template-language","sidebar":"tutorialSidebar"},{"id":"python/django/docs-topic-guides","path":"/python/django/docs-topic-guides","sidebar":"tutorialSidebar"},{"id":"python/django/libraries","path":"/python/django/libraries","sidebar":"tutorialSidebar"},{"id":"python/django/logging","path":"/python/django/logging","sidebar":"tutorialSidebar"},{"id":"python/django/models","path":"/python/django/models","sidebar":"tutorialSidebar"},{"id":"python/django/optimizations","path":"/python/django/optimizations","sidebar":"tutorialSidebar"},{"id":"python/django/other-topics","path":"/python/django/other-topics","sidebar":"tutorialSidebar"},{"id":"python/django/others","path":"/python/django/others","sidebar":"tutorialSidebar"},{"id":"python/django/overview","path":"/python/django/overview","sidebar":"tutorialSidebar"},{"id":"python/django/queryset-and-query-expressions","path":"/python/django/queryset-and-query-expressions","sidebar":"tutorialSidebar"},{"id":"python/django/readme","path":"/python/django/","sidebar":"tutorialSidebar"},{"id":"python/django/unicode","path":"/python/django/unicode","sidebar":"tutorialSidebar"},{"id":"python/documentation/01-intro","path":"/python/documentation/01-intro","sidebar":"tutorialSidebar"},{"id":"python/documentation/02-built-in-functions","path":"/python/documentation/02-built-in-functions","sidebar":"tutorialSidebar"},{"id":"python/documentation/03-built-in-constants","path":"/python/documentation/03-built-in-constants","sidebar":"tutorialSidebar"},{"id":"python/documentation/04-built-in-types","path":"/python/documentation/04-built-in-types","sidebar":"tutorialSidebar"},{"id":"python/documentation/06-text-processing-services","path":"/python/documentation/06-text-processing-services","sidebar":"tutorialSidebar"},{"id":"python/documentation/07-binary-data-services","path":"/python/documentation/07-binary-data-services","sidebar":"tutorialSidebar"},{"id":"python/documentation/08-data-types","path":"/python/documentation/08-data-types","sidebar":"tutorialSidebar"},{"id":"python/documentation/09-numeric-and-mathematical-modules","path":"/python/documentation/09-numeric-and-mathematical-modules","sidebar":"tutorialSidebar"},{"id":"python/documentation/10-functional-programming-modules","path":"/python/documentation/10-functional-programming-modules","sidebar":"tutorialSidebar"},{"id":"python/documentation/11-file-and-directory-access","path":"/python/documentation/11-file-and-directory-access","sidebar":"tutorialSidebar"},{"id":"python/documentation/12-data-persistence","path":"/python/documentation/12-data-persistence","sidebar":"tutorialSidebar"},{"id":"python/documentation/14-file-formats","path":"/python/documentation/14-file-formats","sidebar":"tutorialSidebar"},{"id":"python/documentation/15-cryptographic-services","path":"/python/documentation/15-cryptographic-services","sidebar":"tutorialSidebar"},{"id":"python/documentation/16-generic-operating-system-services-logging","path":"/python/documentation/16-generic-operating-system-services-logging","sidebar":"tutorialSidebar"},{"id":"python/documentation/17-concurrent-execution","path":"/python/documentation/17-concurrent-execution","sidebar":"tutorialSidebar"},{"id":"python/documentation/18-interprocess-communication-and-networking","path":"/python/documentation/18-interprocess-communication-and-networking","sidebar":"tutorialSidebar"},{"id":"python/documentation/19-internet-data-handling","path":"/python/documentation/19-internet-data-handling","sidebar":"tutorialSidebar"},{"id":"python/documentation/21-structured-markup-processing-tools","path":"/python/documentation/21-structured-markup-processing-tools","sidebar":"tutorialSidebar"},{"id":"python/documentation/22-internet-protocols-and-support","path":"/python/documentation/22-internet-protocols-and-support","sidebar":"tutorialSidebar"},{"id":"python/documentation/27-development-tools/readme","path":"/python/documentation/27-development-tools/","sidebar":"tutorialSidebar"},{"id":"python/documentation/27-development-tools/static-code-analysis","path":"/python/documentation/27-development-tools/static-code-analysis","sidebar":"tutorialSidebar"},{"id":"python/documentation/27-development-tools/testing","path":"/python/documentation/27-development-tools/testing","sidebar":"tutorialSidebar"},{"id":"python/documentation/28-debugging-and-profiling","path":"/python/documentation/28-debugging-and-profiling","sidebar":"tutorialSidebar"},{"id":"python/documentation/30-python-runtime-services","path":"/python/documentation/30-python-runtime-services","sidebar":"tutorialSidebar"},{"id":"python/documentation/33-python-language-services","path":"/python/documentation/33-python-language-services","sidebar":"tutorialSidebar"},{"id":"python/documentation/pep","path":"/python/documentation/pep","sidebar":"tutorialSidebar"},{"id":"python/documentation/python-howtos","path":"/python/documentation/python-howtos","sidebar":"tutorialSidebar"},{"id":"python/documentation/python-language-reference","path":"/python/documentation/python-language-reference","sidebar":"tutorialSidebar"},{"id":"python/documentation/readme","path":"/python/documentation/","sidebar":"tutorialSidebar"},{"id":"python/documentation/the-python-standard-library","path":"/python/documentation/the-python-standard-library","sidebar":"tutorialSidebar"},{"id":"python/others/boto-and-boto3/readme","path":"/python/others/boto-and-boto3/","sidebar":"tutorialSidebar"},{"id":"python/others/boto-and-boto3/slides","path":"/python/others/boto-and-boto3/slides","sidebar":"tutorialSidebar"},{"id":"python/others/fastapi/internal-working","path":"/python/others/fastapi/internal-working","sidebar":"tutorialSidebar"},{"id":"python/others/fastapi/readme","path":"/python/others/fastapi/","sidebar":"tutorialSidebar"},{"id":"python/others/flask/documentation","path":"/python/others/flask/documentation","sidebar":"tutorialSidebar"},{"id":"python/others/flask/flask-sqlalchemy","path":"/python/others/flask/flask-sqlalchemy","sidebar":"tutorialSidebar"},{"id":"python/others/flask/others","path":"/python/others/flask/others","sidebar":"tutorialSidebar"},{"id":"python/others/flask/readme","path":"/python/others/flask/","sidebar":"tutorialSidebar"},{"id":"python/others/frameworks","path":"/python/others/frameworks","sidebar":"tutorialSidebar"},{"id":"python/others/libraries","path":"/python/others/libraries","sidebar":"tutorialSidebar"},{"id":"python/others/pymysql","path":"/python/others/pymysql","sidebar":"tutorialSidebar"},{"id":"python/others/readme","path":"/python/others/","sidebar":"tutorialSidebar"},{"id":"python/others/requests","path":"/python/others/requests","sidebar":"tutorialSidebar"},{"id":"python/others/sqlalchemy/models","path":"/python/others/sqlalchemy/models","sidebar":"tutorialSidebar"},{"id":"python/others/sqlalchemy/orm","path":"/python/others/sqlalchemy/orm","sidebar":"tutorialSidebar"},{"id":"python/others/sqlalchemy/readme","path":"/python/others/sqlalchemy/","sidebar":"tutorialSidebar"},{"id":"python/others/twisted","path":"/python/others/twisted","sidebar":"tutorialSidebar"},{"id":"python/python-intro/basic","path":"/python/python-intro/basic","sidebar":"tutorialSidebar"},{"id":"python/python-intro/classes","path":"/python/python-intro/classes","sidebar":"tutorialSidebar"},{"id":"python/python-intro/data-structure/dict-evolution","path":"/python/python-intro/data-structure/dict-evolution","sidebar":"tutorialSidebar"},{"id":"python/python-intro/data-structure/dictionary","path":"/python/python-intro/data-structure/dictionary","sidebar":"tutorialSidebar"},{"id":"python/python-intro/data-structure/dictionary-architecture","path":"/python/python-intro/data-structure/dictionary-architecture","sidebar":"tutorialSidebar"},{"id":"python/python-intro/data-structure/list","path":"/python/python-intro/data-structure/list","sidebar":"tutorialSidebar"},{"id":"python/python-intro/data-structure/readme","path":"/python/python-intro/data-structure/","sidebar":"tutorialSidebar"},{"id":"python/python-intro/data-structure/set","path":"/python/python-intro/data-structure/set","sidebar":"tutorialSidebar"},{"id":"python/python-intro/data-structure/tuples","path":"/python/python-intro/data-structure/tuples","sidebar":"tutorialSidebar"},{"id":"python/python-intro/datetime","path":"/python/python-intro/datetime","sidebar":"tutorialSidebar"},{"id":"python/python-intro/exceptions","path":"/python/python-intro/exceptions","sidebar":"tutorialSidebar"},{"id":"python/python-intro/file-io","path":"/python/python-intro/file-io","sidebar":"tutorialSidebar"},{"id":"python/python-intro/functions","path":"/python/python-intro/functions","sidebar":"tutorialSidebar"},{"id":"python/python-intro/generators","path":"/python/python-intro/generators","sidebar":"tutorialSidebar"},{"id":"python/python-intro/input-output-template","path":"/python/python-intro/input-output-template","sidebar":"tutorialSidebar"},{"id":"python/python-intro/iterators","path":"/python/python-intro/iterators","sidebar":"tutorialSidebar"},{"id":"python/python-intro/keywords","path":"/python/python-intro/keywords","sidebar":"tutorialSidebar"},{"id":"python/python-intro/loops","path":"/python/python-intro/loops","sidebar":"tutorialSidebar"},{"id":"python/python-intro/map-reduce-filter","path":"/python/python-intro/map-reduce-filter","sidebar":"tutorialSidebar"},{"id":"python/python-intro/mathematics","path":"/python/python-intro/mathematics","sidebar":"tutorialSidebar"},{"id":"python/python-intro/modules","path":"/python/python-intro/modules","sidebar":"tutorialSidebar"},{"id":"python/python-intro/oops","path":"/python/python-intro/oops","sidebar":"tutorialSidebar"},{"id":"python/python-intro/operators","path":"/python/python-intro/operators","sidebar":"tutorialSidebar"},{"id":"python/python-intro/questions","path":"/python/python-intro/questions","sidebar":"tutorialSidebar"},{"id":"python/python-intro/readme","path":"/python/python-intro/","sidebar":"tutorialSidebar"},{"id":"python/python-intro/regular-expressions","path":"/python/python-intro/regular-expressions","sidebar":"tutorialSidebar"},{"id":"python/python-intro/requirements-file","path":"/python/python-intro/requirements-file","sidebar":"tutorialSidebar"},{"id":"python/python-intro/resources","path":"/python/python-intro/resources","sidebar":"tutorialSidebar"},{"id":"python/python-intro/sorting","path":"/python/python-intro/sorting","sidebar":"tutorialSidebar"},{"id":"python/python-intro/strings","path":"/python/python-intro/strings","sidebar":"tutorialSidebar"},{"id":"python/python-intro/time-complexities","path":"/python/python-intro/time-complexities","sidebar":"tutorialSidebar"},{"id":"python/python-intro/virtualenv-and-pip","path":"/python/python-intro/virtualenv-and-pip","sidebar":"tutorialSidebar"},{"id":"python/readme","path":"/python/","sidebar":"tutorialSidebar"},{"id":"readme","path":"/","sidebar":"tutorialSidebar"},{"id":"technologies/apache/airflow/airflow-architecture","path":"/technologies/apache/airflow/airflow-architecture","sidebar":"tutorialSidebar"},{"id":"technologies/apache/airflow/astronomer","path":"/technologies/apache/airflow/astronomer","sidebar":"tutorialSidebar"},{"id":"technologies/apache/airflow/commands-configs","path":"/technologies/apache/airflow/commands-configs","sidebar":"tutorialSidebar"},{"id":"technologies/apache/airflow/concepts","path":"/technologies/apache/airflow/concepts","sidebar":"tutorialSidebar"},{"id":"technologies/apache/airflow/dags-example","path":"/technologies/apache/airflow/dags-example","sidebar":"tutorialSidebar"},{"id":"technologies/apache/airflow/intro","path":"/technologies/apache/airflow/intro","sidebar":"tutorialSidebar"},{"id":"technologies/apache/airflow/others","path":"/technologies/apache/airflow/others","sidebar":"tutorialSidebar"},{"id":"technologies/apache/airflow/parallelism","path":"/technologies/apache/airflow/parallelism","sidebar":"tutorialSidebar"},{"id":"technologies/apache/airflow/readme","path":"/technologies/apache/airflow/","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-flink","path":"/technologies/apache/apache-flink","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-hadoop/about","path":"/technologies/apache/apache-hadoop/about","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-hadoop/big-data-hadoop-stack","path":"/technologies/apache/apache-hadoop/big-data-hadoop-stack","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-hadoop/hadoop-mapreduce-1.0","path":"/technologies/apache/apache-hadoop/hadoop-mapreduce-1.0","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-hadoop/hadoop-mapreduce-2.0","path":"/technologies/apache/apache-hadoop/hadoop-mapreduce-2.0","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-hadoop/hdfs","path":"/technologies/apache/apache-hadoop/hdfs","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-hadoop/intro","path":"/technologies/apache/apache-hadoop/intro","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-hadoop/mapreduce-examples","path":"/technologies/apache/apache-hadoop/mapreduce-examples","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-hadoop/others","path":"/technologies/apache/apache-hadoop/others","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-hadoop/readme","path":"/technologies/apache/apache-hadoop/","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-hbase","path":"/technologies/apache/apache-hbase","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-hive","path":"/technologies/apache/apache-hive","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-hudi","path":"/technologies/apache/apache-hudi","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-projects","path":"/technologies/apache/apache-projects","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-pulsar","path":"/technologies/apache/apache-pulsar","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-samza","path":"/technologies/apache/apache-samza","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-spark/00-intro","path":"/technologies/apache/apache-spark/00-intro","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-spark/01-terms","path":"/technologies/apache/apache-spark/01-terms","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-spark/02-spark-modules","path":"/technologies/apache/apache-spark/02-spark-modules","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-spark/03-processing-model","path":"/technologies/apache/apache-spark/03-processing-model","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-spark/04-key-points","path":"/technologies/apache/apache-spark/04-key-points","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-spark/05-spark-built-in-libraries","path":"/technologies/apache/apache-spark/05-spark-built-in-libraries","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-spark/06-sliding-window-analytics","path":"/technologies/apache/apache-spark/06-sliding-window-analytics","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-spark/07-joins","path":"/technologies/apache/apache-spark/07-joins","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-spark/08-examples","path":"/technologies/apache/apache-spark/08-examples","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-spark/09-dataframe","path":"/technologies/apache/apache-spark/09-dataframe","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-spark/10-sql-functions-datasources","path":"/technologies/apache/apache-spark/10-sql-functions-datasources","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-spark/11-built-in-functions","path":"/technologies/apache/apache-spark/11-built-in-functions","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-spark/99-others","path":"/technologies/apache/apache-spark/99-others","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-spark/readme","path":"/technologies/apache/apache-spark/","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-storm","path":"/technologies/apache/apache-storm","sidebar":"tutorialSidebar"},{"id":"technologies/apache/apache-zookeeper","path":"/technologies/apache/apache-zookeeper","sidebar":"tutorialSidebar"},{"id":"technologies/apache/celery/celery-backend","path":"/technologies/apache/celery/celery-backend","sidebar":"tutorialSidebar"},{"id":"technologies/apache/celery/commands-tools","path":"/technologies/apache/celery/commands-tools","sidebar":"tutorialSidebar"},{"id":"technologies/apache/celery/readme","path":"/technologies/apache/celery/","sidebar":"tutorialSidebar"},{"id":"technologies/apache/celery/workers","path":"/technologies/apache/celery/workers","sidebar":"tutorialSidebar"},{"id":"technologies/apache/cncf","path":"/technologies/apache/cncf","sidebar":"tutorialSidebar"},{"id":"technologies/apache/data-pipeline-architecture","path":"/technologies/apache/data-pipeline-architecture","sidebar":"tutorialSidebar"},{"id":"technologies/apache/others","path":"/technologies/apache/others","sidebar":"tutorialSidebar"},{"id":"technologies/apache/readme","path":"/technologies/apache/","sidebar":"tutorialSidebar"},{"id":"technologies/brokers/emqtt/commands","path":"/technologies/brokers/emqtt/commands","sidebar":"tutorialSidebar"},{"id":"technologies/brokers/emqtt/conf","path":"/technologies/brokers/emqtt/conf","sidebar":"tutorialSidebar"},{"id":"technologies/brokers/emqtt/deployment-and-installation","path":"/technologies/brokers/emqtt/deployment-and-installation","sidebar":"tutorialSidebar"},{"id":"technologies/brokers/emqtt/plugins","path":"/technologies/brokers/emqtt/plugins","sidebar":"tutorialSidebar"},{"id":"technologies/brokers/emqtt/readme","path":"/technologies/brokers/emqtt/","sidebar":"tutorialSidebar"},{"id":"technologies/brokers/others","path":"/technologies/brokers/others","sidebar":"tutorialSidebar"},{"id":"technologies/brokers/rabbitmq","path":"/technologies/brokers/rabbitmq","sidebar":"tutorialSidebar"},{"id":"technologies/brokers/readme","path":"/technologies/brokers/","sidebar":"tutorialSidebar"},{"id":"technologies/brokers/smap","path":"/technologies/brokers/smap","sidebar":"tutorialSidebar"},{"id":"technologies/brokers/vernemq/commands","path":"/technologies/brokers/vernemq/commands","sidebar":"tutorialSidebar"},{"id":"technologies/brokers/vernemq/readme","path":"/technologies/brokers/vernemq/","sidebar":"tutorialSidebar"},{"id":"technologies/brokers/volttron","path":"/technologies/brokers/volttron","sidebar":"tutorialSidebar"},{"id":"technologies/databricks/01-databricks","path":"/technologies/databricks/01-databricks","sidebar":"tutorialSidebar"},{"id":"technologies/databricks/02-databricks-getting-started","path":"/technologies/databricks/02-databricks-getting-started","sidebar":"tutorialSidebar"},{"id":"technologies/databricks/03-optimizations","path":"/technologies/databricks/03-optimizations","sidebar":"tutorialSidebar"},{"id":"technologies/databricks/04-workflow","path":"/technologies/databricks/04-workflow","sidebar":"tutorialSidebar"},{"id":"technologies/databricks/10-medallion-architecture","path":"/technologies/databricks/10-medallion-architecture","sidebar":"tutorialSidebar"},{"id":"technologies/databricks/20-delta-live-tables","path":"/technologies/databricks/20-delta-live-tables","sidebar":"tutorialSidebar"},{"id":"technologies/databricks/30-unity-catalog","path":"/technologies/databricks/30-unity-catalog","sidebar":"tutorialSidebar"},{"id":"technologies/databricks/40-databricks-commands","path":"/technologies/databricks/40-databricks-commands","sidebar":"tutorialSidebar"},{"id":"technologies/databricks/99-others","path":"/technologies/databricks/99-others","sidebar":"tutorialSidebar"},{"id":"technologies/databricks/readme","path":"/technologies/databricks/","sidebar":"tutorialSidebar"},{"id":"technologies/elasticsearch/analysis-and-analyzers","path":"/technologies/elasticsearch/analysis-and-analyzers","sidebar":"tutorialSidebar"},{"id":"technologies/elasticsearch/architecture","path":"/technologies/elasticsearch/architecture","sidebar":"tutorialSidebar"},{"id":"technologies/elasticsearch/commands","path":"/technologies/elasticsearch/commands","sidebar":"tutorialSidebar"},{"id":"technologies/elasticsearch/elastalert","path":"/technologies/elasticsearch/elastalert","sidebar":"tutorialSidebar"},{"id":"technologies/elasticsearch/elasticsearch-the-definitive-guide","path":"/technologies/elasticsearch/elasticsearch-the-definitive-guide","sidebar":"tutorialSidebar"},{"id":"technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch","path":"/technologies/elasticsearch/elk-efk-stack-elastic-stack-elasticsearch","sidebar":"tutorialSidebar"},{"id":"technologies/elasticsearch/full-text-searches","path":"/technologies/elasticsearch/full-text-searches","sidebar":"tutorialSidebar"},{"id":"technologies/elasticsearch/getting-started","path":"/technologies/elasticsearch/getting-started","sidebar":"tutorialSidebar"},{"id":"technologies/elasticsearch/information-retrieval","path":"/technologies/elasticsearch/information-retrieval","sidebar":"tutorialSidebar"},{"id":"technologies/elasticsearch/internal-working","path":"/technologies/elasticsearch/internal-working","sidebar":"tutorialSidebar"},{"id":"technologies/elasticsearch/others","path":"/technologies/elasticsearch/others","sidebar":"tutorialSidebar"},{"id":"technologies/elasticsearch/readme","path":"/technologies/elasticsearch/","sidebar":"tutorialSidebar"},{"id":"technologies/git/branching-strategies","path":"/technologies/git/branching-strategies","sidebar":"tutorialSidebar"},{"id":"technologies/git/commands","path":"/technologies/git/commands","sidebar":"tutorialSidebar"},{"id":"technologies/git/github","path":"/technologies/git/github","sidebar":"tutorialSidebar"},{"id":"technologies/git/others","path":"/technologies/git/others","sidebar":"tutorialSidebar"},{"id":"technologies/git/readme","path":"/technologies/git/","sidebar":"tutorialSidebar"},{"id":"technologies/git/theory","path":"/technologies/git/theory","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/confluent-kafka","path":"/technologies/kafka/confluent-kafka","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/installing-kafka","path":"/technologies/kafka/installing-kafka","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/intro","path":"/technologies/kafka/intro","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/intro-to-kafka","path":"/technologies/kafka/intro-to-kafka","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/kafka-architecture","path":"/technologies/kafka/kafka-architecture","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/kafka-commands","path":"/technologies/kafka/kafka-commands","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/kafka-connect","path":"/technologies/kafka/kafka-connect","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/kafka-consumers","path":"/technologies/kafka/kafka-consumers","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/kafka-listeners","path":"/technologies/kafka/kafka-listeners","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/kafka-producers","path":"/technologies/kafka/kafka-producers","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/kafka-python","path":"/technologies/kafka/kafka-python","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/kafka-rest-proxy","path":"/technologies/kafka/kafka-rest-proxy","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/kafka-schema-registry","path":"/technologies/kafka/kafka-schema-registry","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/kafka-streams","path":"/technologies/kafka/kafka-streams","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/kafka-topic-replication","path":"/technologies/kafka/kafka-topic-replication","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/kafkacat","path":"/technologies/kafka/kafkacat","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/migration-mirroring-replication","path":"/technologies/kafka/migration-mirroring-replication","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/monitoring","path":"/technologies/kafka/monitoring","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/others","path":"/technologies/kafka/others","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/readme","path":"/technologies/kafka/","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/security","path":"/technologies/kafka/security","sidebar":"tutorialSidebar"},{"id":"technologies/kafka/strimzi","path":"/technologies/kafka/strimzi","sidebar":"tutorialSidebar"},{"id":"technologies/others/fasttag","path":"/technologies/others/fasttag","sidebar":"tutorialSidebar"},{"id":"technologies/others/other-technologies","path":"/technologies/others/other-technologies","sidebar":"tutorialSidebar"},{"id":"technologies/others/others-distributed-systems","path":"/technologies/others/others-distributed-systems","sidebar":"tutorialSidebar"},{"id":"technologies/others/others-iot","path":"/technologies/others/others-iot","sidebar":"tutorialSidebar"},{"id":"technologies/others/presto","path":"/technologies/others/presto","sidebar":"tutorialSidebar"},{"id":"technologies/others/readme","path":"/technologies/others/","sidebar":"tutorialSidebar"},{"id":"technologies/readme","path":"/technologies/","sidebar":"tutorialSidebar"}],"draftIds":[],"sidebars":{"tutorialSidebar":{"link":{"path":"/about-me/","label":"About Me"}}}}],"breadcrumbs":true}}}'),s=JSON.parse('{"defaultLocale":"en","locales":["en"],"path":"i18n","currentLocale":"en","localeConfigs":{"en":{"label":"English","direction":"ltr","htmlLang":"en","calendar":"gregory","path":"en"}}}');var r=a(557529);const c=JSON.parse('{"docusaurusVersion":"3.0.1","siteVersion":"0.0.1","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"3.0.1"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"3.0.1"},"docusaurus-plugin-google-gtag":{"type":"package","name":"@docusaurus/plugin-google-gtag","version":"3.0.1"},"docusaurus-plugin-google-tag-manager":{"type":"package","name":"@docusaurus/plugin-google-tag-manager","version":"3.0.1"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"3.0.1"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"3.0.1"},"docusaurus-theme-search-algolia":{"type":"package","name":"@docusaurus/theme-search-algolia","version":"3.0.1"},"docusaurus-plugin-pwa":{"type":"package","name":"@docusaurus/plugin-pwa","version":"3.0.1"},"docusaurus-plugin-ideal-image":{"type":"package","name":"@docusaurus/plugin-ideal-image","version":"3.0.1"}}}');var d=a(785893);const l={siteConfig:i.default,siteMetadata:c,globalData:n,i18n:s,codeTranslations:r},m=o.createContext(l);function p(e){let{children:t}=e;return(0,d.jsx)(m.Provider,{value:l,children:t})}},873256:(e,t,a)=>{"use strict";a.d(t,{Z:()=>u});var o=a(667294),i=a(836136),n=a(631514),s=a(963905),r=a(201615),c=a(785893);function d(e){let{error:t,tryAgain:a}=e;return(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",minHeight:"100vh",width:"100%",maxWidth:"80ch",fontSize:"20px",margin:"0 auto",padding:"1rem"},children:[(0,c.jsx)("h1",{style:{fontSize:"3rem"},children:"This page crashed"}),(0,c.jsx)("button",{type:"button",onClick:a,style:{margin:"1rem 0",fontSize:"2rem",cursor:"pointer",borderRadius:20,padding:"1rem"},children:"Try again"}),(0,c.jsx)(l,{error:t})]})}function l(e){let{error:t}=e;const a=(0,s.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,c.jsx)("p",{style:{whiteSpace:"pre-wrap"},children:a})}function m(e){let{error:t,tryAgain:a}=e;return(0,c.jsxs)(u,{fallback:()=>(0,c.jsx)(d,{error:t,tryAgain:a}),children:[(0,c.jsx)(n.Z,{children:(0,c.jsx)("title",{children:"Page Error"})}),(0,c.jsx)(r.Z,{children:(0,c.jsx)(d,{error:t,tryAgain:a})})]})}const p=e=>(0,c.jsx)(m,{...e});class u extends o.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){i.Z.canUseDOM&&this.setState({error:e})}render(){const{children:e}=this.props,{error:t}=this.state;if(t){const e={error:t,tryAgain:()=>this.setState({error:null})};return(this.props.fallback??p)(e)}return e??null}}},836136:(e,t,a)=>{"use strict";a.d(t,{Z:()=>i});const o="undefined"!=typeof window&&"document"in window&&"createElement"in window.document,i={canUseDOM:o,canUseEventListeners:o&&("addEventListener"in window||"attachEvent"in window),canUseIntersectionObserver:o&&"IntersectionObserver"in window,canUseViewport:o&&"screen"in window}},631514:(e,t,a)=>{"use strict";a.d(t,{Z:()=>n});a(667294);var o=a(370405),i=a(785893);function n(e){return(0,i.jsx)(o.ql,{...e})}},583699:(e,t,a)=>{"use strict";a.d(t,{Z:()=>u});var o=a(667294),i=a(473727),n=a(963905),s=a(639962),r=a(702735),c=a(836136),d=a(785893);const l=o.createContext({collectLink:()=>{}});var m=a(779524);function p(e,t){let{isNavLink:a,to:p,href:u,activeClassName:b,isActive:h,"data-noBrokenLinkCheck":g,autoAddBaseUrl:f=!0,...y}=e;const{siteConfig:{trailingSlash:k,baseUrl:v}}=(0,s.Z)(),{withBaseUrl:S}=(0,m.C)(),w=(0,o.useContext)(l),_=(0,o.useRef)(null);(0,o.useImperativeHandle)(t,(()=>_.current));const x=p||u;const q=(0,r.Z)(x),j=x?.replace("pathname://","");let z=void 0!==j?(E=j,f&&(e=>e.startsWith("/"))(E)?S(E):E):void 0;var E;z&&q&&(z=(0,n.applyTrailingSlash)(z,{trailingSlash:k,baseUrl:v}));const C=(0,o.useRef)(!1),T=a?i.OL:i.rU,A=c.Z.canUseIntersectionObserver,L=(0,o.useRef)(),R=()=>{C.current||null==z||(window.docusaurus.preload(z),C.current=!0)};(0,o.useEffect)((()=>(!A&&q&&null!=z&&window.docusaurus.prefetch(z),()=>{A&&L.current&&L.current.disconnect()})),[L,z,A,q]);const N=z?.startsWith("#")??!1,P=!z||!q||N;return P||g||w.collectLink(z),P?(0,d.jsx)("a",{ref:_,href:z,...x&&!q&&{target:"_blank",rel:"noopener noreferrer"},...y}):(0,d.jsx)(T,{...y,onMouseEnter:R,onTouchStart:R,innerRef:e=>{_.current=e,A&&e&&q&&(L.current=new window.IntersectionObserver((t=>{t.forEach((t=>{e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(L.current.unobserve(e),L.current.disconnect(),null!=z&&window.docusaurus.prefetch(z))}))})),L.current.observe(e))},to:z,...a&&{isActive:h,activeClassName:b}})}const u=o.forwardRef(p)},797325:(e,t,a)=>{"use strict";a.d(t,{Z:()=>d,I:()=>c});var o=a(667294),i=a(785893);function n(e,t){const a=e.split(/(\{\w+\})/).map(((e,a)=>{if(a%2==1){const a=t?.[e.slice(1,-1)];if(void 0!==a)return a}return e}));return a.some((e=>(0,o.isValidElement)(e)))?a.map(((e,t)=>(0,o.isValidElement)(e)?o.cloneElement(e,{key:t}):e)).filter((e=>""!==e)):a.join("")}var s=a(557529);function r(e){let{id:t,message:a}=e;if(void 0===t&&void 0===a)throw new Error("Docusaurus translation declarations must have at least a translation id or a default translation message");return s[t??a]??a??t}function c(e,t){let{message:a,id:o}=e;return n(r({message:a,id:o}),t)}function d(e){let{children:t,id:a,values:o}=e;if(t&&"string"!=typeof t)throw console.warn("Illegal children",t),new Error("The Docusaurus component only accept simple string values");const s=r({message:t,id:a});return(0,i.jsx)(i.Fragment,{children:n(s,o)})}},506875:(e,t,a)=>{"use strict";a.d(t,{m:()=>o});const o="default"},702735:(e,t,a)=>{"use strict";function o(e){return/^(?:\w*:|\/\/)/.test(e)}function i(e){return void 0!==e&&!o(e)}a.d(t,{Z:()=>i,b:()=>o})},779524:(e,t,a)=>{"use strict";a.d(t,{C:()=>s,Z:()=>r});var o=a(667294),i=a(639962),n=a(702735);function s(){const{siteConfig:{baseUrl:e,url:t}}=(0,i.Z)(),a=(0,o.useCallback)(((a,o)=>function(e,t,a,o){let{forcePrependBaseUrl:i=!1,absolute:s=!1}=void 0===o?{}:o;if(!a||a.startsWith("#")||(0,n.b)(a))return a;if(i)return t+a.replace(/^\//,"");if(a===t.replace(/\/$/,""))return t;const r=a.startsWith(t)?a:t+a.replace(/^\//,"");return s?e+r:r}(t,e,a,o)),[t,e]);return{withBaseUrl:a}}function r(e,t){void 0===t&&(t={});const{withBaseUrl:a}=s();return a(e,t)}},639962:(e,t,a)=>{"use strict";a.d(t,{Z:()=>n});var o=a(667294),i=a(980694);function n(){return(0,o.useContext)(i._)}},51048:(e,t,a)=>{"use strict";a.d(t,{Z:()=>n});var o=a(667294),i=a(488121);function n(){return(0,o.useContext)(i._)}},81270:(e,t,a)=>{"use strict";a.d(t,{Z:()=>i});var o=a(667294);const i=a(836136).Z.canUseDOM?o.useLayoutEffect:o.useEffect},205304:(e,t,a)=>{"use strict";a.d(t,{Z:()=>i});const o=e=>"object"==typeof e&&!!e&&Object.keys(e).length>0;function i(e){const t={};return function e(a,i){Object.entries(a).forEach((a=>{let[n,s]=a;const r=i?`${i}.${n}`:n;o(s)?e(s,r):t[r]=s}))}(e),t}},469656:(e,t,a)=>{"use strict";a.d(t,{_:()=>n,z:()=>s});var o=a(667294),i=a(785893);const n=o.createContext(null);function s(e){let{children:t,value:a}=e;const s=o.useContext(n),r=(0,o.useMemo)((()=>function(e){let{parent:t,value:a}=e;if(!t){if(!a)throw new Error("Unexpected: no Docusaurus route context found");if(!("plugin"in a))throw new Error("Unexpected: Docusaurus topmost route context has no `plugin` attribute");return a}const o={...t.data,...a?.data};return{plugin:t.plugin,data:o}}({parent:s,value:a})),[s,a]);return(0,i.jsx)(n.Provider,{value:r,children:t})}},189871:(e,t,a)=>{"use strict";a.d(t,{Iw:()=>f,gA:()=>u,WS:()=>b,_r:()=>m,Jo:()=>y,zh:()=>p,yW:()=>g,gB:()=>h});var o=a(616550),i=a(639962),n=a(506875);function s(e,t){void 0===t&&(t={});const a=function(){const{globalData:e}=(0,i.Z)();return e}()[e];if(!a&&t.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin.`);return a}const r=e=>e.versions.find((e=>e.isLast));function c(e,t){const a=r(e);return[...e.versions.filter((e=>e!==a)),a].find((e=>!!(0,o.LX)(t,{path:e.path,exact:!1,strict:!1})))}function d(e,t){const a=c(e,t),i=a?.docs.find((e=>!!(0,o.LX)(t,{path:e.path,exact:!0,strict:!1})));return{activeVersion:a,activeDoc:i,alternateDocVersions:i?function(t){const a={};return e.versions.forEach((e=>{e.docs.forEach((o=>{o.id===t&&(a[e.name]=o)}))})),a}(i.id):{}}}const l={},m=()=>s("docusaurus-plugin-content-docs")??l,p=e=>function(e,t,a){void 0===t&&(t=n.m),void 0===a&&(a={});const o=s(e),i=o?.[t];if(!i&&a.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin with id "${t}".`);return i}("docusaurus-plugin-content-docs",e,{failfast:!0});function u(e){void 0===e&&(e={});const t=m(),{pathname:a}=(0,o.TH)();return function(e,t,a){void 0===a&&(a={});const i=Object.entries(e).sort(((e,t)=>t[1].path.localeCompare(e[1].path))).find((e=>{let[,a]=e;return!!(0,o.LX)(t,{path:a.path,exact:!1,strict:!1})})),n=i?{pluginId:i[0],pluginData:i[1]}:void 0;if(!n&&a.failfast)throw new Error(`Can't find active docs plugin for "${t}" pathname, while it was expected to be found. Maybe you tried to use a docs feature that can only be used on a docs-related page? Existing docs plugin paths are: ${Object.values(e).map((e=>e.path)).join(", ")}`);return n}(t,a,e)}function b(e){void 0===e&&(e={});const t=u(e),{pathname:a}=(0,o.TH)();if(!t)return;return{activePlugin:t,activeVersion:c(t.pluginData,a)}}function h(e){return p(e).versions}function g(e){const t=p(e);return r(t)}function f(e){const t=p(e),{pathname:a}=(0,o.TH)();return d(t,a)}function y(e){const t=p(e),{pathname:a}=(0,o.TH)();return function(e,t){const a=r(e);return{latestDocSuggestion:d(e,t).alternateDocVersions[a.name],latestVersionSuggestion:a}}(t,a)}},374313:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>o});const o={onRouteDidUpdate(e){let{location:t,previousLocation:a}=e;!a||t.pathname===a.pathname&&t.search===a.search&&t.hash===a.hash||setTimeout((()=>{window.gtag("set","page_path",t.pathname+t.search+t.hash),window.gtag("event","page_view")}))}}},245117:(e,t,a)=>{"use strict";a.r(t);var o=a(836136),i=a(192560);const n="/sw.js",s=["appInstalled","standalone","queryString"],r=!0,c=(0,i.WA)("docusaurus.pwa.event.appInstalled.fired");function d(e,t){r&&(void 0===t?console.log(`[Docusaurus-PWA][registerSw]: ${e}`):console.log(`[Docusaurus-PWA][registerSw]: ${e}`,t))}async function l(){const e=await navigator.serviceWorker.getRegistrations();d("will unregister all service workers",{registrations:e}),await Promise.all(e.map((e=>e.unregister().then((t=>d("unregister service worker",{registration:e,result:t})))))),d("unregistered all service workers",{registrations:e}),window.location.reload()}const m={always:()=>!0,mobile:()=>window.innerWidth<=996,saveData:()=>!!navigator.connection?.saveData,appInstalled:()=>"true"===c.get()||async function(){if(!("getInstalledRelatedApps"in window.navigator))return!1;try{return(await navigator.getInstalledRelatedApps()).some((e=>"webapp"===e.platform))}catch(e){return!1}}(),standalone:()=>window.matchMedia("(display-mode: standalone)").matches,queryString:()=>"true"===new URLSearchParams(window.location.search).get("offlineMode")};async function p(){const e=await async function(){return(await Promise.all(s.map((e=>Promise.resolve(m[e]()).then((t=>t?e:void 0)))))).filter(Boolean)}(),t=e.length>0;return d(t?"offline mode enabled, because of activation strategies":"offline mode disabled, because none of the offlineModeActivationStrategies could be used",{activeStrategies:e,availableStrategies:s}),t}o.Z.canUseDOM&&(d("debug mode enabled"),"serviceWorker"in navigator&&(d("addLegacyAppInstalledEventsListeners"),window.addEventListener("appinstalled",(e=>{d("event appinstalled",{event:e}),c.set("true"),d("AppInstalledEventFiredStorage.set('true')"),l()})),window.addEventListener("beforeinstallprompt",(e=>{d("event beforeinstallprompt",{event:e});const t=c.get();d("AppInstalledEventFiredStorage.get()",{appInstalledEventFired:t}),t&&(c.del(),d("AppInstalledEventFiredStorage.del()"),l())})),d("legacy appinstalled and beforeinstallprompt event listeners installed"),async function(){const[{Workbox:e},t]=await Promise.all([a.e(75131).then(a.bind(a,675131)),p()]),o=new e(function(e){const t=JSON.stringify(e),a=`${n}?params=${encodeURIComponent(t)}`;return d("service worker url",{url:a,params:e}),a}({offlineMode:t,debug:r})),i=()=>o.messageSW({type:"SKIP_WAITING"}),s=()=>(d("handleServiceWorkerWaiting"),t?a.e(90363).then(a.bind(a,190363)).then((e=>{let{renderReloadPopup:t}=e;return t({onReload(){o.addEventListener("controlling",(()=>{window.location.reload()})),i()}})})):i());o.addEventListener("waiting",(e=>{d("event waiting",{event:e}),s()})),o.addEventListener("externalwaiting",(e=>{d("event externalwaiting",{event:e}),s()}));const c=await o.register();c&&(c.active&&d("registration.active",{registration:c}),c.installing&&d("registration.installing",{registration:c}),c.waiting&&(d("registration.waiting",{registration:c}),await s()))}().catch((e=>console.error("registerSW failed",e)))))},379957:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>n});var o=a(574865),i=a.n(o);i().configure({showSpinner:!1});const n={onRouteUpdate(e){let{location:t,previousLocation:a}=e;if(a&&t.pathname!==a.pathname){const e=window.setTimeout((()=>{i().start()}),200);return()=>window.clearTimeout(e)}},onRouteDidUpdate(){i().done()}}},982251:(e,t,a)=>{"use strict";a.r(t);var o=a(242573),i=a(636809);!function(e){const{themeConfig:{prism:t}}=i.default,{additionalLanguages:o}=t;globalThis.Prism=e,o.forEach((e=>{"php"===e&&a(196854),a(806726)(`./prism-${e}`)})),delete globalThis.Prism}(o.p1)},513899:(e,t,a)=>{"use strict";a.d(t,{Z:()=>d});a(667294);var o=a(490512),i=a(797325),n=a(820107),s=a(583699);const r={anchorWithStickyNavbar:"anchorWithStickyNavbar_LWe7",anchorWithHideOnScrollNavbar:"anchorWithHideOnScrollNavbar_WYt5"};var c=a(785893);function d(e){let{as:t,id:a,...d}=e;const{navbar:{hideOnScroll:l}}=(0,n.L)();if("h1"===t||!a)return(0,c.jsx)(t,{...d,id:void 0});const m=(0,i.I)({id:"theme.common.headingLinkTitle",message:"Direct link to {heading}",description:"Title for link to heading"},{heading:"string"==typeof d.children?d.children:a});return(0,c.jsxs)(t,{...d,className:(0,o.Z)("anchor",l?r.anchorWithHideOnScrollNavbar:r.anchorWithStickyNavbar,d.className),id:a,children:[d.children,(0,c.jsx)(s.Z,{className:"hash-link",to:`#${a}`,"aria-label":m,title:m,children:"\u200b"})]})}},414082:(e,t,a)=>{"use strict";a.d(t,{Z:()=>n});a(667294);const o={iconExternalLink:"iconExternalLink_nPIU"};var i=a(785893);function n(e){let{width:t=13.5,height:a=13.5}=e;return(0,i.jsx)("svg",{width:t,height:a,"aria-hidden":"true",viewBox:"0 0 24 24",className:o.iconExternalLink,children:(0,i.jsx)("path",{fill:"currentColor",d:"M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"})})}},201615:(e,t,a)=>{"use strict";a.d(t,{Z:()=>Lt});var o=a(667294),i=a(490512),n=a(873256),s=a(679488),r=a(616550),c=a(797325),d=a(743266),l=a(785893);const m="__docusaurus_skipToContent_fallback";function p(e){e.setAttribute("tabindex","-1"),e.focus(),e.removeAttribute("tabindex")}function u(){const e=(0,o.useRef)(null),{action:t}=(0,r.k6)(),a=(0,o.useCallback)((e=>{e.preventDefault();const t=document.querySelector("main:first-of-type")??document.getElementById(m);t&&p(t)}),[]);return(0,d.S)((a=>{let{location:o}=a;e.current&&!o.hash&&"PUSH"===t&&p(e.current)})),{containerRef:e,onClick:a}}const b=(0,c.I)({id:"theme.common.skipToMainContent",description:"The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation",message:"Skip to main content"});function h(e){const t=e.children??b,{containerRef:a,onClick:o}=u();return(0,l.jsx)("div",{ref:a,role:"region","aria-label":b,children:(0,l.jsx)("a",{...e,href:`#${m}`,onClick:o,children:t})})}var g=a(323702),f=a(978181);const y={skipToContent:"skipToContent_fXgn"};function k(){return(0,l.jsx)(h,{className:y.skipToContent})}var v=a(820107),S=a(65830);function w(e){let{width:t=21,height:a=21,color:o="currentColor",strokeWidth:i=1.2,className:n,...s}=e;return(0,l.jsx)("svg",{viewBox:"0 0 15 15",width:t,height:a,...s,children:(0,l.jsx)("g",{stroke:o,strokeWidth:i,children:(0,l.jsx)("path",{d:"M.75.75l13.5 13.5M14.25.75L.75 14.25"})})})}const _={closeButton:"closeButton_CVFx"};function x(e){return(0,l.jsx)("button",{type:"button","aria-label":(0,c.I)({id:"theme.AnnouncementBar.closeButtonAriaLabel",message:"Close",description:"The ARIA label for close button of announcement bar"}),...e,className:(0,i.Z)("clean-btn close",_.closeButton,e.className),children:(0,l.jsx)(w,{width:14,height:14,strokeWidth:3.1})})}const q={content:"content_knG7"};function j(e){const{announcementBar:t}=(0,v.L)(),{content:a}=t;return(0,l.jsx)("div",{...e,className:(0,i.Z)(q.content,e.className),dangerouslySetInnerHTML:{__html:a}})}const z={announcementBar:"announcementBar_mb4j",announcementBarPlaceholder:"announcementBarPlaceholder_vyr4",announcementBarClose:"announcementBarClose_gvF7",announcementBarContent:"announcementBarContent_xLdY"};function E(){const{announcementBar:e}=(0,v.L)(),{isActive:t,close:a}=(0,S.nT)();if(!t)return null;const{backgroundColor:o,textColor:i,isCloseable:n}=e;return(0,l.jsxs)("div",{className:z.announcementBar,style:{backgroundColor:o,color:i},role:"banner",children:[n&&(0,l.jsx)("div",{className:z.announcementBarPlaceholder}),(0,l.jsx)(j,{className:z.announcementBarContent}),n&&(0,l.jsx)(x,{onClick:a,className:z.announcementBarClose})]})}var C=a(560735),T=a(872957);var A=a(943768),L=a(753086);const R=o.createContext(null);function N(e){let{children:t}=e;const a=function(){const e=(0,C.e)(),t=(0,L.HY)(),[a,i]=(0,o.useState)(!1),n=null!==t.component,s=(0,A.D9)(n);return(0,o.useEffect)((()=>{n&&!s&&i(!0)}),[n,s]),(0,o.useEffect)((()=>{n?e.shown||i(!0):i(!1)}),[e.shown,n]),(0,o.useMemo)((()=>[a,i]),[a])}();return(0,l.jsx)(R.Provider,{value:a,children:t})}function P(e){if(e.component){const t=e.component;return(0,l.jsx)(t,{...e.props})}}function O(){const e=(0,o.useContext)(R);if(!e)throw new A.i6("NavbarSecondaryMenuDisplayProvider");const[t,a]=e,i=(0,o.useCallback)((()=>a(!1)),[a]),n=(0,L.HY)();return(0,o.useMemo)((()=>({shown:t,hide:i,content:P(n)})),[i,n,t])}function I(e){let{header:t,primaryMenu:a,secondaryMenu:o}=e;const{shown:n}=O();return(0,l.jsxs)("div",{className:"navbar-sidebar",children:[t,(0,l.jsxs)("div",{className:(0,i.Z)("navbar-sidebar__items",{"navbar-sidebar__items--show-secondary":n}),children:[(0,l.jsx)("div",{className:"navbar-sidebar__item menu",children:a}),(0,l.jsx)("div",{className:"navbar-sidebar__item menu",children:o})]})]})}var D=a(309200),M=a(51048);function F(e){return(0,l.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,l.jsx)("path",{fill:"currentColor",d:"M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"})})}function B(e){return(0,l.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,l.jsx)("path",{fill:"currentColor",d:"M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"})})}const $={toggle:"toggle_vylO",toggleButton:"toggleButton_gllP",darkToggleIcon:"darkToggleIcon_wfgR",lightToggleIcon:"lightToggleIcon_pyhR",toggleButtonDisabled:"toggleButtonDisabled_aARS"};function U(e){let{className:t,buttonClassName:a,value:o,onChange:n}=e;const s=(0,M.Z)(),r=(0,c.I)({message:"Switch between dark and light mode (currently {mode})",id:"theme.colorToggle.ariaLabel",description:"The ARIA label for the navbar color mode toggle"},{mode:"dark"===o?(0,c.I)({message:"dark mode",id:"theme.colorToggle.ariaLabel.mode.dark",description:"The name for the dark color mode"}):(0,c.I)({message:"light mode",id:"theme.colorToggle.ariaLabel.mode.light",description:"The name for the light color mode"})});return(0,l.jsx)("div",{className:(0,i.Z)($.toggle,t),children:(0,l.jsxs)("button",{className:(0,i.Z)("clean-btn",$.toggleButton,!s&&$.toggleButtonDisabled,a),type:"button",onClick:()=>n("dark"===o?"light":"dark"),disabled:!s,title:r,"aria-label":r,"aria-live":"polite",children:[(0,l.jsx)(F,{className:(0,i.Z)($.toggleIcon,$.lightToggleIcon)}),(0,l.jsx)(B,{className:(0,i.Z)($.toggleIcon,$.darkToggleIcon)})]})})}const H=o.memo(U),Z={darkNavbarColorModeToggle:"darkNavbarColorModeToggle_X3D1"};function G(e){let{className:t}=e;const a=(0,v.L)().navbar.style,o=(0,v.L)().colorMode.disableSwitch,{colorMode:i,setColorMode:n}=(0,D.I)();return o?null:(0,l.jsx)(H,{className:t,buttonClassName:"dark"===a?Z.darkNavbarColorModeToggle:void 0,value:i,onChange:n})}var W=a(696811);function V(){return(0,l.jsx)(W.Z,{className:"navbar__brand",imageClassName:"navbar__logo",titleClassName:"navbar__title text--truncate"})}function K(){const e=(0,C.e)();return(0,l.jsx)("button",{type:"button","aria-label":(0,c.I)({id:"theme.docs.sidebar.closeSidebarButtonAriaLabel",message:"Close navigation bar",description:"The ARIA label for close button of mobile sidebar"}),className:"clean-btn navbar-sidebar__close",onClick:()=>e.toggle(),children:(0,l.jsx)(w,{color:"var(--ifm-color-emphasis-600)"})})}function Q(){return(0,l.jsxs)("div",{className:"navbar-sidebar__brand",children:[(0,l.jsx)(V,{}),(0,l.jsx)(G,{className:"margin-right--md"}),(0,l.jsx)(K,{})]})}var Y=a(583699),X=a(779524),J=a(702735),ee=a(161500),te=a(414082);function ae(e){let{activeBasePath:t,activeBaseRegex:a,to:o,href:i,label:n,html:s,isDropdownLink:r,prependBaseUrlToHref:c,...d}=e;const m=(0,X.Z)(o),p=(0,X.Z)(t),u=(0,X.Z)(i,{forcePrependBaseUrl:!0}),b=n&&i&&!(0,J.Z)(i),h=s?{dangerouslySetInnerHTML:{__html:s}}:{children:(0,l.jsxs)(l.Fragment,{children:[n,b&&(0,l.jsx)(te.Z,{...r&&{width:12,height:12}})]})};return i?(0,l.jsx)(Y.Z,{href:c?u:i,...d,...h}):(0,l.jsx)(Y.Z,{to:m,isNavLink:!0,...(t||a)&&{isActive:(e,t)=>a?(0,ee.F)(a,t.pathname):t.pathname.startsWith(p)},...d,...h})}function oe(e){let{className:t,isDropdownItem:a=!1,...o}=e;const n=(0,l.jsx)(ae,{className:(0,i.Z)(a?"dropdown__link":"navbar__item navbar__link",t),isDropdownLink:a,...o});return a?(0,l.jsx)("li",{children:n}):n}function ie(e){let{className:t,isDropdownItem:a,...o}=e;return(0,l.jsx)("li",{className:"menu__list-item",children:(0,l.jsx)(ae,{className:(0,i.Z)("menu__link",t),...o})})}function ne(e){let{mobile:t=!1,position:a,...o}=e;const i=t?ie:oe;return(0,l.jsx)(i,{...o,activeClassName:o.activeClassName??(t?"menu__link--active":"navbar__link--active")})}var se=a(54639),re=a(369003),ce=a(639962);const de={dropdownNavbarItemMobile:"dropdownNavbarItemMobile_S0Fm"};function le(e,t){return e.some((e=>function(e,t){return!!(0,re.Mg)(e.to,t)||!!(0,ee.F)(e.activeBaseRegex,t)||!(!e.activeBasePath||!t.startsWith(e.activeBasePath))}(e,t)))}function me(e){let{items:t,position:a,className:n,onClick:s,...r}=e;const c=(0,o.useRef)(null),[d,m]=(0,o.useState)(!1);return(0,o.useEffect)((()=>{const e=e=>{c.current&&!c.current.contains(e.target)&&m(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("focusin",e),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("focusin",e)}}),[c]),(0,l.jsxs)("div",{ref:c,className:(0,i.Z)("navbar__item","dropdown","dropdown--hoverable",{"dropdown--right":"right"===a,"dropdown--show":d}),children:[(0,l.jsx)(ae,{"aria-haspopup":"true","aria-expanded":d,role:"button",href:r.to?void 0:"#",className:(0,i.Z)("navbar__link",n),...r,onClick:r.to?void 0:e=>e.preventDefault(),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),m(!d))},children:r.children??r.label}),(0,l.jsx)("ul",{className:"dropdown__menu",children:t.map(((e,t)=>(0,o.createElement)(He,{isDropdownItem:!0,activeClassName:"dropdown__link--active",...e,key:t})))})]})}function pe(e){let{items:t,className:a,position:n,onClick:s,...c}=e;const d=function(){const{siteConfig:{baseUrl:e}}=(0,ce.Z)(),{pathname:t}=(0,r.TH)();return t.replace(e,"/")}(),m=le(t,d),{collapsed:p,toggleCollapsed:u,setCollapsed:b}=(0,se.u)({initialState:()=>!m});return(0,o.useEffect)((()=>{m&&b(!m)}),[d,m,b]),(0,l.jsxs)("li",{className:(0,i.Z)("menu__list-item",{"menu__list-item--collapsed":p}),children:[(0,l.jsx)(ae,{role:"button",className:(0,i.Z)(de.dropdownNavbarItemMobile,"menu__link menu__link--sublist menu__link--sublist-caret",a),...c,onClick:e=>{e.preventDefault(),u()},children:c.children??c.label}),(0,l.jsx)(se.z,{lazy:!0,as:"ul",className:"menu__list",collapsed:p,children:t.map(((e,t)=>(0,o.createElement)(He,{mobile:!0,isDropdownItem:!0,onClick:s,activeClassName:"menu__link--active",...e,key:t})))})]})}function ue(e){let{mobile:t=!1,...a}=e;const o=t?pe:me;return(0,l.jsx)(o,{...a})}var be=a(340626);function he(e){let{width:t=20,height:a=20,...o}=e;return(0,l.jsx)("svg",{viewBox:"0 0 24 24",width:t,height:a,"aria-hidden":!0,...o,children:(0,l.jsx)("path",{fill:"currentColor",d:"M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"})})}const ge="iconLanguage_nlXk";function fe(){return o.createElement("svg",{width:"15",height:"15",className:"DocSearch-Control-Key-Icon"},o.createElement("path",{d:"M4.505 4.496h2M5.505 5.496v5M8.216 4.496l.055 5.993M10 7.5c.333.333.5.667.5 1v2M12.326 4.5v5.996M8.384 4.496c1.674 0 2.116 0 2.116 1.5s-.442 1.5-2.116 1.5M3.205 9.303c-.09.448-.277 1.21-1.241 1.203C1 10.5.5 9.513.5 8V7c0-1.57.5-2.5 1.464-2.494.964.006 1.134.598 1.24 1.342M12.553 10.5h1.953",strokeWidth:"1.2",stroke:"currentColor",fill:"none",strokeLinecap:"square"}))}var ye=a(520830),ke=["translations"];function ve(){return ve=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var a=0,o=new Array(t);a=0||(i[a]=e[a]);return i}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(i[a]=e[a])}return i}var xe="Ctrl";var qe=o.forwardRef((function(e,t){var a=e.translations,i=void 0===a?{}:a,n=_e(e,ke),s=i.buttonText,r=void 0===s?"Search":s,c=i.buttonAriaLabel,d=void 0===c?"Search":c,l=Se((0,o.useState)(null),2),m=l[0],p=l[1];return(0,o.useEffect)((function(){"undefined"!=typeof navigator&&(/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?p("\u2318"):p(xe))}),[]),o.createElement("button",ve({type:"button",className:"DocSearch DocSearch-Button","aria-label":d},n,{ref:t}),o.createElement("span",{className:"DocSearch-Button-Container"},o.createElement(ye.W,null),o.createElement("span",{className:"DocSearch-Button-Placeholder"},r)),o.createElement("span",{className:"DocSearch-Button-Keys"},null!==m&&o.createElement(o.Fragment,null,o.createElement("kbd",{className:"DocSearch-Button-Key"},m===xe?o.createElement(fe,null):m),o.createElement("kbd",{className:"DocSearch-Button-Key"},"K"))))})),je=a(631514),ze=a(935358),Ee=a(702327),Ce=a(660246);var Te=a(973935);const Ae={button:{buttonText:(0,c.I)({id:"theme.SearchBar.label",message:"Search",description:"The ARIA label and placeholder for search button"}),buttonAriaLabel:(0,c.I)({id:"theme.SearchBar.label",message:"Search",description:"The ARIA label and placeholder for search button"})},modal:{searchBox:{resetButtonTitle:(0,c.I)({id:"theme.SearchModal.searchBox.resetButtonTitle",message:"Clear the query",description:"The label and ARIA label for search box reset button"}),resetButtonAriaLabel:(0,c.I)({id:"theme.SearchModal.searchBox.resetButtonTitle",message:"Clear the query",description:"The label and ARIA label for search box reset button"}),cancelButtonText:(0,c.I)({id:"theme.SearchModal.searchBox.cancelButtonText",message:"Cancel",description:"The label and ARIA label for search box cancel button"}),cancelButtonAriaLabel:(0,c.I)({id:"theme.SearchModal.searchBox.cancelButtonText",message:"Cancel",description:"The label and ARIA label for search box cancel button"})},startScreen:{recentSearchesTitle:(0,c.I)({id:"theme.SearchModal.startScreen.recentSearchesTitle",message:"Recent",description:"The title for recent searches"}),noRecentSearchesText:(0,c.I)({id:"theme.SearchModal.startScreen.noRecentSearchesText",message:"No recent searches",description:"The text when no recent searches"}),saveRecentSearchButtonTitle:(0,c.I)({id:"theme.SearchModal.startScreen.saveRecentSearchButtonTitle",message:"Save this search",description:"The label for save recent search button"}),removeRecentSearchButtonTitle:(0,c.I)({id:"theme.SearchModal.startScreen.removeRecentSearchButtonTitle",message:"Remove this search from history",description:"The label for remove recent search button"}),favoriteSearchesTitle:(0,c.I)({id:"theme.SearchModal.startScreen.favoriteSearchesTitle",message:"Favorite",description:"The title for favorite searches"}),removeFavoriteSearchButtonTitle:(0,c.I)({id:"theme.SearchModal.startScreen.removeFavoriteSearchButtonTitle",message:"Remove this search from favorites",description:"The label for remove favorite search button"})},errorScreen:{titleText:(0,c.I)({id:"theme.SearchModal.errorScreen.titleText",message:"Unable to fetch results",description:"The title for error screen of search modal"}),helpText:(0,c.I)({id:"theme.SearchModal.errorScreen.helpText",message:"You might want to check your network connection.",description:"The help text for error screen of search modal"})},footer:{selectText:(0,c.I)({id:"theme.SearchModal.footer.selectText",message:"to select",description:"The explanatory text of the action for the enter key"}),selectKeyAriaLabel:(0,c.I)({id:"theme.SearchModal.footer.selectKeyAriaLabel",message:"Enter key",description:"The ARIA label for the Enter key button that makes the selection"}),navigateText:(0,c.I)({id:"theme.SearchModal.footer.navigateText",message:"to navigate",description:"The explanatory text of the action for the Arrow up and Arrow down key"}),navigateUpKeyAriaLabel:(0,c.I)({id:"theme.SearchModal.footer.navigateUpKeyAriaLabel",message:"Arrow up",description:"The ARIA label for the Arrow up key button that makes the navigation"}),navigateDownKeyAriaLabel:(0,c.I)({id:"theme.SearchModal.footer.navigateDownKeyAriaLabel",message:"Arrow down",description:"The ARIA label for the Arrow down key button that makes the navigation"}),closeText:(0,c.I)({id:"theme.SearchModal.footer.closeText",message:"to close",description:"The explanatory text of the action for Escape key"}),closeKeyAriaLabel:(0,c.I)({id:"theme.SearchModal.footer.closeKeyAriaLabel",message:"Escape key",description:"The ARIA label for the Escape key button that close the modal"}),searchByText:(0,c.I)({id:"theme.SearchModal.footer.searchByText",message:"Search by",description:"The text explain that the search is making by Algolia"})},noResultsScreen:{noResultsText:(0,c.I)({id:"theme.SearchModal.noResultsScreen.noResultsText",message:"No results for",description:"The text explains that there are no results for the following search"}),suggestedQueryText:(0,c.I)({id:"theme.SearchModal.noResultsScreen.suggestedQueryText",message:"Try searching for",description:"The text for the suggested query when no results are found for the following search"}),reportMissingResultsText:(0,c.I)({id:"theme.SearchModal.noResultsScreen.reportMissingResultsText",message:"Believe this query should return results?",description:"The text for the question where the user thinks there are missing results"}),reportMissingResultsLinkText:(0,c.I)({id:"theme.SearchModal.noResultsScreen.reportMissingResultsLinkText",message:"Let us know.",description:"The text for the link to report missing results"})}},placeholder:(0,c.I)({id:"theme.SearchModal.placeholder",message:"Search docs",description:"The placeholder of the input of the DocSearch pop-up modal"})};let Le=null;function Re(e){let{hit:t,children:a}=e;return(0,l.jsx)(Y.Z,{to:t.url,children:a})}function Ne(e){let{state:t,onClose:a}=e;const o=(0,ze.M)();return(0,l.jsx)(Y.Z,{to:o(t.query),onClick:a,children:(0,l.jsx)(c.Z,{id:"theme.SearchBar.seeAll",values:{count:t.context.nbHits},children:"See all {count} results"})})}function Pe(e){let{contextualSearch:t,externalUrlRegex:i,...n}=e;const{siteMetadata:s}=(0,ce.Z)(),c=(0,Ee.l)(),d=function(){const{locale:e,tags:t}=(0,Ce._q)();return[`language:${e}`,t.map((e=>`docusaurus_tag:${e}`))]}(),m=n.searchParameters?.facetFilters??[],p=t?function(e,t){const a=e=>"string"==typeof e?[e]:e;return[...a(e),...a(t)]}(d,m):m,u={...n.searchParameters,facetFilters:p},b=(0,r.k6)(),h=(0,o.useRef)(null),g=(0,o.useRef)(null),[f,y]=(0,o.useState)(!1),[k,v]=(0,o.useState)(void 0),S=(0,o.useCallback)((()=>Le?Promise.resolve():Promise.all([a.e(61426).then(a.bind(a,661426)),Promise.all([a.e(40532),a.e(46945)]).then(a.bind(a,146945)),Promise.all([a.e(40532),a.e(12153)]).then(a.bind(a,912153))]).then((e=>{let[{DocSearchModal:t}]=e;Le=t}))),[]),w=(0,o.useCallback)((()=>{S().then((()=>{h.current=document.createElement("div"),document.body.insertBefore(h.current,document.body.firstChild),y(!0)}))}),[S,y]),_=(0,o.useCallback)((()=>{y(!1),h.current?.remove()}),[y]),x=(0,o.useCallback)((e=>{S().then((()=>{y(!0),v(e.key)}))}),[S,y,v]),q=(0,o.useRef)({navigate(e){let{itemUrl:t}=e;(0,ee.F)(i,t)?window.location.href=t:b.push(t)}}).current,j=(0,o.useRef)((e=>n.transformItems?n.transformItems(e):e.map((e=>({...e,url:c(e.url)}))))).current,z=(0,o.useMemo)((()=>e=>(0,l.jsx)(Ne,{...e,onClose:_})),[_]),E=(0,o.useCallback)((e=>(e.addAlgoliaAgent("docusaurus",s.docusaurusVersion),e)),[s.docusaurusVersion]);return function(e){var t=e.isOpen,a=e.onOpen,i=e.onClose,n=e.onInput,s=e.searchButtonRef;o.useEffect((function(){function e(e){var o;(27===e.keyCode&&t||"k"===(null===(o=e.key)||void 0===o?void 0:o.toLowerCase())&&(e.metaKey||e.ctrlKey)||!function(e){var t=e.target,a=t.tagName;return t.isContentEditable||"INPUT"===a||"SELECT"===a||"TEXTAREA"===a}(e)&&"/"===e.key&&!t)&&(e.preventDefault(),t?i():document.body.classList.contains("DocSearch--active")||document.body.classList.contains("DocSearch--active")||a()),s&&s.current===document.activeElement&&n&&/[a-zA-Z0-9]/.test(String.fromCharCode(e.keyCode))&&n(e)}return window.addEventListener("keydown",e),function(){window.removeEventListener("keydown",e)}}),[t,a,i,n,s])}({isOpen:f,onOpen:w,onClose:_,onInput:x,searchButtonRef:g}),(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(je.Z,{children:(0,l.jsx)("link",{rel:"preconnect",href:`https://${n.appId}-dsn.algolia.net`,crossOrigin:"anonymous"})}),(0,l.jsx)(qe,{onTouchStart:S,onFocus:S,onMouseOver:S,onClick:w,ref:g,translations:Ae.button}),f&&Le&&h.current&&(0,Te.createPortal)((0,l.jsx)(Le,{onClose:_,initialScrollY:window.scrollY,initialQuery:k,navigator:q,transformItems:j,hitComponent:Re,transformSearchClient:E,...n.searchPagePath&&{resultsFooterComponent:z},...n,searchParameters:u,placeholder:Ae.placeholder,translations:Ae.modal}),h.current)]})}function Oe(){const{siteConfig:e}=(0,ce.Z)();return(0,l.jsx)(Pe,{...e.themeConfig.algolia})}const Ie={navbarSearchContainer:"navbarSearchContainer_Bca1"};function De(e){let{children:t,className:a}=e;return(0,l.jsx)("div",{className:(0,i.Z)(a,Ie.navbarSearchContainer),children:t})}var Me=a(189871),Fe=a(903734);var Be=a(186409);const $e=e=>e.docs.find((t=>t.id===e.mainDocId));const Ue={default:ne,localeDropdown:function(e){let{mobile:t,dropdownItemsBefore:a,dropdownItemsAfter:o,queryString:i="",...n}=e;const{i18n:{currentLocale:s,locales:d,localeConfigs:m}}=(0,ce.Z)(),p=(0,be.l)(),{search:u,hash:b}=(0,r.TH)(),h=[...a,...d.map((e=>{const a=`${`pathname://${p.createUrl({locale:e,fullyQualified:!1})}`}${u}${b}${i}`;return{label:m[e].label,lang:m[e].htmlLang,to:a,target:"_self",autoAddBaseUrl:!1,className:e===s?t?"menu__link--active":"dropdown__link--active":""}})),...o],g=t?(0,c.I)({message:"Languages",id:"theme.navbar.mobileLanguageDropdown.label",description:"The label for the mobile language switcher dropdown"}):m[s].label;return(0,l.jsx)(ue,{...n,mobile:t,label:(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(he,{className:ge}),g]}),items:h})},search:function(e){let{mobile:t,className:a}=e;return t?null:(0,l.jsx)(De,{className:a,children:(0,l.jsx)(Oe,{})})},dropdown:ue,html:function(e){let{value:t,className:a,mobile:o=!1,isDropdownItem:n=!1}=e;const s=n?"li":"div";return(0,l.jsx)(s,{className:(0,i.Z)({navbar__item:!o&&!n,"menu__list-item":o},a),dangerouslySetInnerHTML:{__html:t}})},doc:function(e){let{docId:t,label:a,docsPluginId:o,...i}=e;const{activeDoc:n}=(0,Me.Iw)(o),s=(0,Fe.vY)(t,o),r=n?.path===s?.path;return null===s||s.unlisted&&!r?null:(0,l.jsx)(ne,{exact:!0,...i,isActive:()=>r||!!n?.sidebar&&n.sidebar===s.sidebar,label:a??s.id,to:s.path})},docSidebar:function(e){let{sidebarId:t,label:a,docsPluginId:o,...i}=e;const{activeDoc:n}=(0,Me.Iw)(o),s=(0,Fe.oz)(t,o).link;if(!s)throw new Error(`DocSidebarNavbarItem: Sidebar with ID "${t}" doesn't have anything to be linked to.`);return(0,l.jsx)(ne,{exact:!0,...i,isActive:()=>n?.sidebar===t,label:a??s.label,to:s.path})},docsVersion:function(e){let{label:t,to:a,docsPluginId:o,...i}=e;const n=(0,Fe.lO)(o)[0],s=t??n.label,r=a??(e=>e.docs.find((t=>t.id===e.mainDocId)))(n).path;return(0,l.jsx)(ne,{...i,label:s,to:r})},docsVersionDropdown:function(e){let{mobile:t,docsPluginId:a,dropdownActiveClassDisabled:o,dropdownItemsBefore:i,dropdownItemsAfter:n,...s}=e;const{search:d,hash:m}=(0,r.TH)(),p=(0,Me.Iw)(a),u=(0,Me.gB)(a),{savePreferredVersionName:b}=(0,Be.J)(a),h=[...i,...u.map((e=>{const t=p.alternateDocVersions[e.name]??$e(e);return{label:e.label,to:`${t.path}${d}${m}`,isActive:()=>e===p.activeVersion,onClick:()=>b(e.name)}})),...n],g=(0,Fe.lO)(a)[0],f=t&&h.length>1?(0,c.I)({id:"theme.navbar.mobileVersionsDropdown.label",message:"Versions",description:"The label for the navbar versions dropdown on mobile view"}):g.label,y=t&&h.length>1?void 0:$e(g).path;return h.length<=1?(0,l.jsx)(ne,{...s,mobile:t,label:f,to:y,isActive:o?()=>!1:void 0}):(0,l.jsx)(ue,{...s,mobile:t,label:f,to:y,items:h,isActive:o?()=>!1:void 0})}};function He(e){let{type:t,...a}=e;const o=function(e,t){return e&&"default"!==e?e:"items"in t?"dropdown":"default"}(t,a),i=Ue[o];if(!i)throw new Error(`No NavbarItem component found for type "${t}".`);return(0,l.jsx)(i,{...a})}function Ze(){const e=(0,C.e)(),t=(0,v.L)().navbar.items;return(0,l.jsx)("ul",{className:"menu__list",children:t.map(((t,a)=>(0,o.createElement)(He,{mobile:!0,...t,onClick:()=>e.toggle(),key:a})))})}function Ge(e){return(0,l.jsx)("button",{...e,type:"button",className:"clean-btn navbar-sidebar__back",children:(0,l.jsx)(c.Z,{id:"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel",description:"The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)",children:"\u2190 Back to main menu"})})}function We(){const e=0===(0,v.L)().navbar.items.length,t=O();return(0,l.jsxs)(l.Fragment,{children:[!e&&(0,l.jsx)(Ge,{onClick:()=>t.hide()}),t.content]})}function Ve(){const e=(0,C.e)();var t;return void 0===(t=e.shown)&&(t=!0),(0,o.useEffect)((()=>(document.body.style.overflow=t?"hidden":"visible",()=>{document.body.style.overflow="visible"})),[t]),e.shouldRender?(0,l.jsx)(I,{header:(0,l.jsx)(Q,{}),primaryMenu:(0,l.jsx)(Ze,{}),secondaryMenu:(0,l.jsx)(We,{})}):null}const Ke={navbarHideable:"navbarHideable_m1mJ",navbarHidden:"navbarHidden_jGov"};function Qe(e){return(0,l.jsx)("div",{role:"presentation",...e,className:(0,i.Z)("navbar-sidebar__backdrop",e.className)})}function Ye(e){let{children:t}=e;const{navbar:{hideOnScroll:a,style:n}}=(0,v.L)(),s=(0,C.e)(),{navbarRef:r,isNavbarVisible:m}=function(e){const[t,a]=(0,o.useState)(e),i=(0,o.useRef)(!1),n=(0,o.useRef)(0),s=(0,o.useCallback)((e=>{null!==e&&(n.current=e.getBoundingClientRect().height)}),[]);return(0,T.RF)(((t,o)=>{let{scrollY:s}=t;if(!e)return;if(s=r?a(!1):s+d{if(!e)return;const o=t.location.hash;if(o?document.getElementById(o.substring(1)):void 0)return i.current=!0,void a(!1);a(!0)})),{navbarRef:s,isNavbarVisible:t}}(a);return(0,l.jsxs)("nav",{ref:r,"aria-label":(0,c.I)({id:"theme.NavBar.navAriaLabel",message:"Main",description:"The ARIA label for the main navigation"}),className:(0,i.Z)("navbar","navbar--fixed-top",a&&[Ke.navbarHideable,!m&&Ke.navbarHidden],{"navbar--dark":"dark"===n,"navbar--primary":"primary"===n,"navbar-sidebar--show":s.shown}),children:[t,(0,l.jsx)(Qe,{onClick:s.toggle}),(0,l.jsx)(Ve,{})]})}var Xe=a(963905);const Je={errorBoundaryError:"errorBoundaryError_a6uf",errorBoundaryFallback:"errorBoundaryFallback_VBag"};function et(e){return(0,l.jsx)("button",{type:"button",...e,children:(0,l.jsx)(c.Z,{id:"theme.ErrorPageContent.tryAgain",description:"The label of the button to try again rendering when the React error boundary captures an error",children:"Try again"})})}function tt(e){let{error:t}=e;const a=(0,Xe.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,l.jsx)("p",{className:Je.errorBoundaryError,children:a})}class at extends o.Component{componentDidCatch(e,t){throw this.props.onError(e,t)}render(){return this.props.children}}const ot="right";function it(e){let{width:t=30,height:a=30,className:o,...i}=e;return(0,l.jsx)("svg",{className:o,width:t,height:a,viewBox:"0 0 30 30","aria-hidden":"true",...i,children:(0,l.jsx)("path",{stroke:"currentColor",strokeLinecap:"round",strokeMiterlimit:"10",strokeWidth:"2",d:"M4 7h22M4 15h22M4 23h22"})})}function nt(){const{toggle:e,shown:t}=(0,C.e)();return(0,l.jsx)("button",{onClick:e,"aria-label":(0,c.I)({id:"theme.docs.sidebar.toggleSidebarButtonAriaLabel",message:"Toggle navigation bar",description:"The ARIA label for hamburger menu button of mobile navigation"}),"aria-expanded":t,className:"navbar__toggle clean-btn",type:"button",children:(0,l.jsx)(it,{})})}const st={colorModeToggle:"colorModeToggle_DEke"};function rt(e){let{items:t}=e;return(0,l.jsx)(l.Fragment,{children:t.map(((e,t)=>(0,l.jsx)(at,{onError:t=>new Error(`A theme navbar item failed to render.\nPlease double-check the following navbar item (themeConfig.navbar.items) of your Docusaurus config:\n${JSON.stringify(e,null,2)}`,{cause:t}),children:(0,l.jsx)(He,{...e})},t)))})}function ct(e){let{left:t,right:a}=e;return(0,l.jsxs)("div",{className:"navbar__inner",children:[(0,l.jsx)("div",{className:"navbar__items",children:t}),(0,l.jsx)("div",{className:"navbar__items navbar__items--right",children:a})]})}function dt(){const e=(0,C.e)(),t=(0,v.L)().navbar.items,[a,o]=function(e){function t(e){return"left"===(e.position??ot)}return[e.filter(t),e.filter((e=>!t(e)))]}(t),i=t.find((e=>"search"===e.type));return(0,l.jsx)(ct,{left:(0,l.jsxs)(l.Fragment,{children:[!e.disabled&&(0,l.jsx)(nt,{}),(0,l.jsx)(V,{}),(0,l.jsx)(rt,{items:a})]}),right:(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(rt,{items:o}),(0,l.jsx)(G,{className:st.colorModeToggle}),!i&&(0,l.jsx)(De,{children:(0,l.jsx)(Oe,{})})]})})}function lt(){return(0,l.jsx)(Ye,{children:(0,l.jsx)(dt,{})})}function mt(e){let{item:t}=e;const{to:a,href:o,label:i,prependBaseUrlToHref:n,...s}=t,r=(0,X.Z)(a),c=(0,X.Z)(o,{forcePrependBaseUrl:!0});return(0,l.jsxs)(Y.Z,{className:"footer__link-item",...o?{href:n?c:o}:{to:r},...s,children:[i,o&&!(0,J.Z)(o)&&(0,l.jsx)(te.Z,{})]})}function pt(e){let{item:t}=e;return t.html?(0,l.jsx)("li",{className:"footer__item",dangerouslySetInnerHTML:{__html:t.html}}):(0,l.jsx)("li",{className:"footer__item",children:(0,l.jsx)(mt,{item:t})},t.href??t.to)}function ut(e){let{column:t}=e;return(0,l.jsxs)("div",{className:"col footer__col",children:[(0,l.jsx)("div",{className:"footer__title",children:t.title}),(0,l.jsx)("ul",{className:"footer__items clean-list",children:t.items.map(((e,t)=>(0,l.jsx)(pt,{item:e},t)))})]})}function bt(e){let{columns:t}=e;return(0,l.jsx)("div",{className:"row footer__links",children:t.map(((e,t)=>(0,l.jsx)(ut,{column:e},t)))})}function ht(){return(0,l.jsx)("span",{className:"footer__link-separator",children:"\xb7"})}function gt(e){let{item:t}=e;return t.html?(0,l.jsx)("span",{className:"footer__link-item",dangerouslySetInnerHTML:{__html:t.html}}):(0,l.jsx)(mt,{item:t})}function ft(e){let{links:t}=e;return(0,l.jsx)("div",{className:"footer__links text--center",children:(0,l.jsx)("div",{className:"footer__links",children:t.map(((e,a)=>(0,l.jsxs)(o.Fragment,{children:[(0,l.jsx)(gt,{item:e}),t.length!==a+1&&(0,l.jsx)(ht,{})]},a)))})})}function yt(e){let{links:t}=e;return function(e){return"title"in e[0]}(t)?(0,l.jsx)(bt,{columns:t}):(0,l.jsx)(ft,{links:t})}var kt=a(754277);const vt={footerLogoLink:"footerLogoLink_BH7S"};function St(e){let{logo:t}=e;const{withBaseUrl:a}=(0,X.C)(),o={light:a(t.src),dark:a(t.srcDark??t.src)};return(0,l.jsx)(kt.Z,{className:(0,i.Z)("footer__logo",t.className),alt:t.alt,sources:o,width:t.width,height:t.height,style:t.style})}function wt(e){let{logo:t}=e;return t.href?(0,l.jsx)(Y.Z,{href:t.href,className:vt.footerLogoLink,target:t.target,children:(0,l.jsx)(St,{logo:t})}):(0,l.jsx)(St,{logo:t})}function _t(e){let{copyright:t}=e;return(0,l.jsx)("div",{className:"footer__copyright",dangerouslySetInnerHTML:{__html:t}})}function xt(e){let{style:t,links:a,logo:o,copyright:n}=e;return(0,l.jsx)("footer",{className:(0,i.Z)("footer",{"footer--dark":"dark"===t}),children:(0,l.jsxs)("div",{className:"container container-fluid",children:[a,(o||n)&&(0,l.jsxs)("div",{className:"footer__bottom text--center",children:[o&&(0,l.jsx)("div",{className:"margin-bottom--sm",children:o}),n]})]})})}function qt(){const{footer:e}=(0,v.L)();if(!e)return null;const{copyright:t,links:a,logo:o,style:i}=e;return(0,l.jsx)(xt,{style:i,links:a&&a.length>0&&(0,l.jsx)(yt,{links:a}),logo:o&&(0,l.jsx)(wt,{logo:o}),copyright:t&&(0,l.jsx)(_t,{copyright:t})})}const jt=o.memo(qt),zt=(0,A.Qc)([D.S,S.pl,T.OC,Be.L5,s.VC,function(e){let{children:t}=e;return(0,l.jsx)(L.n2,{children:(0,l.jsx)(C.M,{children:(0,l.jsx)(N,{children:t})})})}]);function Et(e){let{children:t}=e;return(0,l.jsx)(zt,{children:t})}var Ct=a(513899);function Tt(e){let{error:t,tryAgain:a}=e;return(0,l.jsx)("main",{className:"container margin-vert--xl",children:(0,l.jsx)("div",{className:"row",children:(0,l.jsxs)("div",{className:"col col--6 col--offset-3",children:[(0,l.jsx)(Ct.Z,{as:"h1",className:"hero__title",children:(0,l.jsx)(c.Z,{id:"theme.ErrorPageContent.title",description:"The title of the fallback page when the page crashed",children:"This page crashed."})}),(0,l.jsx)("div",{className:"margin-vert--lg",children:(0,l.jsx)(et,{onClick:a,className:"button button--primary shadow--lw"})}),(0,l.jsx)("hr",{}),(0,l.jsx)("div",{className:"margin-vert--md",children:(0,l.jsx)(tt,{error:t})})]})})})}const At={mainWrapper:"mainWrapper_z2l0"};function Lt(e){const{children:t,noFooter:a,wrapperClassName:o,title:r,description:c}=e;return(0,f.t)(),(0,l.jsxs)(Et,{children:[(0,l.jsx)(s.d,{title:r,description:c}),(0,l.jsx)(k,{}),(0,l.jsx)(E,{}),(0,l.jsx)(lt,{}),(0,l.jsx)("div",{id:m,className:(0,i.Z)(g.k.wrapper.main,At.mainWrapper,o),children:(0,l.jsx)(n.Z,{fallback:e=>(0,l.jsx)(Tt,{...e}),children:t})}),!a&&(0,l.jsx)(jt,{})]})}},696811:(e,t,a)=>{"use strict";a.d(t,{Z:()=>l});a(667294);var o=a(583699),i=a(779524),n=a(639962),s=a(820107),r=a(754277),c=a(785893);function d(e){let{logo:t,alt:a,imageClassName:o}=e;const n={light:(0,i.Z)(t.src),dark:(0,i.Z)(t.srcDark||t.src)},s=(0,c.jsx)(r.Z,{className:t.className,sources:n,height:t.height,width:t.width,alt:a,style:t.style});return o?(0,c.jsx)("div",{className:o,children:s}):s}function l(e){const{siteConfig:{title:t}}=(0,n.Z)(),{navbar:{title:a,logo:r}}=(0,s.L)(),{imageClassName:l,titleClassName:m,...p}=e,u=(0,i.Z)(r?.href||"/"),b=a?"":t,h=r?.alt??b;return(0,c.jsxs)(o.Z,{to:u,...p,...r?.target&&{target:r.target},children:[r&&(0,c.jsx)(d,{logo:r,alt:h,imageClassName:l}),null!=a&&(0,c.jsx)("b",{className:m,children:a})]})}},433647:(e,t,a)=>{"use strict";a.d(t,{Z:()=>n});a(667294);var o=a(631514),i=a(785893);function n(e){let{locale:t,version:a,tag:n}=e;const s=t;return(0,i.jsxs)(o.Z,{children:[t&&(0,i.jsx)("meta",{name:"docusaurus_locale",content:t}),a&&(0,i.jsx)("meta",{name:"docusaurus_version",content:a}),n&&(0,i.jsx)("meta",{name:"docusaurus_tag",content:n}),s&&(0,i.jsx)("meta",{name:"docsearch:language",content:s}),a&&(0,i.jsx)("meta",{name:"docsearch:version",content:a}),n&&(0,i.jsx)("meta",{name:"docsearch:docusaurus_tag",content:n})]})}},754277:(e,t,a)=>{"use strict";a.d(t,{Z:()=>l});var o=a(667294),i=a(490512),n=a(51048),s=a(309200);const r={themedComponent:"themedComponent_mlkZ","themedComponent--light":"themedComponent--light_NVdE","themedComponent--dark":"themedComponent--dark_xIcU"};var c=a(785893);function d(e){let{className:t,children:a}=e;const d=(0,n.Z)(),{colorMode:l}=(0,s.I)();return(0,c.jsx)(c.Fragment,{children:(d?"dark"===l?["dark"]:["light"]:["light","dark"]).map((e=>{const n=a({theme:e,className:(0,i.Z)(t,r.themedComponent,r[`themedComponent--${e}`])});return(0,c.jsx)(o.Fragment,{children:n},e)}))})}function l(e){const{sources:t,className:a,alt:o,...i}=e;return(0,c.jsx)(d,{className:a,children:e=>{let{theme:a,className:n}=e;return(0,c.jsx)("img",{src:t[a],alt:o,className:n,...i})}})}},54639:(e,t,a)=>{"use strict";a.d(t,{u:()=>d,z:()=>f});var o=a(667294),i=a(836136),n=a(81270),s=a(558986),r=a(785893);const c="ease-in-out";function d(e){let{initialState:t}=e;const[a,i]=(0,o.useState)(t??!1),n=(0,o.useCallback)((()=>{i((e=>!e))}),[]);return{collapsed:a,setCollapsed:i,toggleCollapsed:n}}const l={display:"none",overflow:"hidden",height:"0px"},m={display:"block",overflow:"visible",height:"auto"};function p(e,t){const a=t?l:m;e.style.display=a.display,e.style.overflow=a.overflow,e.style.height=a.height}function u(e){let{collapsibleRef:t,collapsed:a,animation:i}=e;const n=(0,o.useRef)(!1);(0,o.useEffect)((()=>{const e=t.current;function o(){const t=e.scrollHeight,a=i?.duration??function(e){if((0,s.n)())return 1;const t=e/36;return Math.round(10*(4+15*t**.25+t/5))}(t);return{transition:`height ${a}ms ${i?.easing??c}`,height:`${t}px`}}function r(){const t=o();e.style.transition=t.transition,e.style.height=t.height}if(!n.current)return p(e,a),void(n.current=!0);return e.style.willChange="height",function(){const t=requestAnimationFrame((()=>{a?(r(),requestAnimationFrame((()=>{e.style.height=l.height,e.style.overflow=l.overflow}))):(e.style.display="block",requestAnimationFrame((()=>{r()})))}));return()=>cancelAnimationFrame(t)}()}),[t,a,i])}function b(e){if(!i.Z.canUseDOM)return e?l:m}function h(e){let{as:t="div",collapsed:a,children:i,animation:n,onCollapseTransitionEnd:s,className:c,disableSSRStyle:d}=e;const l=(0,o.useRef)(null);return u({collapsibleRef:l,collapsed:a,animation:n}),(0,r.jsx)(t,{ref:l,style:d?void 0:b(a),onTransitionEnd:e=>{"height"===e.propertyName&&(p(l.current,a),s?.(a))},className:c,children:i})}function g(e){let{collapsed:t,...a}=e;const[i,s]=(0,o.useState)(!t),[c,d]=(0,o.useState)(t);return(0,n.Z)((()=>{t||s(!0)}),[t]),(0,n.Z)((()=>{i&&d(t)}),[i,t]),i?(0,r.jsx)(h,{...a,collapsed:c}):null}function f(e){let{lazy:t,...a}=e;const o=t?g:h;return(0,r.jsx)(o,{...a})}},65830:(e,t,a)=>{"use strict";a.d(t,{nT:()=>h,pl:()=>b});var o=a(667294),i=a(51048),n=a(192560),s=a(943768),r=a(820107),c=a(785893);const d=(0,n.WA)("docusaurus.announcement.dismiss"),l=(0,n.WA)("docusaurus.announcement.id"),m=()=>"true"===d.get(),p=e=>d.set(String(e)),u=o.createContext(null);function b(e){let{children:t}=e;const a=function(){const{announcementBar:e}=(0,r.L)(),t=(0,i.Z)(),[a,n]=(0,o.useState)((()=>!!t&&m()));(0,o.useEffect)((()=>{n(m())}),[]);const s=(0,o.useCallback)((()=>{p(!0),n(!0)}),[]);return(0,o.useEffect)((()=>{if(!e)return;const{id:t}=e;let a=l.get();"annoucement-bar"===a&&(a="announcement-bar");const o=t!==a;l.set(t),o&&p(!1),!o&&m()||n(!1)}),[e]),(0,o.useMemo)((()=>({isActive:!!e&&!a,close:s})),[e,a,s])}();return(0,c.jsx)(u.Provider,{value:a,children:t})}function h(){const e=(0,o.useContext)(u);if(!e)throw new s.i6("AnnouncementBarProvider");return e}},309200:(e,t,a)=>{"use strict";a.d(t,{I:()=>f,S:()=>g});var o=a(667294),i=a(836136),n=a(943768),s=a(192560),r=a(820107),c=a(785893);const d=o.createContext(void 0),l="theme",m=(0,s.WA)(l),p={light:"light",dark:"dark"},u=e=>e===p.dark?p.dark:p.light,b=e=>i.Z.canUseDOM?u(document.documentElement.getAttribute("data-theme")):u(e),h=e=>{m.set(u(e))};function g(e){let{children:t}=e;const a=function(){const{colorMode:{defaultMode:e,disableSwitch:t,respectPrefersColorScheme:a}}=(0,r.L)(),[i,n]=(0,o.useState)(b(e));(0,o.useEffect)((()=>{t&&m.del()}),[t]);const s=(0,o.useCallback)((function(t,o){void 0===o&&(o={});const{persist:i=!0}=o;t?(n(t),i&&h(t)):(n(a?window.matchMedia("(prefers-color-scheme: dark)").matches?p.dark:p.light:e),m.del())}),[a,e]);(0,o.useEffect)((()=>{document.documentElement.setAttribute("data-theme",u(i))}),[i]),(0,o.useEffect)((()=>{if(t)return;const e=e=>{if(e.key!==l)return;const t=m.get();null!==t&&s(u(t))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)}),[t,s]);const c=(0,o.useRef)(!1);return(0,o.useEffect)((()=>{if(t&&!a)return;const e=window.matchMedia("(prefers-color-scheme: dark)"),o=()=>{window.matchMedia("print").matches||c.current?c.current=window.matchMedia("print").matches:s(null)};return e.addListener(o),()=>e.removeListener(o)}),[s,t,a]),(0,o.useMemo)((()=>({colorMode:i,setColorMode:s,get isDarkTheme(){return i===p.dark},setLightTheme(){s(p.light)},setDarkTheme(){s(p.dark)}})),[i,s])}();return(0,c.jsx)(d.Provider,{value:a,children:t})}function f(){const e=(0,o.useContext)(d);if(null==e)throw new n.i6("ColorModeProvider","Please see https://docusaurus.io/docs/api/themes/configuration#use-color-mode.");return e}},186409:(e,t,a)=>{"use strict";a.d(t,{J:()=>k,L5:()=>f,Oh:()=>v});var o=a(667294),i=a(189871),n=a(506875),s=a(820107),r=a(903734),c=a(943768),d=a(192560),l=a(785893);const m=e=>`docs-preferred-version-${e}`,p={save:(e,t,a)=>{(0,d.WA)(m(e),{persistence:t}).set(a)},read:(e,t)=>(0,d.WA)(m(e),{persistence:t}).get(),clear:(e,t)=>{(0,d.WA)(m(e),{persistence:t}).del()}},u=e=>Object.fromEntries(e.map((e=>[e,{preferredVersionName:null}])));const b=o.createContext(null);function h(){const e=(0,i._r)(),t=(0,s.L)().docs.versionPersistence,a=(0,o.useMemo)((()=>Object.keys(e)),[e]),[n,r]=(0,o.useState)((()=>u(a)));(0,o.useEffect)((()=>{r(function(e){let{pluginIds:t,versionPersistence:a,allDocsData:o}=e;function i(e){const t=p.read(e,a);return o[e].versions.some((e=>e.name===t))?{preferredVersionName:t}:(p.clear(e,a),{preferredVersionName:null})}return Object.fromEntries(t.map((e=>[e,i(e)])))}({allDocsData:e,versionPersistence:t,pluginIds:a}))}),[e,t,a]);return[n,(0,o.useMemo)((()=>({savePreferredVersion:function(e,a){p.save(e,t,a),r((t=>({...t,[e]:{preferredVersionName:a}})))}})),[t])]}function g(e){let{children:t}=e;const a=h();return(0,l.jsx)(b.Provider,{value:a,children:t})}function f(e){let{children:t}=e;return r.cE?(0,l.jsx)(g,{children:t}):(0,l.jsx)(l.Fragment,{children:t})}function y(){const e=(0,o.useContext)(b);if(!e)throw new c.i6("DocsPreferredVersionContextProvider");return e}function k(e){void 0===e&&(e=n.m);const t=(0,i.zh)(e),[a,s]=y(),{preferredVersionName:r}=a[e];return{preferredVersion:t.versions.find((e=>e.name===r))??null,savePreferredVersionName:(0,o.useCallback)((t=>{s.savePreferredVersion(e,t)}),[s,e])}}function v(){const e=(0,i._r)(),[t]=y();function a(a){const o=e[a],{preferredVersionName:i}=t[a];return o.versions.find((e=>e.name===i))??null}const o=Object.keys(e);return Object.fromEntries(o.map((e=>[e,a(e)])))}},784432:(e,t,a)=>{"use strict";a.d(t,{V:()=>d,b:()=>c});var o=a(667294),i=a(943768),n=a(785893);const s=Symbol("EmptyContext"),r=o.createContext(s);function c(e){let{children:t,name:a,items:i}=e;const s=(0,o.useMemo)((()=>a&&i?{name:a,items:i}:null),[a,i]);return(0,n.jsx)(r.Provider,{value:s,children:t})}function d(){const e=(0,o.useContext)(r);if(e===s)throw new i.i6("DocsSidebarProvider");return e}},58801:(e,t,a)=>{"use strict";a.d(t,{E:()=>c,q:()=>r});var o=a(667294),i=a(943768),n=a(785893);const s=o.createContext(null);function r(e){let{children:t,version:a}=e;return(0,n.jsx)(s.Provider,{value:a,children:t})}function c(){const e=(0,o.useContext)(s);if(null===e)throw new i.i6("DocsVersionProvider");return e}},560735:(e,t,a)=>{"use strict";a.d(t,{M:()=>p,e:()=>u});var o=a(667294),i=a(753086),n=a(113488),s=a(275238),r=a(820107),c=a(943768),d=a(785893);const l=o.createContext(void 0);function m(){const e=function(){const e=(0,i.HY)(),{items:t}=(0,r.L)().navbar;return 0===t.length&&!e.component}(),t=(0,n.i)(),a=!e&&"mobile"===t,[c,d]=(0,o.useState)(!1);(0,s.Rb)((()=>{if(c)return d(!1),!1}));const l=(0,o.useCallback)((()=>{d((e=>!e))}),[]);return(0,o.useEffect)((()=>{"desktop"===t&&d(!1)}),[t]),(0,o.useMemo)((()=>({disabled:e,shouldRender:a,toggle:l,shown:c})),[e,a,l,c])}function p(e){let{children:t}=e;const a=m();return(0,d.jsx)(l.Provider,{value:a,children:t})}function u(){const e=o.useContext(l);if(void 0===e)throw new c.i6("NavbarMobileSidebarProvider");return e}},753086:(e,t,a)=>{"use strict";a.d(t,{HY:()=>c,Zo:()=>d,n2:()=>r});var o=a(667294),i=a(943768),n=a(785893);const s=o.createContext(null);function r(e){let{children:t}=e;const a=(0,o.useState)({component:null,props:null});return(0,n.jsx)(s.Provider,{value:a,children:t})}function c(){const e=(0,o.useContext)(s);if(!e)throw new i.i6("NavbarSecondaryMenuContentProvider");return e[0]}function d(e){let{component:t,props:a}=e;const n=(0,o.useContext)(s);if(!n)throw new i.i6("NavbarSecondaryMenuContentProvider");const[,r]=n,c=(0,i.Ql)(a);return(0,o.useEffect)((()=>{r({component:t,props:c})}),[r,t,c]),(0,o.useEffect)((()=>()=>r({component:null,props:null})),[r]),null}},978181:(e,t,a)=>{"use strict";a.d(t,{h:()=>i,t:()=>n});var o=a(667294);const i="navigation-with-keyboard";function n(){(0,o.useEffect)((()=>{function e(e){"keydown"===e.type&&"Tab"===e.key&&document.body.classList.add(i),"mousedown"===e.type&&document.body.classList.remove(i)}return document.addEventListener("keydown",e),document.addEventListener("mousedown",e),()=>{document.body.classList.remove(i),document.removeEventListener("keydown",e),document.removeEventListener("mousedown",e)}}),[])}},935358:(e,t,a)=>{"use strict";a.d(t,{K:()=>r,M:()=>c});var o=a(667294),i=a(639962),n=a(275238);const s="q";function r(){return(0,n.Nc)(s)}function c(){const{siteConfig:{baseUrl:e,themeConfig:t}}=(0,i.Z)(),{algolia:{searchPagePath:a}}=t;return(0,o.useCallback)((t=>`${e}${a}?${s}=${encodeURIComponent(t)}`),[e,a])}},113488:(e,t,a)=>{"use strict";a.d(t,{i:()=>r});var o=a(667294),i=a(836136);const n={desktop:"desktop",mobile:"mobile",ssr:"ssr"},s=996;function r(){const[e,t]=(0,o.useState)((()=>"ssr"));return(0,o.useEffect)((()=>{function e(){t(function(){if(!i.Z.canUseDOM)throw new Error("getWindowSize() should only be called after React hydration");return window.innerWidth>s?n.desktop:n.mobile}())}return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}}),[]),e}},323702:(e,t,a)=>{"use strict";a.d(t,{k:()=>o});const o={page:{blogListPage:"blog-list-page",blogPostPage:"blog-post-page",blogTagsListPage:"blog-tags-list-page",blogTagPostListPage:"blog-tags-post-list-page",docsDocPage:"docs-doc-page",docsTagsListPage:"docs-tags-list-page",docsTagDocListPage:"docs-tags-doc-list-page",mdxPage:"mdx-page"},wrapper:{main:"main-wrapper",blogPages:"blog-wrapper",docsPages:"docs-wrapper",mdxPages:"mdx-wrapper"},common:{editThisPage:"theme-edit-this-page",lastUpdated:"theme-last-updated",backToTopButton:"theme-back-to-top-button",codeBlock:"theme-code-block",admonition:"theme-admonition",unlistedBanner:"theme-unlisted-banner",admonitionType:e=>`theme-admonition-${e}`},layout:{},docs:{docVersionBanner:"theme-doc-version-banner",docVersionBadge:"theme-doc-version-badge",docBreadcrumbs:"theme-doc-breadcrumbs",docMarkdown:"theme-doc-markdown",docTocMobile:"theme-doc-toc-mobile",docTocDesktop:"theme-doc-toc-desktop",docFooter:"theme-doc-footer",docFooterTagsRow:"theme-doc-footer-tags-row",docFooterEditMetaRow:"theme-doc-footer-edit-meta-row",docSidebarContainer:"theme-doc-sidebar-container",docSidebarMenu:"theme-doc-sidebar-menu",docSidebarItemCategory:"theme-doc-sidebar-item-category",docSidebarItemLink:"theme-doc-sidebar-item-link",docSidebarItemCategoryLevel:e=>`theme-doc-sidebar-item-category-level-${e}`,docSidebarItemLinkLevel:e=>`theme-doc-sidebar-item-link-level-${e}`},blog:{}}},558986:(e,t,a)=>{"use strict";function o(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}a.d(t,{n:()=>o})},903734:(e,t,a)=>{"use strict";a.d(t,{LM:()=>u,_F:()=>g,cE:()=>p,SN:()=>x,lO:()=>S,vY:()=>_,oz:()=>w,s1:()=>v,f:()=>y});var o=a(667294),i=a(616550),n=a(318790),s=a(189871),r=a(186409),c=a(58801),d=a(784432);function l(e){return Array.from(new Set(e))}var m=a(369003);const p=!!s._r;function u(e){return"link"!==e.type||e.unlisted?"category"===e.type?function(e){if(e.href&&!e.linkUnlisted)return e.href;for(const t of e.items){const e=u(t);if(e)return e}}(e):void 0:e.href}const b=(e,t)=>void 0!==e&&(0,m.Mg)(e,t),h=(e,t)=>e.some((e=>g(e,t)));function g(e,t){return"link"===e.type?b(e.href,t):"category"===e.type&&(b(e.href,t)||h(e.items,t))}function f(e,t){switch(e.type){case"category":return g(e,t)||e.items.some((e=>f(e,t)));case"link":return!e.unlisted||g(e,t);default:return!0}}function y(e,t){return(0,o.useMemo)((()=>e.filter((e=>f(e,t)))),[e,t])}function k(e){let{sidebarItems:t,pathname:a,onlyCategories:o=!1}=e;const i=[];return function e(t){for(const n of t)if("category"===n.type&&((0,m.Mg)(n.href,a)||e(n.items))||"link"===n.type&&(0,m.Mg)(n.href,a)){return o&&"category"!==n.type||i.unshift(n),!0}return!1}(t),i}function v(){const e=(0,d.V)(),{pathname:t}=(0,i.TH)(),a=(0,s.gA)()?.pluginData.breadcrumbs;return!1!==a&&e?k({sidebarItems:e.items,pathname:t}):null}function S(e){const{activeVersion:t}=(0,s.Iw)(e),{preferredVersion:a}=(0,r.J)(e),i=(0,s.yW)(e);return(0,o.useMemo)((()=>l([t,a,i].filter(Boolean))),[t,a,i])}function w(e,t){const a=S(t);return(0,o.useMemo)((()=>{const t=a.flatMap((e=>e.sidebars?Object.entries(e.sidebars):[])),o=t.find((t=>t[0]===e));if(!o)throw new Error(`Can't find any sidebar with id "${e}" in version${a.length>1?"s":""} ${a.map((e=>e.name)).join(", ")}".\nAvailable sidebar ids are:\n- ${t.map((e=>e[0])).join("\n- ")}`);return o[1]}),[e,a])}function _(e,t){const a=S(t);return(0,o.useMemo)((()=>{const t=a.flatMap((e=>e.docs)),o=t.find((t=>t.id===e));if(!o){if(a.flatMap((e=>e.draftIds)).includes(e))return null;throw new Error(`Couldn't find any doc with id "${e}" in version${a.length>1?"s":""} "${a.map((e=>e.name)).join(", ")}".\nAvailable doc ids are:\n- ${l(t.map((e=>e.id))).join("\n- ")}`)}return o}),[e,a])}function x(e){let{route:t}=e;const a=(0,i.TH)(),o=(0,c.E)(),s=t.routes,r=s.find((e=>(0,i.LX)(a.pathname,e)));if(!r)return null;const d=r.sidebar,l=d?o.docsSidebars[d]:void 0;return{docElement:(0,n.H)(s),sidebarName:d,sidebarItems:l}}},672733:(e,t,a)=>{"use strict";a.d(t,{p:()=>i});var o=a(639962);function i(e){const{siteConfig:t}=(0,o.Z)(),{title:a,titleDelimiter:i}=t;return e?.trim().length?`${e.trim()} ${i} ${a}`:a}},275238:(e,t,a)=>{"use strict";a.d(t,{Nc:()=>c,Rb:()=>s});var o=a(667294),i=a(616550),n=a(943768);function s(e){!function(e){const t=(0,i.k6)(),a=(0,n.zX)(e);(0,o.useEffect)((()=>t.block(((e,t)=>a(e,t)))),[t,a])}(((t,a)=>{if("POP"===a)return e(t,a)}))}function r(e){return function(e){const t=(0,i.k6)();return(0,o.useSyncExternalStore)(t.listen,(()=>e(t)),(()=>e(t)))}((t=>null===e?null:new URLSearchParams(t.location.search).get(e)))}function c(e){const t=r(e)??"",a=function(){const e=(0,i.k6)();return(0,o.useCallback)(((t,a,o)=>{const i=new URLSearchParams(e.location.search);a?i.set(t,a):i.delete(t),(o?.push?e.push:e.replace)({search:i.toString()})}),[e])}();return[t,(0,o.useCallback)(((t,o)=>{a(e,t,o)}),[a,e])]}},679488:(e,t,a)=>{"use strict";a.d(t,{FG:()=>u,d:()=>m,VC:()=>b});var o=a(667294),i=a(490512),n=a(631514),s=a(469656);function r(){const e=o.useContext(s._);if(!e)throw new Error("Unexpected: no Docusaurus route context found");return e}var c=a(779524),d=a(672733),l=a(785893);function m(e){let{title:t,description:a,keywords:o,image:i,children:s}=e;const r=(0,d.p)(t),{withBaseUrl:m}=(0,c.C)(),p=i?m(i,{absolute:!0}):void 0;return(0,l.jsxs)(n.Z,{children:[t&&(0,l.jsx)("title",{children:r}),t&&(0,l.jsx)("meta",{property:"og:title",content:r}),a&&(0,l.jsx)("meta",{name:"description",content:a}),a&&(0,l.jsx)("meta",{property:"og:description",content:a}),o&&(0,l.jsx)("meta",{name:"keywords",content:Array.isArray(o)?o.join(","):o}),p&&(0,l.jsx)("meta",{property:"og:image",content:p}),p&&(0,l.jsx)("meta",{name:"twitter:image",content:p}),s]})}const p=o.createContext(void 0);function u(e){let{className:t,children:a}=e;const s=o.useContext(p),r=(0,i.Z)(s,t);return(0,l.jsxs)(p.Provider,{value:r,children:[(0,l.jsx)(n.Z,{children:(0,l.jsx)("html",{className:r})}),a]})}function b(e){let{children:t}=e;const a=r(),o=`plugin-${a.plugin.name.replace(/docusaurus-(?:plugin|theme)-(?:content-)?/gi,"")}`;const n=`plugin-id-${a.plugin.id}`;return(0,l.jsx)(u,{className:(0,i.Z)(o,n),children:t})}},943768:(e,t,a)=>{"use strict";a.d(t,{D9:()=>r,Qc:()=>l,Ql:()=>d,i6:()=>c,zX:()=>s});var o=a(667294),i=a(81270),n=a(785893);function s(e){const t=(0,o.useRef)(e);return(0,i.Z)((()=>{t.current=e}),[e]),(0,o.useCallback)((function(){return t.current(...arguments)}),[])}function r(e){const t=(0,o.useRef)();return(0,i.Z)((()=>{t.current=e})),t.current}class c extends Error{constructor(e,t){super(),this.name="ReactContextError",this.message=`Hook ${this.stack?.split("\n")[1]?.match(/at (?:\w+\.)?(?\w+)/)?.groups.name??""} is called outside the <${e}>. ${t??""}`}}function d(e){const t=Object.entries(e);return t.sort(((e,t)=>e[0].localeCompare(t[0]))),(0,o.useMemo)((()=>e),t.flat())}function l(e){return t=>{let{children:a}=t;return(0,n.jsx)(n.Fragment,{children:e.reduceRight(((e,t)=>(0,n.jsx)(t,{children:e})),a)})}}},161500:(e,t,a)=>{"use strict";function o(e,t){return void 0!==e&&void 0!==t&&new RegExp(e,"gi").test(t)}a.d(t,{F:()=>o})},369003:(e,t,a)=>{"use strict";a.d(t,{Mg:()=>s,Ns:()=>r});var o=a(667294),i=a(150997),n=a(639962);function s(e,t){const a=e=>(!e||e.endsWith("/")?e:`${e}/`)?.toLowerCase();return a(e)===a(t)}function r(){const{baseUrl:e}=(0,n.Z)().siteConfig;return(0,o.useMemo)((()=>function(e){let{baseUrl:t,routes:a}=e;function o(e){return e.path===t&&!0===e.exact}function i(e){return e.path===t&&!e.exact}return function e(t){if(0===t.length)return;return t.find(o)||e(t.filter(i).flatMap((e=>e.routes??[])))}(a)}({routes:i.Z,baseUrl:e})),[e])}},872957:(e,t,a)=>{"use strict";a.d(t,{Ct:()=>u,OC:()=>d,RF:()=>p});var o=a(667294),i=a(836136),n=a(51048),s=(a(81270),a(943768)),r=a(785893);const c=o.createContext(void 0);function d(e){let{children:t}=e;const a=function(){const e=(0,o.useRef)(!0);return(0,o.useMemo)((()=>({scrollEventsEnabledRef:e,enableScrollEvents:()=>{e.current=!0},disableScrollEvents:()=>{e.current=!1}})),[])}();return(0,r.jsx)(c.Provider,{value:a,children:t})}function l(){const e=(0,o.useContext)(c);if(null==e)throw new s.i6("ScrollControllerProvider");return e}const m=()=>i.Z.canUseDOM?{scrollX:window.pageXOffset,scrollY:window.pageYOffset}:null;function p(e,t){void 0===t&&(t=[]);const{scrollEventsEnabledRef:a}=l(),i=(0,o.useRef)(m()),n=(0,s.zX)(e);(0,o.useEffect)((()=>{const e=()=>{if(!a.current)return;const e=m();n(e,i.current),i.current=e},t={passive:!0};return e(),window.addEventListener("scroll",e,t),()=>window.removeEventListener("scroll",e,t)}),[n,a,...t])}function u(){const e=(0,o.useRef)(null),t=(0,n.Z)()&&"smooth"===getComputedStyle(document.documentElement).scrollBehavior;return{startScroll:a=>{e.current=t?function(e){return window.scrollTo({top:e,behavior:"smooth"}),()=>{}}(a):function(e){let t=null;const a=document.documentElement.scrollTop>e;return function o(){const i=document.documentElement.scrollTop;(a&&i>e||!a&&it&&cancelAnimationFrame(t)}(a)},cancelScroll:()=>e.current?.()}}},660246:(e,t,a)=>{"use strict";a.d(t,{HX:()=>s,_q:()=>c,os:()=>r});var o=a(189871),i=a(639962),n=a(186409);const s="default";function r(e,t){return`docs-${e}-${t}`}function c(){const{i18n:e}=(0,i.Z)(),t=(0,o._r)(),a=(0,o.WS)(),c=(0,n.Oh)();const d=[s,...Object.keys(t).map((function(e){const o=a?.activePlugin.pluginId===e?a.activeVersion:void 0,i=c[e],n=t[e].versions.find((e=>e.isLast));return r(e,(o??i??n).name)}))];return{locale:e.currentLocale,tags:d}}},192560:(e,t,a)=>{"use strict";a.d(t,{WA:()=>c});a(667294);const o="localStorage";function i(e){let{key:t,oldValue:a,newValue:o,storage:i}=e;if(a===o)return;const n=document.createEvent("StorageEvent");n.initStorageEvent("storage",!1,!1,t,a,o,window.location.href,i),window.dispatchEvent(n)}function n(e){if(void 0===e&&(e=o),"undefined"==typeof window)throw new Error("Browser storage is not available on Node.js/Docusaurus SSR process.");if("none"===e)return null;try{return window[e]}catch(a){return t=a,s||(console.warn("Docusaurus browser storage is not available.\nPossible reasons: running Docusaurus in an iframe, in an incognito browser session, or using too strict browser privacy settings.",t),s=!0),null}var t}let s=!1;const r={get:()=>null,set:()=>{},del:()=>{},listen:()=>()=>{}};function c(e,t){if("undefined"==typeof window)return function(e){function t(){throw new Error(`Illegal storage API usage for storage key "${e}".\nDocusaurus storage APIs are not supposed to be called on the server-rendering process.\nPlease only call storage APIs in effects and event handlers.`)}return{get:t,set:t,del:t,listen:t}}(e);const a=n(t?.persistence);return null===a?r:{get:()=>{try{return a.getItem(e)}catch(t){return console.error(`Docusaurus storage error, can't get key=${e}`,t),null}},set:t=>{try{const o=a.getItem(e);a.setItem(e,t),i({key:e,oldValue:o,newValue:t,storage:a})}catch(o){console.error(`Docusaurus storage error, can't set ${e}=${t}`,o)}},del:()=>{try{const t=a.getItem(e);a.removeItem(e),i({key:e,oldValue:t,newValue:null,storage:a})}catch(t){console.error(`Docusaurus storage error, can't delete key=${e}`,t)}},listen:t=>{try{const o=o=>{o.storageArea===a&&o.key===e&&t(o)};return window.addEventListener("storage",o),()=>window.removeEventListener("storage",o)}catch(o){return console.error(`Docusaurus storage error, can't listen for changes of key=${e}`,o),()=>{}}}}}},340626:(e,t,a)=>{"use strict";a.d(t,{l:()=>s});var o=a(639962),i=a(616550),n=a(963905);function s(){const{siteConfig:{baseUrl:e,url:t,trailingSlash:a},i18n:{defaultLocale:s,currentLocale:r}}=(0,o.Z)(),{pathname:c}=(0,i.TH)(),d=(0,n.applyTrailingSlash)(c,{trailingSlash:a,baseUrl:e}),l=r===s?e:e.replace(`/${r}/`,"/"),m=d.replace(e,"");return{createUrl:function(e){let{locale:a,fullyQualified:o}=e;return`${o?t:""}${function(e){return e===s?`${l}`:`${l}${e}/`}(a)}${m}`}}}},743266:(e,t,a)=>{"use strict";a.d(t,{S:()=>s});var o=a(667294),i=a(616550),n=a(943768);function s(e){const t=(0,i.TH)(),a=(0,n.D9)(t),s=(0,n.zX)(e);(0,o.useEffect)((()=>{a&&t!==a&&s({location:t,previousLocation:a})}),[s,t,a])}},820107:(e,t,a)=>{"use strict";a.d(t,{L:()=>i});var o=a(639962);function i(){return(0,o.Z)().siteConfig.themeConfig}},87263:(e,t,a)=>{"use strict";a.d(t,{L:()=>i});var o=a(639962);function i(){const{siteConfig:{themeConfig:e}}=(0,o.Z)();return e}},702327:(e,t,a)=>{"use strict";a.d(t,{l:()=>r});var o=a(667294),i=a(161500),n=a(779524),s=a(87263);function r(){const{withBaseUrl:e}=(0,n.C)(),{algolia:{externalUrlRegex:t,replaceSearchResultPathname:a}}=(0,s.L)();return(0,o.useCallback)((o=>{const n=new URL(o);if((0,i.F)(t,n.href))return o;const s=`${n.pathname+n.hash}`;return e(function(e,t){return t?e.replaceAll(new RegExp(t.from,"g"),t.to):e}(s,a))}),[e,t,a])}},984136:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const{trailingSlash:a,baseUrl:o}=t;if(e.startsWith("#"))return e;if(void 0===a)return e;const[i]=e.split(/[#?]/),n="/"===i||i===o?i:(s=i,a?function(e){return e.endsWith("/")?e:`${e}/`}(s):function(e){return e.endsWith("/")?e.slice(0,-1):e}(s));var s;return e.replace(i,n)}},115806:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=void 0,t.getErrorCausalChain=function e(t){return t.cause?[t,...e(t.cause)]:[t]}},963905:function(e,t,a){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=t.applyTrailingSlash=t.blogPostContainerID=void 0,t.blogPostContainerID="__blog-post-container";var i=a(984136);Object.defineProperty(t,"applyTrailingSlash",{enumerable:!0,get:function(){return o(i).default}});var n=a(115806);Object.defineProperty(t,"getErrorCausalChain",{enumerable:!0,get:function(){return n.getErrorCausalChain}})},199318:(e,t,a)=>{"use strict";a.d(t,{lX:()=>v,q_:()=>j,ob:()=>u,PP:()=>E,Ep:()=>p});var o=a(487462);function i(e){return"/"===e.charAt(0)}function n(e,t){for(var a=t,o=a+1,i=e.length;o=0;p--){var u=s[p];"."===u?n(s,p):".."===u?(n(s,p),m++):m&&(n(s,p),m--)}if(!d)for(;m--;m)s.unshift("..");!d||""===s[0]||s[0]&&i(s[0])||s.unshift("");var b=s.join("/");return a&&"/"!==b.substr(-1)&&(b+="/"),b};var r=a(438776);function c(e){return"/"===e.charAt(0)?e:"/"+e}function d(e){return"/"===e.charAt(0)?e.substr(1):e}function l(e,t){return function(e,t){return 0===e.toLowerCase().indexOf(t.toLowerCase())&&-1!=="/?#".indexOf(e.charAt(t.length))}(e,t)?e.substr(t.length):e}function m(e){return"/"===e.charAt(e.length-1)?e.slice(0,-1):e}function p(e){var t=e.pathname,a=e.search,o=e.hash,i=t||"/";return a&&"?"!==a&&(i+="?"===a.charAt(0)?a:"?"+a),o&&"#"!==o&&(i+="#"===o.charAt(0)?o:"#"+o),i}function u(e,t,a,i){var n;"string"==typeof e?(n=function(e){var t=e||"/",a="",o="",i=t.indexOf("#");-1!==i&&(o=t.substr(i),t=t.substr(0,i));var n=t.indexOf("?");return-1!==n&&(a=t.substr(n),t=t.substr(0,n)),{pathname:t,search:"?"===a?"":a,hash:"#"===o?"":o}}(e),n.state=t):(void 0===(n=(0,o.Z)({},e)).pathname&&(n.pathname=""),n.search?"?"!==n.search.charAt(0)&&(n.search="?"+n.search):n.search="",n.hash?"#"!==n.hash.charAt(0)&&(n.hash="#"+n.hash):n.hash="",void 0!==t&&void 0===n.state&&(n.state=t));try{n.pathname=decodeURI(n.pathname)}catch(r){throw r instanceof URIError?new URIError('Pathname "'+n.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):r}return a&&(n.key=a),i?n.pathname?"/"!==n.pathname.charAt(0)&&(n.pathname=s(n.pathname,i.pathname)):n.pathname=i.pathname:n.pathname||(n.pathname="/"),n}function b(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,a,o,i){if(null!=e){var n="function"==typeof e?e(t,a):e;"string"==typeof n?"function"==typeof o?o(n,i):i(!0):i(!1!==n)}else i(!0)},appendListener:function(e){var a=!0;function o(){a&&e.apply(void 0,arguments)}return t.push(o),function(){a=!1,t=t.filter((function(e){return e!==o}))}},notifyListeners:function(){for(var e=arguments.length,a=new Array(e),o=0;ot?a.splice(t,a.length-t,i):a.push(i),m({action:o,location:i,index:t,entries:a})}}))},replace:function(e,t){var o="REPLACE",i=u(e,t,h(),v.location);l.confirmTransitionTo(i,o,a,(function(e){e&&(v.entries[v.index]=i,m({action:o,location:i}))}))},go:k,goBack:function(){k(-1)},goForward:function(){k(1)},canGo:function(e){var t=v.index+e;return t>=0&&t{"use strict";var o=a(659864),i={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},n={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},s={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},r={};function c(e){return o.isMemo(e)?s:r[e.$$typeof]||i}r[o.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},r[o.Memo]=s;var d=Object.defineProperty,l=Object.getOwnPropertyNames,m=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,u=Object.getPrototypeOf,b=Object.prototype;e.exports=function e(t,a,o){if("string"!=typeof a){if(b){var i=u(a);i&&i!==b&&e(t,i,o)}var s=l(a);m&&(s=s.concat(m(a)));for(var r=c(t),h=c(a),g=0;g{"use strict";e.exports=function(e,t,a,o,i,n,s,r){if(!e){var c;if(void 0===t)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var d=[a,o,i,n,s,r],l=0;(c=new Error(t.replace(/%s/g,(function(){return d[l++]})))).name="Invariant Violation"}throw c.framesToPop=1,c}}},405826:e=>{e.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},30984:(e,t,a)=>{"use strict";a.r(t)},146930:(e,t,a)=>{"use strict";a.r(t)},574865:function(e,t,a){var o,i;o=function(){var e,t,a={version:"0.2.0"},o=a.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'
    '};function i(e,t,a){return ea?a:e}function n(e){return 100*(-1+e)}function s(e,t,a){var i;return(i="translate3d"===o.positionUsing?{transform:"translate3d("+n(e)+"%,0,0)"}:"translate"===o.positionUsing?{transform:"translate("+n(e)+"%,0)"}:{"margin-left":n(e)+"%"}).transition="all "+t+"ms "+a,i}a.configure=function(e){var t,a;for(t in e)void 0!==(a=e[t])&&e.hasOwnProperty(t)&&(o[t]=a);return this},a.status=null,a.set=function(e){var t=a.isStarted();e=i(e,o.minimum,1),a.status=1===e?null:e;var n=a.render(!t),d=n.querySelector(o.barSelector),l=o.speed,m=o.easing;return n.offsetWidth,r((function(t){""===o.positionUsing&&(o.positionUsing=a.getPositioningCSS()),c(d,s(e,l,m)),1===e?(c(n,{transition:"none",opacity:1}),n.offsetWidth,setTimeout((function(){c(n,{transition:"all "+l+"ms linear",opacity:0}),setTimeout((function(){a.remove(),t()}),l)}),l)):setTimeout(t,l)})),this},a.isStarted=function(){return"number"==typeof a.status},a.start=function(){a.status||a.set(0);var e=function(){setTimeout((function(){a.status&&(a.trickle(),e())}),o.trickleSpeed)};return o.trickle&&e(),this},a.done=function(e){return e||a.status?a.inc(.3+.5*Math.random()).set(1):this},a.inc=function(e){var t=a.status;return t?("number"!=typeof e&&(e=(1-t)*i(Math.random()*t,.1,.95)),t=i(t+e,0,.994),a.set(t)):a.start()},a.trickle=function(){return a.inc(Math.random()*o.trickleRate)},e=0,t=0,a.promise=function(o){return o&&"resolved"!==o.state()?(0===t&&a.start(),e++,t++,o.always((function(){0==--t?(e=0,a.done()):a.set((e-t)/e)})),this):this},a.render=function(e){if(a.isRendered())return document.getElementById("nprogress");l(document.documentElement,"nprogress-busy");var t=document.createElement("div");t.id="nprogress",t.innerHTML=o.template;var i,s=t.querySelector(o.barSelector),r=e?"-100":n(a.status||0),d=document.querySelector(o.parent);return c(s,{transition:"all 0 linear",transform:"translate3d("+r+"%,0,0)"}),o.showSpinner||(i=t.querySelector(o.spinnerSelector))&&u(i),d!=document.body&&l(d,"nprogress-custom-parent"),d.appendChild(t),t},a.remove=function(){m(document.documentElement,"nprogress-busy"),m(document.querySelector(o.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&u(e)},a.isRendered=function(){return!!document.getElementById("nprogress")},a.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"};var r=function(){var e=[];function t(){var a=e.shift();a&&a(t)}return function(a){e.push(a),1==e.length&&t()}}(),c=function(){var e=["Webkit","O","Moz","ms"],t={};function a(e){return e.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(e,t){return t.toUpperCase()}))}function o(t){var a=document.body.style;if(t in a)return t;for(var o,i=e.length,n=t.charAt(0).toUpperCase()+t.slice(1);i--;)if((o=e[i]+n)in a)return o;return t}function i(e){return e=a(e),t[e]||(t[e]=o(e))}function n(e,t,a){t=i(t),e.style[t]=a}return function(e,t){var a,o,i=arguments;if(2==i.length)for(a in t)void 0!==(o=t[a])&&t.hasOwnProperty(a)&&n(e,a,o);else n(e,i[1],i[2])}}();function d(e,t){return("string"==typeof e?e:p(e)).indexOf(" "+t+" ")>=0}function l(e,t){var a=p(e),o=a+t;d(a,t)||(e.className=o.substring(1))}function m(e,t){var a,o=p(e);d(e,t)&&(a=o.replace(" "+t+" "," "),e.className=a.substring(1,a.length-1))}function p(e){return(" "+(e.className||"")+" ").replace(/\s+/gi," ")}function u(e){e&&e.parentNode&&e.parentNode.removeChild(e)}return a},void 0===(i="function"==typeof o?o.call(t,a,t,e):o)||(e.exports=i)},514779:(e,t,a)=>{var o=a(405826);e.exports=u,e.exports.parse=n,e.exports.compile=function(e,t){return r(n(e,t),t)},e.exports.tokensToFunction=r,e.exports.tokensToRegExp=p;var i=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function n(e,t){for(var a,o=[],n=0,s=0,r="",l=t&&t.delimiter||"/";null!=(a=i.exec(e));){var m=a[0],p=a[1],u=a.index;if(r+=e.slice(s,u),s=u+m.length,p)r+=p[1];else{var b=e[s],h=a[2],g=a[3],f=a[4],y=a[5],k=a[6],v=a[7];r&&(o.push(r),r="");var S=null!=h&&null!=b&&b!==h,w="+"===k||"*"===k,_="?"===k||"*"===k,x=a[2]||l,q=f||y;o.push({name:g||n++,prefix:h||"",delimiter:x,optional:_,repeat:w,partial:S,asterisk:!!v,pattern:q?d(q):v?".*":"[^"+c(x)+"]+?"})}}return s{e.exports&&(e.exports={core:{meta:{path:"components/prism-core.js",option:"mandatory"},core:"Core"},themes:{meta:{path:"themes/{id}.css",link:"index.html?theme={id}",exclusive:!0},prism:{title:"Default",option:"default"},"prism-dark":"Dark","prism-funky":"Funky","prism-okaidia":{title:"Okaidia",owner:"ocodia"},"prism-twilight":{title:"Twilight",owner:"remybach"},"prism-coy":{title:"Coy",owner:"tshedor"},"prism-solarizedlight":{title:"Solarized Light",owner:"hectormatos2011 "},"prism-tomorrow":{title:"Tomorrow Night",owner:"Rosey"}},languages:{meta:{path:"components/prism-{id}",noCSS:!0,examplesPath:"examples/prism-{id}",addCheckAll:!0},markup:{title:"Markup",alias:["html","xml","svg","mathml","ssml","atom","rss"],aliasTitles:{html:"HTML",xml:"XML",svg:"SVG",mathml:"MathML",ssml:"SSML",atom:"Atom",rss:"RSS"},option:"default"},css:{title:"CSS",option:"default",modify:"markup"},clike:{title:"C-like",option:"default"},javascript:{title:"JavaScript",require:"clike",modify:"markup",optional:"regex",alias:"js",option:"default"},abap:{title:"ABAP",owner:"dellagustin"},abnf:{title:"ABNF",owner:"RunDevelopment"},actionscript:{title:"ActionScript",require:"javascript",modify:"markup",owner:"Golmote"},ada:{title:"Ada",owner:"Lucretia"},agda:{title:"Agda",owner:"xy-ren"},al:{title:"AL",owner:"RunDevelopment"},antlr4:{title:"ANTLR4",alias:"g4",owner:"RunDevelopment"},apacheconf:{title:"Apache Configuration",owner:"GuiTeK"},apex:{title:"Apex",require:["clike","sql"],owner:"RunDevelopment"},apl:{title:"APL",owner:"ngn"},applescript:{title:"AppleScript",owner:"Golmote"},aql:{title:"AQL",owner:"RunDevelopment"},arduino:{title:"Arduino",require:"cpp",alias:"ino",owner:"dkern"},arff:{title:"ARFF",owner:"Golmote"},armasm:{title:"ARM Assembly",alias:"arm-asm",owner:"RunDevelopment"},arturo:{title:"Arturo",alias:"art",optional:["bash","css","javascript","markup","markdown","sql"],owner:"drkameleon"},asciidoc:{alias:"adoc",title:"AsciiDoc",owner:"Golmote"},aspnet:{title:"ASP.NET (C#)",require:["markup","csharp"],owner:"nauzilus"},asm6502:{title:"6502 Assembly",owner:"kzurawel"},asmatmel:{title:"Atmel AVR Assembly",owner:"cerkit"},autohotkey:{title:"AutoHotkey",owner:"aviaryan"},autoit:{title:"AutoIt",owner:"Golmote"},avisynth:{title:"AviSynth",alias:"avs",owner:"Zinfidel"},"avro-idl":{title:"Avro IDL",alias:"avdl",owner:"RunDevelopment"},awk:{title:"AWK",alias:"gawk",aliasTitles:{gawk:"GAWK"},owner:"RunDevelopment"},bash:{title:"Bash",alias:["sh","shell"],aliasTitles:{sh:"Shell",shell:"Shell"},owner:"zeitgeist87"},basic:{title:"BASIC",owner:"Golmote"},batch:{title:"Batch",owner:"Golmote"},bbcode:{title:"BBcode",alias:"shortcode",aliasTitles:{shortcode:"Shortcode"},owner:"RunDevelopment"},bbj:{title:"BBj",owner:"hyyan"},bicep:{title:"Bicep",owner:"johnnyreilly"},birb:{title:"Birb",require:"clike",owner:"Calamity210"},bison:{title:"Bison",require:"c",owner:"Golmote"},bnf:{title:"BNF",alias:"rbnf",aliasTitles:{rbnf:"RBNF"},owner:"RunDevelopment"},bqn:{title:"BQN",owner:"yewscion"},brainfuck:{title:"Brainfuck",owner:"Golmote"},brightscript:{title:"BrightScript",owner:"RunDevelopment"},bro:{title:"Bro",owner:"wayward710"},bsl:{title:"BSL (1C:Enterprise)",alias:"oscript",aliasTitles:{oscript:"OneScript"},owner:"Diversus23"},c:{title:"C",require:"clike",owner:"zeitgeist87"},csharp:{title:"C#",require:"clike",alias:["cs","dotnet"],owner:"mvalipour"},cpp:{title:"C++",require:"c",owner:"zeitgeist87"},cfscript:{title:"CFScript",require:"clike",alias:"cfc",owner:"mjclemente"},chaiscript:{title:"ChaiScript",require:["clike","cpp"],owner:"RunDevelopment"},cil:{title:"CIL",owner:"sbrl"},cilkc:{title:"Cilk/C",require:"c",alias:"cilk-c",owner:"OpenCilk"},cilkcpp:{title:"Cilk/C++",require:"cpp",alias:["cilk-cpp","cilk"],owner:"OpenCilk"},clojure:{title:"Clojure",owner:"troglotit"},cmake:{title:"CMake",owner:"mjrogozinski"},cobol:{title:"COBOL",owner:"RunDevelopment"},coffeescript:{title:"CoffeeScript",require:"javascript",alias:"coffee",owner:"R-osey"},concurnas:{title:"Concurnas",alias:"conc",owner:"jasontatton"},csp:{title:"Content-Security-Policy",owner:"ScottHelme"},cooklang:{title:"Cooklang",owner:"ahue"},coq:{title:"Coq",owner:"RunDevelopment"},crystal:{title:"Crystal",require:"ruby",owner:"MakeNowJust"},"css-extras":{title:"CSS Extras",require:"css",modify:"css",owner:"milesj"},csv:{title:"CSV",owner:"RunDevelopment"},cue:{title:"CUE",owner:"RunDevelopment"},cypher:{title:"Cypher",owner:"RunDevelopment"},d:{title:"D",require:"clike",owner:"Golmote"},dart:{title:"Dart",require:"clike",owner:"Golmote"},dataweave:{title:"DataWeave",owner:"machaval"},dax:{title:"DAX",owner:"peterbud"},dhall:{title:"Dhall",owner:"RunDevelopment"},diff:{title:"Diff",owner:"uranusjr"},django:{title:"Django/Jinja2",require:"markup-templating",alias:"jinja2",owner:"romanvm"},"dns-zone-file":{title:"DNS zone file",owner:"RunDevelopment",alias:"dns-zone"},docker:{title:"Docker",alias:"dockerfile",owner:"JustinBeckwith"},dot:{title:"DOT (Graphviz)",alias:"gv",optional:"markup",owner:"RunDevelopment"},ebnf:{title:"EBNF",owner:"RunDevelopment"},editorconfig:{title:"EditorConfig",owner:"osipxd"},eiffel:{title:"Eiffel",owner:"Conaclos"},ejs:{title:"EJS",require:["javascript","markup-templating"],owner:"RunDevelopment",alias:"eta",aliasTitles:{eta:"Eta"}},elixir:{title:"Elixir",owner:"Golmote"},elm:{title:"Elm",owner:"zwilias"},etlua:{title:"Embedded Lua templating",require:["lua","markup-templating"],owner:"RunDevelopment"},erb:{title:"ERB",require:["ruby","markup-templating"],owner:"Golmote"},erlang:{title:"Erlang",owner:"Golmote"},"excel-formula":{title:"Excel Formula",alias:["xlsx","xls"],owner:"RunDevelopment"},fsharp:{title:"F#",require:"clike",owner:"simonreynolds7"},factor:{title:"Factor",owner:"catb0t"},false:{title:"False",owner:"edukisto"},"firestore-security-rules":{title:"Firestore security rules",require:"clike",owner:"RunDevelopment"},flow:{title:"Flow",require:"javascript",owner:"Golmote"},fortran:{title:"Fortran",owner:"Golmote"},ftl:{title:"FreeMarker Template Language",require:"markup-templating",owner:"RunDevelopment"},gml:{title:"GameMaker Language",alias:"gamemakerlanguage",require:"clike",owner:"LiarOnce"},gap:{title:"GAP (CAS)",owner:"RunDevelopment"},gcode:{title:"G-code",owner:"RunDevelopment"},gdscript:{title:"GDScript",owner:"RunDevelopment"},gedcom:{title:"GEDCOM",owner:"Golmote"},gettext:{title:"gettext",alias:"po",owner:"RunDevelopment"},gherkin:{title:"Gherkin",owner:"hason"},git:{title:"Git",owner:"lgiraudel"},glsl:{title:"GLSL",require:"c",owner:"Golmote"},gn:{title:"GN",alias:"gni",owner:"RunDevelopment"},"linker-script":{title:"GNU Linker Script",alias:"ld",owner:"RunDevelopment"},go:{title:"Go",require:"clike",owner:"arnehormann"},"go-module":{title:"Go module",alias:"go-mod",owner:"RunDevelopment"},gradle:{title:"Gradle",require:"clike",owner:"zeabdelkhalek-badido18"},graphql:{title:"GraphQL",optional:"markdown",owner:"Golmote"},groovy:{title:"Groovy",require:"clike",owner:"robfletcher"},haml:{title:"Haml",require:"ruby",optional:["css","css-extras","coffeescript","erb","javascript","less","markdown","scss","textile"],owner:"Golmote"},handlebars:{title:"Handlebars",require:"markup-templating",alias:["hbs","mustache"],aliasTitles:{mustache:"Mustache"},owner:"Golmote"},haskell:{title:"Haskell",alias:"hs",owner:"bholst"},haxe:{title:"Haxe",require:"clike",optional:"regex",owner:"Golmote"},hcl:{title:"HCL",owner:"outsideris"},hlsl:{title:"HLSL",require:"c",owner:"RunDevelopment"},hoon:{title:"Hoon",owner:"matildepark"},http:{title:"HTTP",optional:["csp","css","hpkp","hsts","javascript","json","markup","uri"],owner:"danielgtaylor"},hpkp:{title:"HTTP Public-Key-Pins",owner:"ScottHelme"},hsts:{title:"HTTP Strict-Transport-Security",owner:"ScottHelme"},ichigojam:{title:"IchigoJam",owner:"BlueCocoa"},icon:{title:"Icon",owner:"Golmote"},"icu-message-format":{title:"ICU Message Format",owner:"RunDevelopment"},idris:{title:"Idris",alias:"idr",owner:"KeenS",require:"haskell"},ignore:{title:".ignore",owner:"osipxd",alias:["gitignore","hgignore","npmignore"],aliasTitles:{gitignore:".gitignore",hgignore:".hgignore",npmignore:".npmignore"}},inform7:{title:"Inform 7",owner:"Golmote"},ini:{title:"Ini",owner:"aviaryan"},io:{title:"Io",owner:"AlesTsurko"},j:{title:"J",owner:"Golmote"},java:{title:"Java",require:"clike",owner:"sherblot"},javadoc:{title:"JavaDoc",require:["markup","java","javadoclike"],modify:"java",optional:"scala",owner:"RunDevelopment"},javadoclike:{title:"JavaDoc-like",modify:["java","javascript","php"],owner:"RunDevelopment"},javastacktrace:{title:"Java stack trace",owner:"RunDevelopment"},jexl:{title:"Jexl",owner:"czosel"},jolie:{title:"Jolie",require:"clike",owner:"thesave"},jq:{title:"JQ",owner:"RunDevelopment"},jsdoc:{title:"JSDoc",require:["javascript","javadoclike","typescript"],modify:"javascript",optional:["actionscript","coffeescript"],owner:"RunDevelopment"},"js-extras":{title:"JS Extras",require:"javascript",modify:"javascript",optional:["actionscript","coffeescript","flow","n4js","typescript"],owner:"RunDevelopment"},json:{title:"JSON",alias:"webmanifest",aliasTitles:{webmanifest:"Web App Manifest"},owner:"CupOfTea696"},json5:{title:"JSON5",require:"json",owner:"RunDevelopment"},jsonp:{title:"JSONP",require:"json",owner:"RunDevelopment"},jsstacktrace:{title:"JS stack trace",owner:"sbrl"},"js-templates":{title:"JS Templates",require:"javascript",modify:"javascript",optional:["css","css-extras","graphql","markdown","markup","sql"],owner:"RunDevelopment"},julia:{title:"Julia",owner:"cdagnino"},keepalived:{title:"Keepalived Configure",owner:"dev-itsheng"},keyman:{title:"Keyman",owner:"mcdurdin"},kotlin:{title:"Kotlin",alias:["kt","kts"],aliasTitles:{kts:"Kotlin Script"},require:"clike",owner:"Golmote"},kumir:{title:"KuMir (\u041a\u0443\u041c\u0438\u0440)",alias:"kum",owner:"edukisto"},kusto:{title:"Kusto",owner:"RunDevelopment"},latex:{title:"LaTeX",alias:["tex","context"],aliasTitles:{tex:"TeX",context:"ConTeXt"},owner:"japborst"},latte:{title:"Latte",require:["clike","markup-templating","php"],owner:"nette"},less:{title:"Less",require:"css",optional:"css-extras",owner:"Golmote"},lilypond:{title:"LilyPond",require:"scheme",alias:"ly",owner:"RunDevelopment"},liquid:{title:"Liquid",require:"markup-templating",owner:"cinhtau"},lisp:{title:"Lisp",alias:["emacs","elisp","emacs-lisp"],owner:"JuanCaicedo"},livescript:{title:"LiveScript",owner:"Golmote"},llvm:{title:"LLVM IR",owner:"porglezomp"},log:{title:"Log file",optional:"javastacktrace",owner:"RunDevelopment"},lolcode:{title:"LOLCODE",owner:"Golmote"},lua:{title:"Lua",owner:"Golmote"},magma:{title:"Magma (CAS)",owner:"RunDevelopment"},makefile:{title:"Makefile",owner:"Golmote"},markdown:{title:"Markdown",require:"markup",optional:"yaml",alias:"md",owner:"Golmote"},"markup-templating":{title:"Markup templating",require:"markup",owner:"Golmote"},mata:{title:"Mata",owner:"RunDevelopment"},matlab:{title:"MATLAB",owner:"Golmote"},maxscript:{title:"MAXScript",owner:"RunDevelopment"},mel:{title:"MEL",owner:"Golmote"},mermaid:{title:"Mermaid",owner:"RunDevelopment"},metafont:{title:"METAFONT",owner:"LaeriExNihilo"},mizar:{title:"Mizar",owner:"Golmote"},mongodb:{title:"MongoDB",owner:"airs0urce",require:"javascript"},monkey:{title:"Monkey",owner:"Golmote"},moonscript:{title:"MoonScript",alias:"moon",owner:"RunDevelopment"},n1ql:{title:"N1QL",owner:"TMWilds"},n4js:{title:"N4JS",require:"javascript",optional:"jsdoc",alias:"n4jsd",owner:"bsmith-n4"},"nand2tetris-hdl":{title:"Nand To Tetris HDL",owner:"stephanmax"},naniscript:{title:"Naninovel Script",owner:"Elringus",alias:"nani"},nasm:{title:"NASM",owner:"rbmj"},neon:{title:"NEON",owner:"nette"},nevod:{title:"Nevod",owner:"nezaboodka"},nginx:{title:"nginx",owner:"volado"},nim:{title:"Nim",owner:"Golmote"},nix:{title:"Nix",owner:"Golmote"},nsis:{title:"NSIS",owner:"idleberg"},objectivec:{title:"Objective-C",require:"c",alias:"objc",owner:"uranusjr"},ocaml:{title:"OCaml",owner:"Golmote"},odin:{title:"Odin",owner:"edukisto"},opencl:{title:"OpenCL",require:"c",modify:["c","cpp"],owner:"Milania1"},openqasm:{title:"OpenQasm",alias:"qasm",owner:"RunDevelopment"},oz:{title:"Oz",owner:"Golmote"},parigp:{title:"PARI/GP",owner:"Golmote"},parser:{title:"Parser",require:"markup",owner:"Golmote"},pascal:{title:"Pascal",alias:"objectpascal",aliasTitles:{objectpascal:"Object Pascal"},owner:"Golmote"},pascaligo:{title:"Pascaligo",owner:"DefinitelyNotAGoat"},psl:{title:"PATROL Scripting Language",owner:"bertysentry"},pcaxis:{title:"PC-Axis",alias:"px",owner:"RunDevelopment"},peoplecode:{title:"PeopleCode",alias:"pcode",owner:"RunDevelopment"},perl:{title:"Perl",owner:"Golmote"},php:{title:"PHP",require:"markup-templating",owner:"milesj"},phpdoc:{title:"PHPDoc",require:["php","javadoclike"],modify:"php",owner:"RunDevelopment"},"php-extras":{title:"PHP Extras",require:"php",modify:"php",owner:"milesj"},"plant-uml":{title:"PlantUML",alias:"plantuml",owner:"RunDevelopment"},plsql:{title:"PL/SQL",require:"sql",owner:"Golmote"},powerquery:{title:"PowerQuery",alias:["pq","mscript"],owner:"peterbud"},powershell:{title:"PowerShell",owner:"nauzilus"},processing:{title:"Processing",require:"clike",owner:"Golmote"},prolog:{title:"Prolog",owner:"Golmote"},promql:{title:"PromQL",owner:"arendjr"},properties:{title:".properties",owner:"Golmote"},protobuf:{title:"Protocol Buffers",require:"clike",owner:"just-boris"},pug:{title:"Pug",require:["markup","javascript"],optional:["coffeescript","ejs","handlebars","less","livescript","markdown","scss","stylus","twig"],owner:"Golmote"},puppet:{title:"Puppet",owner:"Golmote"},pure:{title:"Pure",optional:["c","cpp","fortran"],owner:"Golmote"},purebasic:{title:"PureBasic",require:"clike",alias:"pbfasm",owner:"HeX0R101"},purescript:{title:"PureScript",require:"haskell",alias:"purs",owner:"sriharshachilakapati"},python:{title:"Python",alias:"py",owner:"multipetros"},qsharp:{title:"Q#",require:"clike",alias:"qs",owner:"fedonman"},q:{title:"Q (kdb+ database)",owner:"Golmote"},qml:{title:"QML",require:"javascript",owner:"RunDevelopment"},qore:{title:"Qore",require:"clike",owner:"temnroegg"},r:{title:"R",owner:"Golmote"},racket:{title:"Racket",require:"scheme",alias:"rkt",owner:"RunDevelopment"},cshtml:{title:"Razor C#",alias:"razor",require:["markup","csharp"],optional:["css","css-extras","javascript","js-extras"],owner:"RunDevelopment"},jsx:{title:"React JSX",require:["markup","javascript"],optional:["jsdoc","js-extras","js-templates"],owner:"vkbansal"},tsx:{title:"React TSX",require:["jsx","typescript"]},reason:{title:"Reason",require:"clike",owner:"Golmote"},regex:{title:"Regex",owner:"RunDevelopment"},rego:{title:"Rego",owner:"JordanSh"},renpy:{title:"Ren'py",alias:"rpy",owner:"HyuchiaDiego"},rescript:{title:"ReScript",alias:"res",owner:"vmarcosp"},rest:{title:"reST (reStructuredText)",owner:"Golmote"},rip:{title:"Rip",owner:"ravinggenius"},roboconf:{title:"Roboconf",owner:"Golmote"},robotframework:{title:"Robot Framework",alias:"robot",owner:"RunDevelopment"},ruby:{title:"Ruby",require:"clike",alias:"rb",owner:"samflores"},rust:{title:"Rust",owner:"Golmote"},sas:{title:"SAS",optional:["groovy","lua","sql"],owner:"Golmote"},sass:{title:"Sass (Sass)",require:"css",optional:"css-extras",owner:"Golmote"},scss:{title:"Sass (SCSS)",require:"css",optional:"css-extras",owner:"MoOx"},scala:{title:"Scala",require:"java",owner:"jozic"},scheme:{title:"Scheme",owner:"bacchus123"},"shell-session":{title:"Shell session",require:"bash",alias:["sh-session","shellsession"],owner:"RunDevelopment"},smali:{title:"Smali",owner:"RunDevelopment"},smalltalk:{title:"Smalltalk",owner:"Golmote"},smarty:{title:"Smarty",require:"markup-templating",optional:"php",owner:"Golmote"},sml:{title:"SML",alias:"smlnj",aliasTitles:{smlnj:"SML/NJ"},owner:"RunDevelopment"},solidity:{title:"Solidity (Ethereum)",alias:"sol",require:"clike",owner:"glachaud"},"solution-file":{title:"Solution file",alias:"sln",owner:"RunDevelopment"},soy:{title:"Soy (Closure Template)",require:"markup-templating",owner:"Golmote"},sparql:{title:"SPARQL",require:"turtle",owner:"Triply-Dev",alias:"rq"},"splunk-spl":{title:"Splunk SPL",owner:"RunDevelopment"},sqf:{title:"SQF: Status Quo Function (Arma 3)",require:"clike",owner:"RunDevelopment"},sql:{title:"SQL",owner:"multipetros"},squirrel:{title:"Squirrel",require:"clike",owner:"RunDevelopment"},stan:{title:"Stan",owner:"RunDevelopment"},stata:{title:"Stata Ado",require:["mata","java","python"],owner:"RunDevelopment"},iecst:{title:"Structured Text (IEC 61131-3)",owner:"serhioromano"},stylus:{title:"Stylus",owner:"vkbansal"},supercollider:{title:"SuperCollider",alias:"sclang",owner:"RunDevelopment"},swift:{title:"Swift",owner:"chrischares"},systemd:{title:"Systemd configuration file",owner:"RunDevelopment"},"t4-templating":{title:"T4 templating",owner:"RunDevelopment"},"t4-cs":{title:"T4 Text Templates (C#)",require:["t4-templating","csharp"],alias:"t4",owner:"RunDevelopment"},"t4-vb":{title:"T4 Text Templates (VB)",require:["t4-templating","vbnet"],owner:"RunDevelopment"},tap:{title:"TAP",owner:"isaacs",require:"yaml"},tcl:{title:"Tcl",owner:"PeterChaplin"},tt2:{title:"Template Toolkit 2",require:["clike","markup-templating"],owner:"gflohr"},textile:{title:"Textile",require:"markup",optional:"css",owner:"Golmote"},toml:{title:"TOML",owner:"RunDevelopment"},tremor:{title:"Tremor",alias:["trickle","troy"],owner:"darach",aliasTitles:{trickle:"trickle",troy:"troy"}},turtle:{title:"Turtle",alias:"trig",aliasTitles:{trig:"TriG"},owner:"jakubklimek"},twig:{title:"Twig",require:"markup-templating",owner:"brandonkelly"},typescript:{title:"TypeScript",require:"javascript",optional:"js-templates",alias:"ts",owner:"vkbansal"},typoscript:{title:"TypoScript",alias:"tsconfig",aliasTitles:{tsconfig:"TSConfig"},owner:"dkern"},unrealscript:{title:"UnrealScript",alias:["uscript","uc"],owner:"RunDevelopment"},uorazor:{title:"UO Razor Script",owner:"jaseowns"},uri:{title:"URI",alias:"url",aliasTitles:{url:"URL"},owner:"RunDevelopment"},v:{title:"V",require:"clike",owner:"taggon"},vala:{title:"Vala",require:"clike",optional:"regex",owner:"TemplarVolk"},vbnet:{title:"VB.Net",require:"basic",owner:"Bigsby"},velocity:{title:"Velocity",require:"markup",owner:"Golmote"},verilog:{title:"Verilog",owner:"a-rey"},vhdl:{title:"VHDL",owner:"a-rey"},vim:{title:"vim",owner:"westonganger"},"visual-basic":{title:"Visual Basic",alias:["vb","vba"],aliasTitles:{vba:"VBA"},owner:"Golmote"},warpscript:{title:"WarpScript",owner:"RunDevelopment"},wasm:{title:"WebAssembly",owner:"Golmote"},"web-idl":{title:"Web IDL",alias:"webidl",owner:"RunDevelopment"},wgsl:{title:"WGSL",owner:"Dr4gonthree"},wiki:{title:"Wiki markup",require:"markup",owner:"Golmote"},wolfram:{title:"Wolfram language",alias:["mathematica","nb","wl"],aliasTitles:{mathematica:"Mathematica",nb:"Mathematica Notebook"},owner:"msollami"},wren:{title:"Wren",owner:"clsource"},xeora:{title:"Xeora",require:"markup",alias:"xeoracube",aliasTitles:{xeoracube:"XeoraCube"},owner:"freakmaxi"},"xml-doc":{title:"XML doc (.net)",require:"markup",modify:["csharp","fsharp","vbnet"],owner:"RunDevelopment"},xojo:{title:"Xojo (REALbasic)",owner:"Golmote"},xquery:{title:"XQuery",require:"markup",owner:"Golmote"},yaml:{title:"YAML",alias:"yml",owner:"hason"},yang:{title:"YANG",owner:"RunDevelopment"},zig:{title:"Zig",owner:"RunDevelopment"}},plugins:{meta:{path:"plugins/{id}/prism-{id}",link:"plugins/{id}/"},"line-highlight":{title:"Line Highlight",description:"Highlights specific lines and/or line ranges."},"line-numbers":{title:"Line Numbers",description:"Line number at the beginning of code lines.",owner:"kuba-kubula"},"show-invisibles":{title:"Show Invisibles",description:"Show hidden characters such as tabs and line breaks.",optional:["autolinker","data-uri-highlight"]},autolinker:{title:"Autolinker",description:"Converts URLs and emails in code to clickable links. Parses Markdown links in comments."},wpd:{title:"WebPlatform Docs",description:'Makes tokens link to WebPlatform.org documentation. The links open in a new tab.'},"custom-class":{title:"Custom Class",description:"This plugin allows you to prefix Prism's default classes (.comment can become .namespace--comment) or replace them with your defined ones (like .editor__comment). You can even add new classes.",owner:"dvkndn",noCSS:!0},"file-highlight":{title:"File Highlight",description:"Fetch external files and highlight them with Prism. Used on the Prism website itself.",noCSS:!0},"show-language":{title:"Show Language",description:"Display the highlighted language in code blocks (inline code does not show the label).",owner:"nauzilus",noCSS:!0,require:"toolbar"},"jsonp-highlight":{title:"JSONP Highlight",description:"Fetch content with JSONP and highlight some interesting content (e.g. GitHub/Gists or Bitbucket API).",noCSS:!0,owner:"nauzilus"},"highlight-keywords":{title:"Highlight Keywords",description:"Adds special CSS classes for each keyword for fine-grained highlighting.",owner:"vkbansal",noCSS:!0},"remove-initial-line-feed":{title:"Remove initial line feed",description:"Removes the initial line feed in code blocks.",owner:"Golmote",noCSS:!0},"inline-color":{title:"Inline color",description:"Adds a small inline preview for colors in style sheets.",require:"css-extras",owner:"RunDevelopment"},previewers:{title:"Previewers",description:"Previewers for angles, colors, gradients, easing and time.",require:"css-extras",owner:"Golmote"},autoloader:{title:"Autoloader",description:"Automatically loads the needed languages to highlight the code blocks.",owner:"Golmote",noCSS:!0},"keep-markup":{title:"Keep Markup",description:"Prevents custom markup from being dropped out during highlighting.",owner:"Golmote",optional:"normalize-whitespace",noCSS:!0},"command-line":{title:"Command Line",description:"Display a command line with a prompt and, optionally, the output/response from the commands.",owner:"chriswells0"},"unescaped-markup":{title:"Unescaped Markup",description:"Write markup without having to escape anything."},"normalize-whitespace":{title:"Normalize Whitespace",description:"Supports multiple operations to normalize whitespace in code blocks.",owner:"zeitgeist87",optional:"unescaped-markup",noCSS:!0},"data-uri-highlight":{title:"Data-URI Highlight",description:"Highlights data-URI contents.",owner:"Golmote",noCSS:!0},toolbar:{title:"Toolbar",description:"Attach a toolbar for plugins to easily register buttons on the top of a code block.",owner:"mAAdhaTTah"},"copy-to-clipboard":{title:"Copy to Clipboard Button",description:"Add a button that copies the code block to the clipboard when clicked.",owner:"mAAdhaTTah",require:"toolbar",noCSS:!0},"download-button":{title:"Download Button",description:"A button in the toolbar of a code block adding a convenient way to download a code file.",owner:"Golmote",require:"toolbar",noCSS:!0},"match-braces":{title:"Match braces",description:"Highlights matching braces.",owner:"RunDevelopment"},"diff-highlight":{title:"Diff Highlight",description:"Highlights the code inside diff blocks.",owner:"RunDevelopment",require:"diff"},"filter-highlight-all":{title:"Filter highlightAll",description:"Filters the elements the highlightAll and highlightAllUnder methods actually highlight.",owner:"RunDevelopment",noCSS:!0},treeview:{title:"Treeview",description:"A language with special styles to highlight file system tree structures.",owner:"Golmote"}}})},202885:(e,t,a)=>{const o=a(329901),i=a(139642),n=new Set;function s(e){void 0===e?e=Object.keys(o.languages).filter((e=>"meta"!=e)):Array.isArray(e)||(e=[e]);const t=[...n,...Object.keys(Prism.languages)];i(o,e,t).load((e=>{if(!(e in o.languages))return void(s.silent||console.warn("Language does not exist: "+e));const t="./prism-"+e;delete a.c[a(616500).resolve(t)],delete Prism.languages[e],a(616500)(t),n.add(e)}))}s.silent=!1,e.exports=s},196854:()=>{!function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(a,o,i,n){if(a.language===o){var s=a.tokenStack=[];a.code=a.code.replace(i,(function(e){if("function"==typeof n&&!n(e))return e;for(var i,r=s.length;-1!==a.code.indexOf(i=t(o,r));)++r;return s[r]=e,i})),a.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(a,o){if(a.language===o&&a.tokenStack){a.grammar=e.languages[o];var i=0,n=Object.keys(a.tokenStack);!function s(r){for(var c=0;c=n.length);c++){var d=r[c];if("string"==typeof d||d.content&&"string"==typeof d.content){var l=n[i],m=a.tokenStack[l],p="string"==typeof d?d:d.content,u=t(o,l),b=p.indexOf(u);if(b>-1){++i;var h=p.substring(0,b),g=new e.Token(o,e.tokenize(m,a.grammar),"language-"+o,m),f=p.substring(b+u.length),y=[];h&&y.push.apply(y,s([h])),y.push(g),f&&y.push.apply(y,s([f])),"string"==typeof d?r.splice.apply(r,[c,1].concat(y)):d.content=y}}else d.content&&s(d.content)}return r}(a.tokens)}}}})}(Prism)},806726:(e,t,a)=>{var o={"./":202885};function i(e){var t=n(e);return a(t)}function n(e){if(!a.o(o,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return o[e]}i.keys=function(){return Object.keys(o)},i.resolve=n,e.exports=i,i.id=806726},616500:(e,t,a)=>{var o={"./":202885};function i(e){var t=n(e);return a(t)}function n(e){if(!a.o(o,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return o[e]}i.keys=function(){return Object.keys(o)},i.resolve=n,e.exports=i,i.id=616500},139642:e=>{"use strict";var t=function(){var e=function(){};function t(e,t){Array.isArray(e)?e.forEach(t):null!=e&&t(e,0)}function a(e){for(var t={},a=0,o=e.length;a "));var r={},c=e[o];if(c){function d(t){if(!(t in e))throw new Error(o+" depends on an unknown component "+t);if(!(t in r))for(var s in i(t,n),r[t]=!0,a[t])r[s]=!0}t(c.require,d),t(c.optional,d),t(c.modify,d)}a[o]=r,n.pop()}}return function(e){var t=a[e];return t||(i(e,o),t=a[e]),t}}function i(e){for(var t in e)return!0;return!1}return function(n,s,r){var c=function(e){var t={};for(var a in e){var o=e[a];for(var i in o)if("meta"!=i){var n=o[i];t[i]="string"==typeof n?{title:n}:n}}return t}(n),d=function(e){var a;return function(o){if(o in e)return o;if(!a)for(var i in a={},e){var n=e[i];t(n&&n.alias,(function(t){if(t in a)throw new Error(t+" cannot be alias for both "+i+" and "+a[t]);if(t in e)throw new Error(t+" cannot be alias of "+i+" because it is a component.");a[t]=i}))}return a[o]||o}}(c);s=s.map(d),r=(r||[]).map(d);var l=a(s),m=a(r);s.forEach((function e(a){var o=c[a];t(o&&o.require,(function(t){t in m||(l[t]=!0,e(t))}))}));for(var p,u=o(c),b=l;i(b);){for(var h in p={},b){var g=c[h];t(g&&g.modify,(function(e){e in m&&(p[e]=!0)}))}for(var f in m)if(!(f in l))for(var y in u(f))if(y in l){p[f]=!0;break}for(var k in b=p)l[k]=!0}var v={getIds:function(){var e=[];return v.load((function(t){e.push(t)})),e},load:function(t,a){return function(t,a,o,i){var n=i?i.series:void 0,s=i?i.parallel:e,r={},c={};function d(e){if(e in r)return r[e];c[e]=!0;var i,l=[];for(var m in t(e))m in a&&l.push(m);if(0===l.length)i=o(e);else{var p=s(l.map((function(e){var t=d(e);return delete c[e],t})));n?i=n(p,(function(){return o(e)})):o(e)}return r[e]=i}for(var l in a)d(l);var m=[];for(var p in c)m.push(r[p]);return s(m)}(u,l,t,a)}};return v}}();e.exports=t},892703:(e,t,a)=>{"use strict";var o=a(150414);function i(){}function n(){}n.resetWarningCache=i,e.exports=function(){function e(e,t,a,i,n,s){if(s!==o){var r=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw r.name="Invariant Violation",r}}function t(){return e}e.isRequired=e;var a={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:n,resetWarningCache:i};return a.PropTypes=a,a}},45697:(e,t,a)=>{e.exports=a(892703)()},150414:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},364448:(e,t,a)=>{"use strict";var o=a(667294),i=a(363840);function n(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,a=1;a