CLAUDE.md โ€” Blog Post Creation Guidelines

Post File Naming Rules

When creating a new post file under _posts/, the filename must follow these rules to avoid invalid path errors on Windows during git pull.

Forbidden characters in filenames

CharacterReasonReplacement
: (colon)Invalid on Windowsremove or replace with -
? (question mark)Invalid on Windowsremove
/ (slash)Creates unintended nested directoriesreplace with -
\ (backslash)Invalid on Windowsreplace with -
* < > " \|Invalid on Windowsremove

Example

Title in front matter (special characters allowed):

title: "Transformer ์•„ํ‚คํ…์ฒ˜์˜ ํ•ต์‹ฌ: ์…€ํ”„ ์–ดํ…์…˜(Self-Attention)์˜ ์›๋ฆฌ"

Filename (special characters must be removed/replaced):

# Bad โ€” causes git pull error
2025-11-13-transformer-์•„ํ‚คํ…์ฒ˜์˜-ํ•ต์‹ฌ:-์…€ํ”„-์–ดํ…์…˜(self-attention)์˜-์›๋ฆฌ.md

# Good
2025-11-13-transformer-์•„ํ‚คํ…์ฒ˜์˜-ํ•ต์‹ฌ-์…€ํ”„-์–ดํ…์…˜(self-attention)์˜-์›๋ฆฌ.md

More examples:

Original title fragmentFilename fragment
๋ฌด์—‡์ธ๊ฐ€?๋ฌด์—‡์ธ๊ฐ€
ํ•˜๋Š”๊ฐ€?)ํ•˜๋Š”๊ฐ€)
big-o ํ‘œ๊ธฐ๋ฒ•: ์‹œ๊ฐ„ ๋ณต์žก๋„big-o-ํ‘œ๊ธฐ๋ฒ•-์‹œ๊ฐ„-๋ณต์žก๋„
CI/CD ํŒŒ์ดํ”„๋ผ์ธcicd-ํŒŒ์ดํ”„๋ผ์ธ or ci-cd-ํŒŒ์ดํ”„๋ผ์ธ
TCP/IP 4๊ณ„์ธตtcpip-4๊ณ„์ธต or tcp-ip-4๊ณ„์ธต
๋น„๋™๊ธฐ I/O๋น„๋™๊ธฐ-io
HTTP/1.1, HTTP/2http-1.1-http-2

Checklist before saving a new post file

  • Filename contains no : ? / \ * < > " |
  • Filename format: YYYY-MM-DD-slug.md
  • title: in front matter may still contain the original special characters for display

Category Slugs

The category: field in post front matter must use the exact slugs below. Do NOT use the old -ai, -backend, etc. values โ€” they cause 404 errors.

DMS sub-categories

Title shown in sidebarSlug to use in category:
AIdms-ai
Frontenddms-frontend
Backenddms-backend
Devopsdms-devops
Clouddms-cloud
DSAdms-dsa
OSdms-os
Networkdms-network
Databasedms-database

Rule: DMS sub-category slugs always follow the pattern dms-<topic>.

Post Front Matter Template

---
layout: post
title: "[Daily morning study] ์ œ๋ชฉ (ํŠน์ˆ˜๋ฌธ์ž ํ—ˆ์šฉ)"
description: >
  #daily morning study
category: 
    - dms
    - dms-ai        # โ† use dms-<topic> slug from the table above
hide_last_modified: true
---

Duplicate Post Prevention

Before writing a new post, always check existing posts to avoid duplicate topics.

# Check existing post titles
ls _posts/dms/-database/
ls _posts/dms/-ai/
# (check the relevant category directory)

Rules

  • Do NOT write a post whose core topic is already covered by an existing post.
  • If a related post exists, choose a clearly different angle or a more specific subtopic.
  • Redis posts already exist covering: data structures, caching strategies (Cache-Aside, Write-Through, Write-Behind), cache invalidation, TTL, eviction policy, persistence (RDB/AOF).

Bad examples (duplicate)

