41554 blogs · [ { "id": "01a08746-2e3f-7172-810b-052e9bf1d7e4", "title": "Funny, but not so funny, Buy Me a Coffee story", "url": "https://blog.codingmilitia.com/2026/06/04/buy-me-a-coffee-funny-but-not-so-funny-story/", "published_at": "2026-06-04T20:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6953a7b963e", "title": "[Video] On .NET Live - Shaving the outbox pattern yak", "url": "https://blog.codingmilitia.com/2026/05/04/shaving-the-outbox-pattern-yak/", "published_at": "2026-05-04T17:50:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6953ab6c6dd", "title": "Sometimes it's just better to load \"all\" the data", "url": "https://blog.codingmilitia.com/2026/02/15/sometimes-its-just-better-to-load-all-the-data/", "published_at": "2026-02-15T17:00:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6953b847c24", "title": "On professionalism, professional pride, career and ambition", "url": "https://blog.codingmilitia.com/2026/01/21/on-professionalism-professional-pride-career-and-ambition/", "published_at": "2026-01-21T19:25:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6953b9cf2bb", "title": "Adopting Problem Details for HTTP APIs", "url": "https://blog.codingmilitia.com/2025/07/15/adopting-problem-details-for-http-apis/", "published_at": "2025-07-15T14:00:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6953c291fa7", "title": "How I've been building APIs and microservices lately (feat. C# & .NET)", "url": "https://blog.codingmilitia.com/2025/06/11/how-ive-been-building-apis-and-microservices-lately-feat-csharp-dotnet/", "published_at": "2025-06-11T07:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6953c559bd8", "title": "Kubernetes API powered resource discovery (feat. K8s C# client)", "url": "https://blog.codingmilitia.com/2025/04/27/kubernetes-api-powered-resource-discovery/", "published_at": "2025-04-27T18:40:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6953c846aa8", "title": "Care about the domain, not about implementing all the patterns and principles under the sun", "url": "https://blog.codingmilitia.com/2024/12/16/care-about-the-domain-not-about-implementing-all-the-patterns-and-principles-under-the-sun/", "published_at": "2024-12-16T19:20:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6953d2b3765", "title": "Introducing OutboxKit", "url": "https://blog.codingmilitia.com/2024/12/03/introducing-outboxkit/", "published_at": "2024-12-03T08:45:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6953dc43a0a", "title": "Keeping an eye on cache hit ratio (feat. FusionCache, OpenTelemetry & friends)", "url": "https://blog.codingmilitia.com/2024/11/17/keeping-an-eye-on-cache-effectiveness-feat-fusioncache-opentelemetry/", "published_at": "2024-11-17T18:15:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6953ea99238", "title": "Testcontainers and Podman", "url": "https://blog.codingmilitia.com/2024/11/02/testcontainers-and-podman/", "published_at": "2024-11-02T21:45:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6953ef35225", "title": "Transactional outbox pattern meets distributed tracing and OpenTelemetry", "url": "https://blog.codingmilitia.com/2024/06/17/transactional-outbox-pattern-meets-distributed-tracing-and-opentelemetry/", "published_at": "2024-06-17T08:00:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6953fb9025d", "title": "Where are my traces? (weird .NET meets OpenTelemetry gotcha)", "url": "https://blog.codingmilitia.com/2024/05/13/where-are-my-traces-weird-dotnet-meets-opentelemetry-gotcha/", "published_at": "2024-05-13T07:55:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e695400e5d32", "title": "Primitive vs strongly typed dictionary keys (feat. frozen collections and BenchmarkDotNet)", "url": "https://blog.codingmilitia.com/2024/04/13/primitive-vs-strongly-typed-dictionary-keys-feat-frozen-collections-and-benchmarkdotnet/", "published_at": "2024-04-13T16:00:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954048008b", "title": "A .NET parallel Kafka consumer proof of concept (feat. Akka.NET and the actor model)", "url": "https://blog.codingmilitia.com/2024/01/08/a-dotnet-parallel-kafka-consumer-proof-of-concept-feat-akkadotnet-and-the-actor-model/", "published_at": "2024-01-08T19:00:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954130357e", "title": "Byte array as a dictionary key? Trying out some options", "url": "https://blog.codingmilitia.com/2023/12/06/byte-array-as-a-dictionary-key-trying-out-some-options/", "published_at": "2023-12-06T13:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e69541ade2d5", "title": "Observing .NET microservices with OpenTelemetry - logs, traces and metrics", "url": "https://blog.codingmilitia.com/2023/09/05/observing-dotnet-microservices-with-opentelemetry-logs-traces-metrics/", "published_at": "2023-09-05T07:10:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e695421ab7f8", "title": "\"Parse, don't validate\" and other type safety driven shenanigans (plus a C# wishlist)", "url": "https://blog.codingmilitia.com/2023/08/17/parse-dont-validate-and-other-type-safety-driven-shenanigans-plus-a-csharp-wishlist/", "published_at": "2023-08-17T08:00:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e69542ce1c8a", "title": "Enforce conventions (but don't go overboard) with architecture tests", "url": "https://blog.codingmilitia.com/2023/07/28/enforce-conventions-but-dont-go-overboard-with-architecture-tests/", "published_at": "2023-07-28T07:45:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e69542fb4289", "title": "From domain events to infrastructure - thinking out loud about possible approaches I don’t hate", "url": "https://blog.codingmilitia.com/2023/05/16/from-domain-events-to-infrastructure-thinking-out-loud-about-possible-approaches-i-dont-hate/", "published_at": "2023-05-16T07:20:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e69543a00054", "title": "Checking out EF Core inheritance options", "url": "https://blog.codingmilitia.com/2023/05/08/checking-out-ef-core-inheritance-options/", "published_at": "2023-05-08T07:25:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e69543b3e3f2", "title": "A reminder to consider that your context, isn’t the only context (.NET 8 TimeProvider edition)", "url": "https://blog.codingmilitia.com/2023/04/24/a-reminder-that-your-context-isnt-the-only-context-dotnet8-timeprovider-edition/", "published_at": "2023-04-24T07:45:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e69544451236", "title": "Contract first OpenAPI development (but still use Swagger UI with ASP.NET Core)", "url": "https://blog.codingmilitia.com/2023/04/02/contract-first-openapi-development-but-still-use-swagger-ui-with-asp.net-core/", "published_at": "2023-04-02T18:45:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e69545213d3b", "title": "Mapping ASP.NET Core minimal API endpoints with C# source generators", "url": "https://blog.codingmilitia.com/2023/01/31/mapping-aspnet-core-minimal-api-endpoints-with-csharp-source-generators/", "published_at": "2023-01-31T17:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e69545935959", "title": "The “insert specific tech here” developer: yay or nay?", "url": "https://blog.codingmilitia.com/2023/01/19/the-insert-specific-tech-here-developer-yay-or-nay/", "published_at": "2023-01-19T17:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e695462fa1ef", "title": "On résumé-driven development, FOMO and dismissing it", "url": "https://blog.codingmilitia.com/2022/11/07/on-resume-driven-development-fomo-and-dismissing-it/", "published_at": "2022-11-07T17:55:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e69547051804", "title": "Beware of records, with expressions and calculated properties", "url": "https://blog.codingmilitia.com/2022/09/01/beware-of-records-with-expressions-and-calculated-properties/", "published_at": "2022-09-01T17:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e69547c08b6b", "title": "[Video] Outbox meets change data capture - hooking into the Write-Ahead Log (feat. .NET, PostgreSQL & Kafka)", "url": "https://blog.codingmilitia.com/2022/07/27/outbox-meets-change-data-capture-hooking-into-the-write-ahead-log/", "published_at": "2022-07-27T18:45:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e69548626ae6", "title": "[Video] What's the point of async/await in an ASP.NET Core application?", "url": "https://blog.codingmilitia.com/2022/05/30/whats-the-point-of-async-await-in-an-aspnetcore-application/", "published_at": "2022-05-30T17:00:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e695495edf2c", "title": "[Video] Quick shout-out to DevToys", "url": "https://blog.codingmilitia.com/2022/05/03/quick-shout-out-to-devtoys/", "published_at": "2022-05-03T16:50:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954965386a", "title": "[Video] Polymorphic JSON Serialization (feat. .NET & System.Text.Json)", "url": "https://blog.codingmilitia.com/2022/04/13/polymorphic-json-serialization-feat-dotnet-system-text-json/", "published_at": "2022-04-13T18:45:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954a2fcedc", "title": "OpenAPI extensions and Swashbuckle", "url": "https://blog.codingmilitia.com/2022/02/21/openapi-extensions-and-swashbuckle/", "published_at": "2022-02-21T17:25:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954aa7154e", "title": "Array or object JSON deserialization (feat. .NET & System.Text.Json)", "url": "https://blog.codingmilitia.com/2022/01/31/array-or-object-deserialization/", "published_at": "2022-01-31T17:25:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954b28f88c", "title": "[Video] Outbox meets change data capture (feat. .NET, PostgreSQL, Kafka and Debezium)", "url": "https://blog.codingmilitia.com/2022/01/17/outbox-meets-change-data-capture-feat-dotnet-postgresql-kafka-debezium/", "published_at": "2022-01-17T17:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954b653373", "title": "Getting a complex type as a simple type from the query string in a ASP.NET Core API controller", "url": "https://blog.codingmilitia.com/2022/01/03/getting-complex-type-as-simple-type-query-string-aspnet-core-api-controller/", "published_at": "2022-01-03T18:00:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954c186c90", "title": "[Video] High-performance and compile-time logging source generation in .NET 6", "url": "https://blog.codingmilitia.com/2021/11/21/high-performance-and-compile-time-source-generation-dotnet-6/", "published_at": "2021-11-21T16:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954c242fb9", "title": "[Video] Exploring distributed tracing with ASP NET Core 6", "url": "https://blog.codingmilitia.com/2021/10/26/exploring-distributed-tracing-with-aspnet-core-6/", "published_at": "2021-10-26T17:45:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954c942348", "title": "[Video] Are ASP.NET Core Minimal APIs just for demos?", "url": "https://blog.codingmilitia.com/2021/08/17/are-aspnet-core-6-minimal-apis-just-for-demos/", "published_at": "2021-08-17T16:45:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954ca96806", "title": "Next level console apps with Spectre.Console", "url": "https://blog.codingmilitia.com/2021/07/27/next-level-console-apps-with-spectre-console/", "published_at": "2021-07-27T18:15:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954cbea4aa", "title": "Mistaking software for a finished product", "url": "https://blog.codingmilitia.com/2021/05/10/mistaking-software-for-a-finished-product/", "published_at": "2021-05-10T17:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954d6af4fb", "title": "Virtual as a code smell*", "url": "https://blog.codingmilitia.com/2021/04/07/virtual-as-a-code-smell/", "published_at": "2021-04-07T17:45:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954d9d8095", "title": "Setting up demos in Azure - Part 2: GitHub Actions", "url": "https://blog.codingmilitia.com/2021/03/14/setting-up-demos-in-azure-part-2-github-actions/", "published_at": "2021-03-14T15:00:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954e4b366f", "title": "Setting up demos in Azure - Part 1: ARM templates", "url": "https://blog.codingmilitia.com/2021/03/07/setting-up-demos-in-azure-part-1-arm-templates/", "published_at": "2021-03-07T09:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954e6aa484", "title": "Streamlining package versioning with MinVer", "url": "https://blog.codingmilitia.com/2021/01/24/streamlining-package-versioning-with-minver/", "published_at": "2021-01-24T15:00:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954ebfca41", "title": "Getting started with GitHub Actions", "url": "https://blog.codingmilitia.com/2020/12/22/getting-started-with-github-actions/", "published_at": "2020-12-22T17:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954f5563be", "title": "Going all-in with nullable reference types", "url": "https://blog.codingmilitia.com/2020/11/28/going-all-in-with-nullable-reference-types/", "published_at": "2020-11-28T10:00:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954fde3761", "title": ".NET Conf 2020 and .NET 5 links", "url": "https://blog.codingmilitia.com/2020/11/15/dotnet-conf-2020-and-dotnet-5-links/", "published_at": "2020-11-15T11:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6954ff5c47b", "title": "Setting up a build with NUKE", "url": "https://blog.codingmilitia.com/2020/10/24/2020-10-24-setting-up-a-build-with-nuke/", "published_at": "2020-10-24T18:00:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e695507dccf5", "title": "Shaking things up a bit - ASPF02O Outro", "url": "https://blog.codingmilitia.com/2020/09/21/shaking-things-up-a-bit-aspf02o-outro/", "published_at": "2020-09-21T10:00:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e69550b69928", "title": "Some comments, tips and rants about my path to Kubernetes certification", "url": "https://blog.codingmilitia.com/2020/09/07/some-comments-tips-rants-about-my-path-to-kubernetes-certification-ckad/", "published_at": "2020-09-07T17:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6955172c230", "title": "Event-driven integration #6 - Publishing events (feat. Apache Kafka) [ASPF02O|E045]", "url": "https://blog.codingmilitia.com/2020/08/18/aspnet-045-from-zero-to-overkill-event-driven-integration-06-publishing-events-feat-apache-kafka/", "published_at": "2020-08-18T10:00:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6955265562e", "title": "Microservices and correctly built distributed systems", "url": "https://blog.codingmilitia.com/2020/07/15/microservices-and-correctly-built-distributed-systems/", "published_at": "2020-07-15T17:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e69552b9e7d9", "title": "Event-driven integration #5 - Quick intro to Apache Kafka [ASPF02O|E044]", "url": "https://blog.codingmilitia.com/2020/06/09/aspnet-044-from-zero-to-overkill-event-driven-integration-05-quick-intro-to-apache-kafka/", "published_at": "2020-06-09T17:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e695537eb5bf", "title": "Event-driven integration #4 - Outbox publisher (feat. IHostedService & Channels) [ASPF02O|E043]", "url": "https://blog.codingmilitia.com/2020/05/07/aspnet-043-from-zero-to-overkill-event-driven-integration-04-outbox-publisher-feat-ihostedservice-channels/", "published_at": "2020-05-07T09:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e69553f04130", "title": "Event-driven integration #3 - Storing events in the outbox table [ASPF02O|E042]", "url": "https://blog.codingmilitia.com/2020/04/28/aspnet-042-from-zero-to-overkill-event-driven-integration-03-storing-events-in-the-outbox-table/", "published_at": "2020-04-28T16:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e69554d3b1da", "title": "Event-driven integration #2 - Inferring events from EF Core changes [ASPF02O|E041]", "url": "https://blog.codingmilitia.com/2020/04/20/aspnet-041-from-zero-to-overkill-event-driven-integration-inferring-events-from-efcore-changes/", "published_at": "2020-04-20T17:00:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e695557fc97f", "title": "Event-driven integration #1 - Intro to the transactional outbox pattern [ASPF02O|E040]", "url": "https://blog.codingmilitia.com/2020/04/13/aspnet-040-from-zero-to-overkill-event-driven-integration-transactional-outbox-pattern/", "published_at": "2020-04-13T16:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6955615a1b6", "title": "Event-driven integration - Overview [ASPF02O|E039]", "url": "https://blog.codingmilitia.com/2020/04/05/aspnet-039-from-zero-to-overkill-event-driven-integration-overview/", "published_at": "2020-04-05T10:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e6955648e6d5", "title": "More explicit domain error handling and fewer exceptions with Either and Error types [ASPF02O|E038]", "url": "https://blog.codingmilitia.com/2020/03/02/aspnet-038-from-zero-to-overkill-more-explicit-error-handling-with-either/", "published_at": "2020-03-02T18:30:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e695567f73dc", "title": "Better use of types - avoiding nulls with an Optional type [ASPF02O|E037]", "url": "https://blog.codingmilitia.com/2020/02/17/aspnet-037-from-zero-to-overkill-better-use-of-types-avoiding-nulls-with-optional-type/", "published_at": "2020-02-17T18:00:00+00:00" }, { "id": "01a08746-2e40-72ec-9538-e695573449cf", "title": "E036 - Making things more object oriented with rich domain entities - ASPF02O", "url": "https://blog.codingmilitia.com/2020/02/06/aspnet-036-from-zero-to-overkill-making-things-more-object-oriented-with-rich-domain-entities/", "published_at": "2020-02-06T19:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59c9ffbd5f78", "title": "A look at Building the Future 2020", "url": "https://blog.codingmilitia.com/2020/02/04/a-look-at-building-the-future-2020/", "published_at": "2020-02-04T18:45:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59c9ffc85121", "title": "E035 - Experimenting with (yet) another approach to data access organization - ASPF02O", "url": "https://blog.codingmilitia.com/2020/01/20/aspnet-035-from-zero-to-overkill-experimenting-with-yet-another-approach-to-data-access-organization/", "published_at": "2020-01-20T19:00:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca001cb7aa", "title": "E034 - Segregating use cases with MediatR - ASPF02O", "url": "https://blog.codingmilitia.com/2020/01/10/aspnet-034-from-zero-to-overkill-segregating-use-cases-with-mediatr/", "published_at": "2020-01-10T18:25:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca005a626e", "title": "E033 - Redesigning the API: Improving the internal architecture - ASPF02O", "url": "https://blog.codingmilitia.com/2019/12/20/aspnet-033-from-zero-to-overkill-redesigning-the-api-improving-the-internal-architecture/", "published_at": "2019-12-20T18:25:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca00b74eb9", "title": "Use POCOs to group data and logic - there's more to life than services and DTOs", "url": "https://blog.codingmilitia.com/2019/12/10/use-pocos-to-group-data-and-logic/", "published_at": "2019-12-10T20:00:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca0101d9d0", "title": "\"Equals\" and \"==\" are not... equal", "url": "https://blog.codingmilitia.com/2019/12/01/equals-and-equals-are-not-equal/", "published_at": "2019-12-01T18:00:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca01c2156a", "title": "Episode 032 - Upgrading to ASP.NET Core 3.0 - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/11/21/aspnet-032-from-zero-to-overkill-upgrading-to-aspnet-core-30/", "published_at": "2019-11-21T17:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca024d8df7", "title": "A year remote", "url": "https://blog.codingmilitia.com/2019/11/03/a-year-remote/", "published_at": "2019-11-03T16:45:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca029db242", "title": "Episode 031 - Some simple unit tests with xUnit - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/10/25/aspnet-031-from-zero-to-overkill-some-simple-unit-tests-with-xunit/", "published_at": "2019-10-25T17:00:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca02e33e81", "title": "Episode 030 - Analyzing performance with BenchmarkDotNet - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/10/08/aspnet-030-from-zero-to-overkill-analyzing-performance-with-benchmarkdotnet/", "published_at": "2019-10-08T16:45:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca0343a27b", "title": "Episode 029 - Simplifying the BFF with ProxyKit - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/09/11/aspnet-029-from-zero-to-overkill-simplifying-the-bff-with-proxykit/", "published_at": "2019-09-11T17:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca037cb14c", "title": "Episode 028 - Multiple service instances tweaks - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/08/31/aspnet-028-from-zero-to-overkill-multiple-service-instances-tweaks/", "published_at": "2019-08-31T11:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca03cd2c3b", "title": "Episode 027 - Up and running with Docker Compose - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/08/12/aspnet-027-from-zero-to-overkill-up-and-running-with.docker-compose/", "published_at": "2019-08-12T16:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca03e0c4e3", "title": "Episode 026 - Getting started with Docker - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/07/29/aspnet-026-from-zero-to-overkill-getting-started-with-docker/", "published_at": "2019-07-29T16:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca045446da", "title": "Episode 025 - Integrating IdentityServer4 - Part 5 - Frontend - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/07/13/aspnet-025-from-zero-to-overkill-integrating-identityserver4-part5-frontend/", "published_at": "2019-07-13T14:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca04705254", "title": "Episode 024 - Integrating IdentityServer4 - Part 4 - Back for Front - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/06/22/aspnet-024-from-zero-to-overkill-integrating-identityserver4-part4-back-for-front/", "published_at": "2019-06-22T22:00:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca053a1cb5", "title": "Episode 023 - Integrating IdentityServer4 - Part 3 - API - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/06/16/aspnet-023-from-zero-to-overkill-integrating-identityserver4-part3-api/", "published_at": "2019-06-16T19:00:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca056050d8", "title": "Episode 022 - Integrating IdentityServer4 - Part 2 - Auth Service - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/06/13/aspnet-022-from-zero-to-overkill-integrating-identityserver4-part2-auth-service/", "published_at": "2019-06-13T17:00:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca05e2c1e5", "title": "Episode 021 - Integrating IdentityServer4 - Part 1 - Overview - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/05/29/aspnet-021-from-zero-to-overkill-integrating-identityserver4-part1-overview/", "published_at": "2019-05-29T18:20:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca06dc38fb", "title": "The Uri composition mystery", "url": "https://blog.codingmilitia.com/2019/05/22/the-uri-composition-mystery/", "published_at": "2019-05-22T20:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca06dfb880", "title": "Episode 020 - The backend for frontend and the HttpClient - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/05/05/aspnet-020-from-zero-to-overkill-backend-for-frontend-httpclient/", "published_at": "2019-05-05T08:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca06e8ac74", "title": "Episode 019 - Roles, claims and policies - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/04/29/aspnet-019-from-zero-to-overkill-roles-claims-policies/", "published_at": "2019-04-29T17:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca0713999e", "title": "Episode 018 - Internationalization - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/04/24/aspnet-018-from-zero-to-overkill-internationalization/", "published_at": "2019-04-24T20:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca07b28f8a", "title": "Episode 017 - More Identity, more Razor Pages - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/03/31/aspnet-017-from-zero-to-overkill-more-identity-more-razor-pages/", "published_at": "2019-03-31T17:00:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca08564420", "title": "Episode 016 - Authentication with Identity and Razor Pages - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/02/24/aspnet-016-from-zero-to-overkill-authentication-with-identity-and-razor-pages/", "published_at": "2019-02-24T16:20:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca08fd5a3a", "title": "Episode 015 - Calling the Web API from the frontend - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/02/12/aspnet-015-from-zero-to-overkill-calling-the-web-api-from-the-frontend/", "published_at": "2019-02-12T17:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca0957f5df", "title": "Episode 014 - Centralizing frontend state with Vuex - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/02/07/aspnet-014-from-zero-to-overkill-centralizing-frontend-state-with-vuex/", "published_at": "2019-02-07T19:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca0a09a110", "title": "Episode 013 - Starting the frontend with Vue.js - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/02/02/aspnet-013-from-zero-to-overkill-starting-the-frontend-with-vuejs/", "published_at": "2019-02-02T19:20:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca0a556242", "title": "Episode 012 - Move to a Web API - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/01/26/aspnet-012-from-zero-to-overkill-move-to-a-web-api/", "published_at": "2019-01-26T17:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca0a767e52", "title": "Episode 011 - Data access with Entity Framework Core - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2019/01/16/aspnet-011-from-zero-to-overkill-data-access-with-entity-framework-core/", "published_at": "2019-01-16T20:45:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca0b47849e", "title": "Episode 010 - Async all the things - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2018/12/17/aspnet-010-from-zero-to-overkill-async-all-the-things/", "published_at": "2018-12-17T20:00:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca0c137762", "title": "Episode 009 - MVC filters - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2018/12/10/aspnet-009-from-zero-to-overkill-mvc-filters/", "published_at": "2018-12-10T17:25:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca0cacd225", "title": "Episode 008 - Middlewares - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2018/12/05/aspnet-008-from-zero-to-overkill-middlewares/", "published_at": "2018-12-05T18:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca0d6d9927", "title": "Episode 007 - Logging - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2018/11/21/aspnet-007-from-zero-to-overkill-logging/", "published_at": "2018-11-21T19:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca0e3c7a60", "title": "Episode 006 - Configuration - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2018/11/16/aspnet-006-from-zero-to-overkill-configuration/", "published_at": "2018-11-16T19:00:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca0e924dd8", "title": "Episode 005 - Dependency Injection - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2018/11/04/aspnet-005-from-zero-to-overkill-dependency-injection/", "published_at": "2018-11-04T11:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca0eb03517", "title": "Episode 004 - The Program and Startup classes - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2018/10/27/aspnet-004-from-zero-to-overkill-the-program-and-startup-classes/", "published_at": "2018-10-27T20:45:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca0f949cd5", "title": "Episode 003 - First steps with MVC - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2018/10/13/aspnet-003-from-zero-to-overkill-first-steps-with-mvc/", "published_at": "2018-10-13T15:30:00+00:00" }, { "id": "01a08746-2e41-71d2-8e00-59ca10909807", "title": "Episode 002 - Project structure plus first application - ASP.NET Core: From 0 to overkill", "url": "https://blog.codingmilitia.com/2018/10/07/aspnet-002-from-zero-to-overkill-project-structure-plus-first-application/", "published_at": "2018-10-07T09:00:00+00:00" } ] posts Claim your blog
Back to blog.codingmilitia.com
Blog · corpus.blog/blogs/blog.codingmilitia.com/posts

blog.codingmilitia.com

blog.codingmilitia.com

2026

2025

2024

2023

2022

2021

2020

2019

2018