Skip to content
bojanveljanovski.com
posts
tags
reading list
about
Practices
5
Software Design
14
AI
1
DevOps
4
.NET
11
Data
6
What I keep fixing in AI-generated code
Apr 2026
How edit forms should load dropdown data
Apr 2026
Navigation properties make database calls invisible
Dec 2025
Git worktrees for parallel branch work
Dec 2025
Handling Enum Values as Strings in C# API Models
Oct 2025
Standardize Data at Write Time, Not Read Time
Oct 2025
Property Getters vs Get Methods: When to Use Which
Oct 2025
A Baseline CloudFormation Layout That I Keep Reusing
Oct 2025
The Static-Instance Singleton Pattern in Flutter
Oct 2025
Detecting Manual AWS Changes in CloudFormation Stacks
Oct 2025
What makes code hard to change
Apr 2025
Your system is an ETL pipeline
Apr 2025
Wrapping Google Sheets as a backend instead of migrating away from it
Apr 2025
Build the throwaway prototype first
Apr 2025
A loop that does five things is five problems
Apr 2025
Serilog Correlation IDs for background tasks in .NET Core
Mar 2025
Use enums over booleans for status fields
Oct 2024
Developer Command Snippets
Feb 2024
How to Use Pseudocode to Design Better Software - Working Example
Aug 2023
Overriding services ASP.NET Core integration tests using ConfigureTestServices
Aug 2023
Test-specific AppSettings configuration in ASP.NET Core integration tests
Aug 2023
Dynamic SQL queries: string concatenation vs SqlKata
Jan 2023
Type-safe appsettings configuration in .NET Core
Jan 2023
Solving the N+1 query problem
Jun 2018
How to Extend Select2 with Adapters
Oct 2017
Refactoring a Feature Envy Code
Jul 2017
ASP.NET MVC5 Feature Folders Structure
May 2016
How to Refactor Business Rules Using the Specification Pattern
Sep 2015
Rhino Security and StructureMap Integration Guide (Archive, 2015)
Jan 2015
.NET Database Development with FluentMigrator (Archive, 2014)
Dec 2014