QqodorsOct 14 · 6 min readThe HttpClient Mistake That Can Slow Down Your .NET APIAn API can run smoothly during development and still struggle when traffic increases. Requests that take milliseconds locally may become much slower in production. Before investigating the database orqodors.hashnode.dev
QqodorsSep 23 · 7 min readPagination in ASP.NET Core With EF Core: When Skip and Take Stop ScalingPagination is easy to add when an application has a small amount of data. Returning every record from an API may even work during early development. As the dataset grows, though, the database has moreqodors.hashnode.dev
SStepOneSep 21 · 8 min readHow I Built a Programming Language in C#: HydraScriptMost backend developers spend more time moving JSON than designing languages. I wanted a project that forced me below the framework layer, so I built the HydraScript programming language in vanilla C#steponeit.hashnode.dev
SStepOneSep 21 · 11 min readTop 10 Unexpected NuGet Packages for .NET DevelopersThe NuGet packages that save the most time are often not general-purpose frameworks. They solve one awkward production problem—geospatial formats, filesystem testability, regular-expression data genersteponeit.hashnode.dev
SStepOneSep 16 · 10 min readHow to Mock gRPC in .NET with WireMock.Net and ProtobufTL;DR WireMock.Net can mock gRPC, but its built-in mechanism requires .proto definitions at runtime and routes body matching through dynamically shaped JSON. That weakens compile-time checks and separsteponeit.hashnode.dev
SStepOneSep 16 · 12 min readVisitor Pattern in C#: acyclic, type-safe, no downcasts, no runtime checks with Visitor.NETVisitor becomes painful when a design gains type checks, downcasts, and boilerplate faster than it gains useful behavior. Those costs are especially visible in compilers, static analyzers, and other ssteponeit.hashnode.dev
SStepOneSep 15 · 13 min readSystem.Text.Json Polymorphism with Swagger in .NET 7Polymorphic JSON is not finished when System.Text.Json can serialize a derived type. The same discriminator contract must survive OpenAPI generation, server validation, client generation, and every sesteponeit.hashnode.dev
SStepOneSep 15 · 14 min readC# DIY Compiler with DDD and Clean ArchitectureCompiler projects are often presented as pipelines of algorithms: lexing, parsing, analysis, and code generation. Once the project grows, however, the harder problem is deciding which concepts own whisteponeit.hashnode.dev
SStepOneSep 12 · 7 min readJava vs. C#: Four Java Features C# Handles DifferentlyLanguage comparisons are most useful when they expose different design choices, not when they try to declare a winner. Java has several features that make certain modeling and one-off implementation tsteponeit.hashnode.dev
SStepOneSep 12 · 8 min readC# Generic Math: A Convex Hull with Static InterfacesStatic abstract interface members let a C# algorithm depend on operations instead of concrete numeric types. A convex-hull implementation is a good stress test: its coordinate type must support comparsteponeit.hashnode.dev