Existing postBad new post (too similar)
Redis ์บ์‹ฑ ์ „๋žต๊ณผ ํ•ต์‹ฌ ์ž๋ฃŒ๊ตฌ์กฐRedis ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ์™€ ์บ์‹ฑ ์ „๋žต โ† same content
Redis ์บ์‹œ ์ „๋žต (Cache-Asideโ€ฆ)Redis ์บ์‹œ ์ „๋žต ์ •๋ฆฌ โ† same content

Good examples (distinct angle)

Existing postGood new post (different angle)
Redis ์บ์‹ฑ ์ „๋žตRedis Pub/Sub๊ณผ Stream ํ™œ์šฉ
Redis ๋ฐ์ดํ„ฐ ๊ตฌ์กฐRedis Cluster ๊ตฌ์„ฑ๊ณผ Failover

Already Covered Topics (as of 2026-04)

Check these before picking a new topic. Do NOT repeat these.

dms-ai

  • RAG (Retrieval-Augmented Generation) ๊ฐœ๋…๊ณผ ์ž‘๋™ ๋ฐฉ์‹
  • LLM ํŒŒ์ธํŠœ๋‹๊ณผ ํ”„๋กฌํ”„ํŠธ ์—”์ง€๋‹ˆ์–ด๋ง ์ฐจ์ด์ 
  • Transformer ์•„ํ‚คํ…์ฒ˜์™€ ์…€ํ”„ ์–ดํ…์…˜ ์›๋ฆฌ
  • Vector Database ๊ฐœ๋…๊ณผ Embedding ๊ด€๊ณ„

dms-frontend

  • TypeScript Utility Types (Partial, Pick, Omit)
  • React Server Components (RSC) ๊ฐœ๋…๊ณผ ์žฅ์ 
  • Next.js App Router vs Pages Router
  • Svelte / SvelteKit๊ฐ€ React์™€ ๋‹ค๋ฅธ ์ 
  • WebAssembly (WASM) ๊ฐœ๋…๊ณผ ์‚ฌ์šฉ ์‚ฌ๋ก€

dms-backend

  • Node.js ์ด๋ฒคํŠธ ๋ฃจํ”„์™€ ๋น„๋™๊ธฐ I/O
  • gRPC์™€ REST API ์ฐจ์ด์ 
  • Microservice Architecture (MSA) ์žฅ๋‹จ์ 
  • Go ๊ณ ๋ฃจํ‹ด๊ณผ ์ฑ„๋„
  • Serverless ์•„ํ‚คํ…์ฒ˜์™€ AWS Lambda

dms-devops

  • Docker์™€ Kubernetes ์—ญํ•  ์ฐจ์ด
  • Ansible๊ณผ Terraform ์ฐจ์ด (CM vs Provisioning)
  • Prometheus์™€ Grafana ๋ชจ๋‹ˆํ„ฐ๋ง
  • Terraform IaC
  • Jenkins vs GitHub Actions
  • Observability 3์š”์†Œ (Metrics, Tracing, Logging)
  • GitHub Actions CI/CD ํŒŒ์ดํ”„๋ผ์ธ

dms-cloud

  • IaaS, PaaS, SaaS ์ฐจ์ด์ 
  • VPC ๊ฐœ๋…๊ณผ ์„œ๋ธŒ๋„ท, ๋ผ์šฐํŒ…
  • AWS IAM ์ค‘์š”์„ฑ
  • ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ ์ข…๋ฅ˜์™€ ์ž‘๋™ ๋ฐฉ์‹ (L4 vs L7)
  • CDN ์ž‘๋™ ์›๋ฆฌ์™€ ์žฅ์ 
  • Auto Scaling ๊ทธ๋ฃน ์›๋ฆฌ
  • AWS EC2, S3, RDS ๊ธฐ๋ณธ ๊ฐœ๋…
  • AWS, GCP, Azure 3์‚ฌ ๋น„๊ต

