Skip to content

ErhanCetin/engineering-notes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

Aşağıda, ilk commit’e koyabileceğin, sade ama profesyonel, proje fikrini ve kullanım amacını net anlatan bir README.md veriyorum. Teknik detayı boğmuyor; ama yazılımcı gözüyle güven veriyor.


# Engineering Notes

This repository is a **personal, structured knowledge base** for software engineering topics learned across different projects.

Its purpose is to **capture, organize, and retain technical knowledge** such as tech stacks, architectural decisions, design patterns, tools, and real-world lessons — and make them **always accessible online**.

---

## Why this exists

In real projects, engineers constantly learn:
- new technologies
- architectural patterns
- trade-offs
- production gotchas

However, most of this knowledge:
- gets forgotten over time
- is scattered across projects
- is hard to rediscover when needed again

This repository solves that by providing a **single, durable source of truth**.

---

## Core Principles

- **Markdown-first** – simple, portable, future-proof
- **Structured, not random notes**
- **Optimized for engineers**, not general note-taking
- **Low friction** to add new knowledge
- **Searchable and browsable as a website**
- **Free and vendor-independent**

---

## How it works

- Notes are written in **Markdown**
- Organized by **domain and topic**
- Automatically published as a **static website** using:
  - MkDocs
  - GitHub Pages
  - GitHub Actions

Any change pushed to `main` is automatically deployed.

---

## Repository Structure

engineering-notes/ ├─ docs/ │ ├─ index.md │ ├─ kafka/ │ ├─ spring/ │ ├─ architecture/ │ ├─ tools/ │ └─ patterns/ ├─ mkdocs.yml └─ README.md


Each folder represents a **knowledge domain**.

---

## Note Structure (Guideline)

Each note follows a consistent structure to improve retention and clarity:

What is it?

Short explanation

When to use?

Appropriate use cases

When NOT to use?

Common mistakes or anti-patterns

Key concepts

Important ideas or mechanisms

Example / Snippet

Code or pseudo-code

Trade-offs

Pros and cons

Real-world note

Why this mattered in a real project

Related

Links to other notes


This format ensures notes remain useful **months or years later**.

---

## Adding a new note

1. Create a Markdown file under the appropriate folder
2. Write the note (even minimal notes are acceptable)
3. Commit and push

Example:

```bash
docs/kafka/idempotent-consumer.md

Viewing the notes

The notes are published automatically as a website using GitHub Pages.

Once enabled, the site will be available at:

https://<github-username>.github.io/engineering-notes/

Features:

  • Full-text search
  • Sidebar navigation
  • Mobile-friendly
  • Dark mode

Intended Audience

  • Software engineers
  • Architects
  • Developers working across multiple projects
  • Anyone who wants to retain engineering knowledge long-term

This is a personal knowledge system, not a tutorial blog.


Status

This is a living repository. Notes evolve as understanding deepens and experience grows.


---

İstersen bir sonraki adımda:

- `mkdocs.yml` dosyasını **senin kullanım alışkanlığına göre** optimize edebilirim  
- Örnek **Kafka / Spring / Architecture** notları ekleyebilirim  
- Ya da bu yapıyı **AI destekli (commit / PR → otomatik not)** hale getirebiliriz  

Bir sonraki adımı sen söyle.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published