Skip to content

Commit

Permalink
updated docs
Browse files Browse the repository at this point in the history
  • Loading branch information
deepaksood619 committed Dec 24, 2023
1 parent 8364354 commit 72e216b
Show file tree
Hide file tree
Showing 35 changed files with 156 additions and 43 deletions.
4 changes: 4 additions & 0 deletions docs/about-me/ideas/creating-a-business-startup.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,10 @@ Startups are built by generalists and scaled by specialists.

https://youtu.be/Ndp_NnztS8U

[The single biggest reason why start-ups succeed | Bill Gross | TED - YouTube](https://www.youtube.com/watch?v=bNpx7gpSqbY&ab_channel=TED)

![why-start-up-succeed](../../media/Screenshot%202023-12-24%20at%202.47.43.PM.jpg)

## Startup / Company Culture

- Open office, no different rooms for managers/boss
Expand Down
2 changes: 1 addition & 1 deletion docs/about-me/ideas/society.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

https://www.scientificamerican.com/article/a-630-billion-word-internet-analysis-shows-people-is-interpreted-as-men

The son is rushed to the ER. The attending surgeon looks at the boy and says, 'I can't operate on this boy. He's my son! ' How can this be?”
The son is rushed to the ER. The attending surgeon looks at the boy and says, 'I can't operate on this boy. He's my son! ' How can this be?”

Fifty years after the riddle first received public attention, one likely answer proves elusive: the surgeon is the boy's mother.

Expand Down
4 changes: 2 additions & 2 deletions docs/ai/ml-algorithms/vector-embeddings.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,8 @@ In the context of vector embeddings, yes, embeddings and vectors are the same th

1. Recommendation systems (i.e. Netflix-style if-you-like-these-movies-you’ll-like-this-one-too)
2. All kinds of search
1. Text search (like Google Search)
2. Image search (like Google Reverse Image Search)
1. Text search (like Google Search)
2. Image search (like Google Reverse Image Search)
3. Chatbots and question-answering systems
4. Data preprocessing (preparing data to be fed into a machine learning model)
5. One-shot/zero-shot learning (i.e. machine learning models that learn from almost no training data)
Expand Down
4 changes: 4 additions & 0 deletions docs/algorithms/complex-systems/game-theory.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,3 +106,7 @@ https://en.wikipedia.org/wiki/Game_theory
[Game Theory: The Science of Decision-Making](https://www.youtube.com/watch?v=MHS-htjGgSY)

https://www.freecodecamp.org/news/introduction-to-evolutionary-game-theory

[Simulating the Evolution of Teamwork - YouTube](https://youtu.be/TZfh8hpJIxo?si=-7deIyM-Ub4MR2ic)

![](../../media/Screenshot%202023-12-24%20at%202.49.25.PM.jpg)
24 changes: 24 additions & 0 deletions docs/cloud/aws/security-identity-compliance/iam.md
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,30 @@ To use an IdP, you create an IAM identity provider entity to establish a trust r

https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers.html

## PIM / PAM

- PIM - Privileged Identity Management
- PAM - Privileged Access Management

Almost every organization uses [identity and access management (IAM)](https://www.strongdm.com/iam) strategies or tools as part of its security practices. IAM is the overarching term to describe how companies manage user identities, authenticate users, and control access to company resources. Privileged identity management (PIM) and privileged access management (PAM) are [subsets of IAM](https://www.strongdm.com/blog/iam-vs-pam-difference).

PIM and PAM address how companies manage who can access a company’s most critical resources, like servers, databases, applications, and Kubernetes clusters. They operate under the [principle of least privilege](https://www.strongdm.com/blog/principle-of-least-privilege) to limit who and how many users can access secure systems and the sensitive data stored within.

### PIM

- Emphasizes resource management
- Focuses on which user identities receive which access rights
- Determine the parameters of what access is necessary for each user identity based on certain roles or attributes
- May focus on distributing access to prevent superusers or admins from having too much power

### PAM

- Emphasizes securing resources by ensuring only certain validated identities can access those resources
- Focuses on monitoring capabilities to prevent unauthorized access
- Determines how to validate user identities, provide secure access to resources, and provision just-in-time escalated access for users that would not normally have access

[PIM vs. PAM Security: Understanding the Difference | StrongDM](https://www.strongdm.com/blog/pim-vs-pam)

## Others

[The Next Evolution in AWS Single Sign-On | AWS News Blog](https://aws.amazon.com/blogs/aws/the-next-evolution-in-aws-single-sign-on/)
4 changes: 2 additions & 2 deletions docs/cloud/others/vmware.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ The VMware ESXi architecture mainly consists of VMkernel and the processes that

#### VMkernel

VMkernel is technically an operating system. Like other operating systems, VMkernel creates and controls processes, controls hardware devices on the server, uses a file system, manages application resources, and so on. Its main function, however, is to support virtual machines.
VMkernel is technically an operating system. Like other operating systems, VMkernel creates and controls processes, controls hardware devices on the server, uses a file system, manages application resources, and so on. Its main function, however, is to support virtual machines.

The main processes that run on VMkernel include the following.

Expand All @@ -73,4 +73,4 @@ The CIM system provides an interface for remote applications so that they can ac

[What Is the VMware ESXi Server and Its Role in the VMware Suite?](https://www.parallels.com/blogs/ras/vmware-esxi/)

[What is VMware ESXi? - Definition from TechTarget.com](https://www.techtarget.com/searchvmware/definition/VMware-ESXi)
[What is VMware ESXi? - Definition from TechTarget.com](https://www.techtarget.com/searchvmware/definition/VMware-ESXi)
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,15 @@ Give tech talk - Learning + Note taking + Zettlekasten - Obsidian / Onenote + Do
- https://about.gitlab.com/2019/08/27/tyranny-of-the-clock
- https://fremtidensuddannelser.dk/en
- [Stack Overflow Blog - Essays, opinions, and advice on the act of computer programming from Stack Overflow.](https://stackoverflow.blog/)
- Netflix TechBlog
- Uber Blog
- Cloudflare Blog
- Engineering at Meta
- LinkedIn Engineering
- Discord Blog
- AWS Architecture
- Slack Engineering
- Stripe Blog

## Repositories

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,10 @@ https://www.slideshare.net/billkarwin/extensible-data-modeling

[Piggy | Mobile Content Creator 🐷](https://piggy.to/)

### Ideas

How to be successful in tech, things that should have been taught but haven't. For normal people. Huge arbitrage option.

## Tech Thursdays

## Icebreakers
Expand Down
8 changes: 6 additions & 2 deletions docs/computer-science/security/authentication/intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@ https://auth0.com/learn/multifactor-authentication

## Types of Authentication

![rest-api-authentication-methods](../../../media/Pasted%20image%2020231224135903.png)

- Cookie-Based authentication
- Token-Based authentication
- Third party access(OAuth, API-token)
Expand Down Expand Up @@ -138,9 +140,11 @@ https://duo.com/blog/the-beer-drinkers-guide-to-saml

[Single Sign On Authentication](https://auth0.com/blog/what-is-and-how-does-single-sign-on-work/) provides your users with a seamless authentication experience when they navigate either through the applications you have built and/or third party apps. That is once you log into one of these applications, you won't have to enter your credentials again when entering another one, as you will be automatically logged in all of them, regardless of the platform, technology, or domain. Don't make your internal employees nor your external users go through the hassle of maintaining and remembering yet another credential.

Single Sign On works by having acentral server, which all the applications trust. When you login for the first time a cookie gets created on this central server. Then, whenever you try to access a second application, you get redirected to the central server, if you already have a cookie there, you will get redirected directly to the app with a token, without login prompts, which means you're already logged in.
Single Sign On works by having a central server, which all the applications trust. When you login for the first time a cookie gets created on this central server. Then, whenever you try to access a second application, you get redirected to the central server, if you already have a cookie there, you will get redirected directly to the app with a token, without login prompts, which means you're already logged in.

For example, Google implements Single Sign On in its services. Google's central server is [https://accounts.google.com](https://accounts.google.com/). Once you are logged in this server, you will be able to access Gmail, Youtube, and Google Docs without entering your credentials again.

For example, Google implements Single Sign On in its services. Google's central server is [https://accounts.google.com](https://accounts.google.com/). Once you are logged in this server, you will be able to accessGmail, Youtube, andGoogle Docswithout entering your credentials again.
![how-does-sso-work](../../../media/Pasted%20image%2020231224144602.png)

## IAM - Identity and Access Management

Expand Down
4 changes: 4 additions & 0 deletions docs/computer-science/security/tools.md
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,10 @@ https://snyk.io

[Application Security Testing Company | Software Security Testing Solutions | Checkmarx](https://checkmarx.com/)

[Cloud Security Platform | GCP | AWS | Cloudanix](https://www.cloudanix.com/)

[WALLIX | Cybersecurity Simplified | Access Security Solutions](https://www.wallix.com/)

## Others

[Security / Identity / Compliance](cloud/aws/security-identity-compliance/intro.md)
22 changes: 16 additions & 6 deletions docs/computer-science/system-design/intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,10 @@ Systems design is the process of defining the [architecture](https://en.wikipedi

1. Features
2. Define APIs
3. Availability (CAP Theorem)

- Consistency
- Availability, and
- Partition Tolerance

3. CAP Theorem
- Consistency
- Availability, and
- Partition Tolerance
4. Latency Performance (If customer facing application, then latency matters)
5. Scalability (Add more users and requests)
6. Durability (Data is not lost or compromised)
Expand Down Expand Up @@ -129,6 +127,18 @@ Containers - is a way of running your applications and its dependencies in an is

Kafka clients tend to be "thick" and have a lot of complexity. That is, they do a lot because the broker is designed to be simple. That's my guess as to why there are so few native client libraries up to par with the Java client. NATS Streaming clients, on the other hand, are relatively "thin" because the server does more. We end up just pushing the complexity around based on our design decisions, but one can argue that the [smart client and dumb server](https://bravenewgeek.com/smart-endpoints-dumb-pipes/) is a more scalable approach.

### Availability

|**Nines**|**Percent**|**Downtime/Year**|**σ Level**|
|---|---|---|---|
|4|99.99%|52.596 minutes||
|5|99.999%|5.2596 minutes|-|
|6|99.9999%|31.5576 seconds||
|7|99.99999%|3.15576 seconds|-|
|8|99.999999%|315.6 milliseconds||

[5 9s (99.999%) or higher scenario with a recovery time under one minute - Reliability Pillar](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/s-99.999-or-higher-scenario-with-a-recovery-time-under-1-minute.html)

[System Design](https://www.youtube.com/playlist?list=PLkQkbY7JNJuBoTemzQfjym0sqbOHt5fnV)

## ADR - Architecture Design Record
Expand Down
1 change: 1 addition & 0 deletions docs/computer-science/testing/tools.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ https://github.com/google/googletest
- REST Assured (REST Test Tool)
- Mockito (Mocking)
- JUnit
- [Getting Started with FitNesse - DZone Refcardz](https://dzone.com/refcardz/getting-started-fitnesse)

## REST Assured

Expand Down
4 changes: 4 additions & 0 deletions docs/databases/nosql-databases/redis/intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -200,3 +200,7 @@ https://github.com/antirez/redis
[The Bucket Pattern: NoSQL Data Modeling with Redis Stack](https://www.youtube.com/watch?v=5m4YgClPKCg)

[The Revision Pattern: NoSQL Data Modeling](https://www.youtube.com/watch?v=AtPcQ-jpP6M)

[Redis Can Do More Than Caching - ByteByteGo Newsletter](https://blog.bytebytego.com/p/redis-can-do-more-than-caching)

[The 6 Most Impactful Ways Redis is Used in Production Systems](https://blog.bytebytego.com/p/the-6-most-impactful-ways-redis-is)
8 changes: 5 additions & 3 deletions docs/databases/nosql-databases/redis/redis-concepts.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,19 +108,21 @@ https://redis.io/commands/scan
- If you wish, you can disable persistence completely, if you want your data to just exist as long as the server is running.
- It is possible to combine both AOF and RDB in the same instance. Notice that, in this case, when Redis restarts the AOF file will be used to reconstruct the original dataset since it is guaranteed to be the most complete.

## AOF - Append Only File
![redis-persistance](../../../media/Pasted%20image%2020231224140113.png)

### AOF - Append Only File

It's the change-log style persistent format.

AOF is actually a persistence technique in which an RDB file is generated once and all the data is appended to it as it comes

## RDB - Redis Database Backup
### RDB - Redis Database Backup

It's the snapshot style persistence format.

RDB file is a dump of all user data stored in an internal, compressed serialization format at a particular timestamp which is used for point-in-time recovery (recovery from a timestamp).

## Compress AOF
### Compress AOF

BGREWRITEAOF

Expand Down
21 changes: 12 additions & 9 deletions docs/databases/sql-databases/mysql/sql-mysql-tools.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,15 @@

https://www.percona.com/doc/percona-monitoring-and-management/index.html

## MySQL Diagnostic Manager (Monyog) - https://www.webyog.com/product/monyog
## MySQL Diagnostic Manager (Monyog)

https://www.eversql.com/top-5-mysql-monitoring-tools
[Top 5 MySQL Monitoring tools 2021](https://www.eversql.com/top-5-mysql-monitoring-tools)

[Monyog | Monitor MySQL Databases Configuration in Real-Time | Webyog](https://www.webyog.com/product/monyog)

## Testing

## mysqlslap
### mysqlslap

It's a benchmarking tool that can help DBAs and developers load test their database servers.
mysqlslap can emulate a large number of client connections hitting the database server at the same time. The load testing parameters are fully configurable and the results from different test runs can be used to fine-tune database design or hardware resources.
Expand All @@ -19,17 +21,17 @@ https://www.digitalocean.com/community/tutorials/how-to-measure-mysql-query-perf

## Optimizations

## MySQLTuner
### MySQLTuner

https://github.com/major/MySQLTuner-perl

https://github.com/pdufault/mysqlfragfinder/blob/master/mysqlfragfinder.sh

## Mysqlreport
### Mysqlreport

Mysqlreport transforms the values from SHOW STATUS into an easy-to-read report that provides an in-depth understanding of how well MySQL is running. mysqlreport is a better alternative (and practically the only alternative) to manually interpreting SHOW STATUS.

## percona-toolkit
### percona-toolkit

- Verify MySQL replication integrity by checking source and replica data consistency
- Efficiently archive rows
Expand Down Expand Up @@ -122,13 +124,13 @@ https://www.percona.com/doc/percona-toolkit/3.0/pt-online-schema-change.html- [p

https://www.percona.com/software/database-tools/percona-toolkit

## Event Reduce
### Event Reduce

An algorithm to optimize database queries that run multiple times

https://github.com/pubkey/event-reduce

## SQLCheck
### SQLCheck

SQL anti-patterns can slow down queries, but often it takes experienced DBAs and developers poring over code to identify and resolve them.

Expand Down Expand Up @@ -177,6 +179,7 @@ https://www.infoworld.com/article/3241730/top-5-open-source-tools-for-mysql-admi
https://jonlabelle.com/snippets/view/shell/mysql-database-maintenance-script

Backup + Optimize - https://github.com/mmerian/MySQL-Maint/blob/master/mysql_maint.sh

InnoDB stores data using a page-allocation method and does not suffer from fragmentation in the same way that legacy storage engines (such as MyISAM) will. When considering whether or not to run optimize, consider the workload of transactions that your server will process:

- Some level of fragmentation is expected. InnoDB only fills pages 93% full, to leave room for updates without having to split pages.
Expand All @@ -186,7 +189,7 @@ InnoDB stores data using a page-allocation method and does not suffer from fragm

## Orchestrator

orchestratoris a MySQL high availability and replication management tool, runs as a service and provides command line access, HTTP API and Web interface.
orchestrator is a MySQL high availability and replication management tool, runs as a service and provides command line access, HTTP API and Web interface.

https://github.com/openark/orchestrator

Expand Down
2 changes: 1 addition & 1 deletion docs/devops/devops-intro/disaster-recovery.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ The acceptable amount of data loss measured in time. For example, if a disaster

## PITR - Point In Time Recovery

Point-in-time recovery** (PITR) in the context of [computers](https://en.wikipedia.org/wiki/Computer) involves systems whereby an administrator can restore or recover a set of data or a particular setting from a time in the past
Point-in-time recovery (PITR) in the context of [computers](https://en.wikipedia.org/wiki/Computer) involves systems whereby an administrator can restore or recover a set of data or a particular setting from a time in the past

## Recovery

Expand Down
2 changes: 2 additions & 0 deletions docs/devops/ides/youtube-podcasts-magazine-apps.md
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,7 @@

- RM Transit
- The School of life
- [Medlife Crisis - YouTube](https://youtube.com/@MedlifeCrisis?si=vmOmOUXV_TZoBNyW)

## Yearly

Expand Down Expand Up @@ -334,6 +335,7 @@
- Healthcare triage
- The Science of Change [https://podcastaddict.com/podcast/the-science-of-change/4496415](https://podcastaddict.com/podcast/the-science-of-change/4496415)
- Business Breakdowns [https://podcastaddict.com/podcast/business-breakdowns/4400688](https://podcastaddict.com/podcast/business-breakdowns/4400688)
- The rational reminder podcast

https://www.freecodecamp.org/news/best-tech-podcasts-for-software-developers

Expand Down
8 changes: 8 additions & 0 deletions docs/frontend/others/nodejs/libraries.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,14 @@ Sequelize is a modern TypeScript and Node.js ORM for Oracle, Postgres, MySQL, Ma
- React devtools inline
- Console feed

## BullMQ

Message Queue and Batch processing for NodeJS and Python based on Redis

[BullMQ - Background Jobs processing and message queue for NodeJS | BullMQ](https://bullmq.io/)

[GitHub - taskforcesh/bullmq: BullMQ - Message Queue and Batch processing for NodeJS and Python based on Redis](https://github.com/taskforcesh/bullmq)

## Others

[responsive-images-generator - npm](https://www.npmjs.com/package/responsive-images-generator)
Expand Down
3 changes: 0 additions & 3 deletions docs/frontend/others/nodejs/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,8 @@ http://pm2.keymetrics.io
## Difference between Node.js and PHP

1. PHP is powered by Zend engine whereas Node.js is powered by Google's V8 JavaScript engine.

2. PHP is synchronous while Node.js is asynchronous.

3. PHP is slower while Node.js is quicker.

4. PHP has a ready to install feature to use it on the server side whereas Node.js is a runtime environment for JavaScript on the server side.

## NPM
Expand Down
12 changes: 6 additions & 6 deletions docs/frontend/others/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,14 @@
- [Frontend Frameworks](frontend-frameworks)
- [Static Site Generators](static-site-generators)
- [NextJS](nextjs/readme.md)
- [data-fetching](frontend/others/nextjs/data-fetching.md)
- [others](frontend/others/nextjs/others.md)
- [data-fetching](frontend/others/nextjs/data-fetching.md)
- [others](frontend/others/nextjs/others.md)
- [Gatsby](gatsby)
- [Docusaurus](docusaurus)
- [Nodejs](nodejs/readme.md)
- [Nodejs Frameworks](nodejs/nodejs-frameworks)
- [npm Commands](nodejs/npm-commands)
- [Libraries](nodejs/libraries)
- [Nodejs Frameworks](nodejs/nodejs-frameworks)
- [npm Commands](nodejs/npm-commands)
- [Libraries](nodejs/libraries)
- [NestJS](nestjs/readme.md)
- [Documentation](nestjs/documentation)
- [Documentation](nestjs/documentation)
- [Angular JS](angularjs/readme.md)
Loading

0 comments on commit 72e216b

Please sign in to comment.