dms-dsa

  • B-Tree์™€ B+Tree ์ฐจ์ด์ 
  • Big-O ํ‘œ๊ธฐ๋ฒ•, ์‹œ๊ฐ„/๊ณต๊ฐ„ ๋ณต์žก๋„
  • ๋™์  ๊ณ„ํš๋ฒ• (Dynamic Programming)
  • ํ•ด์‹œ ํ…Œ์ด๋ธ” ์ž‘๋™ ์›๋ฆฌ์™€ ์ถฉ๋Œ ํ•ด๊ฒฐ
  • BFS์™€ DFS ์ฐจ์ด์  ๋ฐ ํ™œ์šฉ

dms-os

  • ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ์™€ ํŽ˜์ด์ง•
  • Deadlock 4๊ฐ€์ง€ ๋ฐœ์ƒ ์กฐ๊ฑด๊ณผ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•
  • CPU ์Šค์ผ€์ค„๋ง ์•Œ๊ณ ๋ฆฌ์ฆ˜ (FIFO, SJF, Round Robin)
  • ํ”„๋กœ์„ธ์Šค์™€ ์Šค๋ ˆ๋“œ ์ฐจ์ด์ 
  • Mutex์™€ Semaphore ์ฐจ์ด

dms-network

  • TCP 3-way / 4-way Handshake
  • OSI 7๊ณ„์ธต๊ณผ TCP/IP 4๊ณ„์ธต ๋ชจ๋ธ
  • DNS ์ž‘๋™ ์›๋ฆฌ (Recursive vs Iterative)
  • HTTP/1.1, HTTP/2, HTTP/3 ์ฐจ์ด์ 
  • RESTful API 6๊ฐ€์ง€ ์›์น™

dms-database

  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ๋ฑ์Šค ์ž‘๋™ ์›๋ฆฌ์™€ ์žฅ๋‹จ์ 
  • ํŠธ๋žœ์žญ์…˜ ACID ์†์„ฑ
  • ํŠธ๋žœ์žญ์…˜ ๊ฒฉ๋ฆฌ ์ˆ˜์ค€ (Isolation Levels)
  • SQL vs NoSQL ๋น„๊ต
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ •๊ทœํ™” (1NF, 2NF, 3NF)
  • Redis ์บ์‹œ ์ „๋žต (Cache-Aside, Write-Through, Write-Behind, ์บ์‹œ ๋ฌดํšจํ™”)
  • Redis ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ์™€ ์บ์‹ฑ ์ „๋žต (์ž๋ฃŒ๊ตฌ์กฐ, TTL, Eviction, Persistence, Cluster)

Topic Diversity Guidelines

To keep the blog well-rounded, follow these rules when selecting a new topic:

Rotate across categories

Do not write posts in the same category on consecutive days. Aim for a rotation like: AI โ†’ Backend โ†’ Network โ†’ OS โ†’ DSA โ†’ Frontend โ†’ Devops โ†’ Cloud โ†’ Database โ†’ repeat.

Suggested next topics (not yet covered)

dms-ai

  • GPT ๋ชจ๋ธ ๋™์ž‘ ๋ฐฉ์‹๊ณผ ํ† ํฌ๋‚˜์ด์ € ์ดํ•ด
  • Diffusion ๋ชจ๋ธ ์›๋ฆฌ (Stable Diffusion)
  • AI Agent์™€ Tool Use ๊ฐœ๋…
  • RLHF (Reinforcement Learning from Human Feedback)
  • MCP (Model Context Protocol) ๊ฐœ๋…๊ณผ ํ™œ์šฉ

dms-frontend

  • ๋ธŒ๋ผ์šฐ์ € ๋ Œ๋”๋ง ๊ณผ์ • (Critical Rendering Path)
  • ๊ฐ€์ƒ DOM (Virtual DOM) ์ž‘๋™ ์›๋ฆฌ
  • CSS-in-JS vs CSS Modules ๋น„๊ต
  • ์›น ์„ฑ๋Šฅ ์ตœ์ ํ™” (Lazy Loading, Code Splitting)
  • PWA (Progressive Web App) ๊ฐœ๋…๊ณผ ๊ตฌํ˜„

