Skip to content

Instantly share code, notes, and snippets.

@m0n0x41d
Created November 8, 2023 06:40
Show Gist options
  • Save m0n0x41d/2d0cc002153e99e44c1ff8fd8470891f to your computer and use it in GitHub Desktop.
Save m0n0x41d/2d0cc002153e99e44c1ff8fd8470891f to your computer and use it in GitHub Desktop.
software / system design blog post ideas list
Here is a list of some good software design and system design subjects I would like to cover in my blog:
https://wannahack.in/
Software design topics:
1) General post about system documentation - diagrams, ADR, event-modeling.
2) General post about Software Architecture - what it is? What it is not?
3) Agile in software development and architerure.
4) Abstract data type - how to design classes correctly and based on which abstractions (ooap1)
5) Class as a module / Class as a Type - how to expand hierarchy (ooap2)
6) Formal OOP, its limitations, relationship design (ooap2)
7 - 9) Bertrand Meyer Modular Design Methodology (ooap3)
10) Cyclomatic complexity reduction as a software design method
11) Medium sized post covering all mainstream design patterns with code examples and easy explanations.
12) Hails to the best design pattern - Visitor.
13) An overview post of common architectural approaches in software development
14) Three base rools of good and easy designing
15) Analysis of nine formal OOP techniques, significantly improving everything ("Object Calisthenics" by Jeff Bay)
16) How to write tests and understand TDD in sane way
17) How and why to get rid of the conditional operator
18) compromise between features and convenience
19) 7 properties of good, quality code
20) 7 non-obvious design mistakes
21) The interface should be simpler than the implementation. Should it? (antipattern)
22) The meaning of the data in the project and modeling of this meaning
23) 4 Universal API Design Principles
24) Formalization of the concept of system reliability
25) Modules matter most
--------------------------------------
System design general topics:
26) REST API vs. GraphQL
27) Coverage post about microservices and microservice architecture (pros and cons)
28) Monolith architecture (pros and cons)
29) What is K8S and when you do not need it
30) Cache - technology, solutions and strategies
31) What does API gateway do?
32) What is weebhooks?
33) CI/CD and development cycle
34) Clustering and Sharding
35) Transactions and Disturbuted Transactions
36) Message Brockers and Message Queues
37) N-tier architectures
38) Circuit breaker
39) Event sourcing vs Event-Driven Architecture
40) SQL vs NoSQL databases
42) Database Replication
43) Normalization and Denormalization
44) ACID and BASE consistency models
45) Load balancing
46) Forward Proxy vs. Reverse Proxy
47) How database indexes working
48) CAP theorem
49) PACELC Theorem
50) Geohashing and Quadtrees
51) Rate Limiting
52) Service Discovery
53) SLA, SLO, SLI
54) Disaster recovery
55) Virtual Machines (VMs) vs Containers
56) OAuth 2.0 and OpenID Connect (OIDC)
57) Single Sign-On (SSO)
58) SSL, TLS, mTLS
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment