Blog
Mert Özen's blog posts on software development, backend, frontend, and DevOps.
Series
.NET Core Web API
36
Angular
31
JavaScript Basics
19
JavaScript Intermediate
18
JavaScript Advanced
16
TypeScript Basics
14
TypeScript Intermediate
14
TypeScript Advanced
12
Entity Framework Core
28
Dapper
16
Git & GitHub
29
Web Security (OWASP Top 10)
21
LLM Fundamentals
20
C# Fundamentals
20
Object-Oriented Programming in C#
16
C# Collections and Generics
11
LINQ
17
Asynchronous Programming in C#
17
Advanced C#
14
C# Versions
6
Solution Patterns
22
SOLID and Design Principles
12
Clean Code
13
Design Patterns
23
UML and Modeling
18
Introduction to Software Architecture
9
Clean, Onion and Hexagonal Architecture
8
Vertical Slice Architecture
6
Domain-Driven Design
12
Software Design
PART 10
Activity Diagrams: Actions, Decisions, Fork/Join, Swimlanes and Modeling an Approval Workflow
An activity diagram draws a workflow as steps, guarded decisions, parallelism with fork/join and swimlanes showing who does what; its semantics is token flow, so paths leaving a decision that do not meet in a merge get stuck in an implicit join. The post draws the HR Portal leave approval process with swimlanes, demonstrates the token rules with a small C# simulator and splits the flow into handlers.
7 Nov 2026
11 min
5
DevOps
PART 18
Git Stash: Setting Unfinished Work Aside
Saving unfinished work with git stash: -u for untracked files, named entries, list and show, apply versus pop, --staged and --index, the stash.index setting, conflicts during a pop, stash branch and the stash export/import commands from Git 2.51.
6 Nov 2026
10 min
8