dms-backend

  • JWT vs Session ์ธ์ฆ ๋ฐฉ์‹ ๋น„๊ต
  • ๋ฉ”์‹œ์ง€ ํ (Kafka, RabbitMQ) ๊ฐœ๋…๊ณผ ํ™œ์šฉ
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ปค๋„ฅ์…˜ ํ’€๋ง
  • API Rate Limiting ๊ตฌํ˜„ ๋ฐฉ๋ฒ•
  • WebSocket vs Server-Sent Events

dms-devops

  • Blue-Green ๋ฐฐํฌ์™€ Canary ๋ฐฐํฌ ์ „๋žต
  • Kubernetes HPA (Horizontal Pod Autoscaler)
  • Docker ์ด๋ฏธ์ง€ ์ตœ์ ํ™” (๋ฉ€ํ‹ฐ์Šคํ…Œ์ด์ง€ ๋นŒ๋“œ)
  • GitOps์™€ ArgoCD ๊ฐœ๋…
  • ์‹œํฌ๋ฆฟ ๊ด€๋ฆฌ (HashiCorp Vault, AWS Secrets Manager)

dms-cloud

  • AWS SQS, SNS ์ฐจ์ด์ ๊ณผ ํ™œ์šฉ
  • ํด๋ผ์šฐ๋“œ ๋น„์šฉ ์ตœ์ ํ™” ์ „๋žต
  • Serverless vs Container ๋น„๊ต
  • AWS Route 53๊ณผ DNS ๋ผ์šฐํŒ… ์ •์ฑ…
  • ๋ฉ€ํ‹ฐ ๋ฆฌ์ „ ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„

dms-dsa

  • ํŠธ๋ฆฌ ์ˆœํšŒ ์•Œ๊ณ ๋ฆฌ์ฆ˜ (Pre/In/Post-order)
  • ์ตœ๋‹จ ๊ฒฝ๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜ (Dijkstra, Bellman-Ford)
  • ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋น„๊ต (Quick, Merge, Heap Sort)
  • ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ฐœ๋…๊ณผ ์˜ˆ์‹œ
  • ์Šฌ๋ผ์ด๋”ฉ ์œˆ๋„์šฐ / ํˆฌ ํฌ์ธํ„ฐ ๊ธฐ๋ฒ•

dms-os

  • ๋ฉ”๋ชจ๋ฆฌ ๋‹จํŽธํ™”์™€ ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜
  • ํŒŒ์ผ ์‹œ์Šคํ…œ ๊ตฌ์กฐ (inode, ๋””๋ ‰ํ† ๋ฆฌ ํŠธ๋ฆฌ)
  • ์ธํ„ฐ๋ŸฝํŠธ์™€ ์‹œ์Šคํ…œ ์ฝœ ๋™์ž‘ ๋ฐฉ์‹
  • IPC (Inter-Process Communication) ๋ฐฉ๋ฒ•๋“ค
  • ์บ์‹œ ๋ฉ”๋ชจ๋ฆฌ ๊ณ„์ธต ๊ตฌ์กฐ (L1/L2/L3)

dms-network

  • HTTPS์™€ TLS ํ•ธ๋“œ์…ฐ์ดํฌ ๊ณผ์ •
  • ์›น์†Œ์ผ“ ํ”„๋กœํ† ์ฝœ ๋™์ž‘ ๋ฐฉ์‹
  • NAT์™€ ํฌํŠธ ํฌ์›Œ๋”ฉ
  • CORS ๊ฐœ๋…๊ณผ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•
  • ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ ์•Œ๊ณ ๋ฆฌ์ฆ˜ (Round Robin, Least Connections)

dms-database

  • Redis Pub/Sub๊ณผ Stream ํ™œ์šฉ
  • Redis Cluster ๊ตฌ์„ฑ๊ณผ Failover
  • PostgreSQL vs MySQL ๋น„๊ต
  • ์ƒค๋”ฉ(Sharding)๊ณผ ํŒŒํ‹ฐ์…”๋‹ ์ „๋žต
  • ORM์˜ N+1 ๋ฌธ์ œ์™€ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•