41554 blogs · [ { "id": "01a0bdc6-67bb-73e1-ad44-a97b3cb30224", "title": "Multiple Get Methods with the Action Method Selector Attribute in .NET Core 10", "url": "https://nodogmablog.bryanhogan.net/2026/09/multiple-get-methods-with-the-action-method-selector-attribute-in-net-10/", "published_at": "2026-09-18T00:00:00+00:00" }, { "id": "01a0bdc6-67bb-73e1-ad44-a97b3d079c09", "title": "GitHub CLI Installation on Ubuntu", "url": "https://nodogmablog.bryanhogan.net/2026/09/github-cli-installation-on-ubuntu/", "published_at": "2026-09-17T00:00:00+00:00" }, { "id": "01a087b1-2baf-71a6-9524-6ca710b83285", "title": ".NET bin and obj Directory Cleaner", "url": "https://nodogmablog.bryanhogan.net/2026/09/net-bin-and-obj-directory-cleaner/", "published_at": "2026-09-03T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e717fdbb6", "title": "Running npm in a Separate Container when using Claude", "url": "https://nodogmablog.bryanhogan.net/2026/07/running-npm-in-a-separate-container-when-using-claude/", "published_at": "2026-07-24T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e71f45c53", "title": "Ubuntu 24.04 Kernel Panic 7.0.0-28-generic", "url": "https://nodogmablog.bryanhogan.net/2026/07/ubuntu-24-04-kernel-panic-7-0-0-28-generic/", "published_at": "2026-07-21T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e72037da9", "title": "Using netcat for a Simple Connectivity Test", "url": "https://nodogmablog.bryanhogan.net/2026/07/using-netcat-for-a-simple-connectivity-test/", "published_at": "2026-07-02T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e72c7d5b2", "title": "VS Code Running in a Docker Container with X11 Forwarding", "url": "https://nodogmablog.bryanhogan.net/2026/06/vs-code-running-in-a-docker-container-with-x11-forwarding/", "published_at": "2026-06-30T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e7337bd82", "title": "Docker Desktop Linux X11 Forwarding from Container to Host", "url": "https://nodogmablog.bryanhogan.net/2026/06/docker-desktop-linux-x11-forwarding-from-container-to-host/", "published_at": "2026-06-29T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e73725b1e", "title": "Claude Code in a Container", "url": "https://nodogmablog.bryanhogan.net/2026/06/claude-code-in-a-container/", "published_at": "2026-06-26T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e746f2b1c", "title": "Unhandled exception - An error occurred trying to start process when using .NET CLI in VS Code snap on Ubuntu", "url": "https://nodogmablog.bryanhogan.net/2026/06/unhandled-exception-an-error-occurred-trying-to-start-process-when-using-net-cli-in-vs-code-snap-on-ubuntu/", "published_at": "2026-06-22T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e754999d7", "title": "Fast .NET CLI ISO Downloader with Integrity Validation", "url": "https://nodogmablog.bryanhogan.net/2026/04/net-cli-iso-downloader/", "published_at": "2026-04-30T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e7645a09c", "title": ".NET CLI Shebangs and Argument Parsing", "url": "https://nodogmablog.bryanhogan.net/2026/03/net-cli-shebangs-and-argument-parsing/", "published_at": "2026-03-31T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e76b6c0b1", "title": "Fast .NET CLI Downloader", "url": "https://nodogmablog.bryanhogan.net/2026/03/fast-net-cli-downloader/", "published_at": "2026-03-25T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e775dd431", "title": "A Simple .NET CLI Web Server", "url": "https://nodogmablog.bryanhogan.net/2026/03/a-simple-net-cli-web-server/", "published_at": "2026-03-24T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e77b10d81", "title": "Installing .NET on Windows Without Admin Privileges", "url": "https://nodogmablog.bryanhogan.net/2026/03/installing-net-on-windows-without-admin-privileges/", "published_at": "2026-03-17T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e77cc2c7b", "title": "Kafka CLI in C#", "url": "https://nodogmablog.bryanhogan.net/2026/02/kafka-cli-in-c/", "published_at": "2026-02-26T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e78406202", "title": "Synchronous vs Asynchronous API Calls", "url": "https://nodogmablog.bryanhogan.net/2026/02/synchronous-vs-asynchronous-api-calls/", "published_at": "2026-02-12T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e7893fec5", "title": "CockroachDB CDC to Kafka", "url": "https://nodogmablog.bryanhogan.net/2026/02/cockroach-cdc-to-kafka/", "published_at": "2026-02-11T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e7985c887", "title": "Command Line Interface Producer for Kafka in C#", "url": "https://nodogmablog.bryanhogan.net/2026/02/command-line-interface-producer-for-kafka-in-c/", "published_at": "2026-02-06T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e79b800d8", "title": "Command Line Interface Consumer for Kafka in C#", "url": "https://nodogmablog.bryanhogan.net/2026/02/command-line-interface-consumer-for-kafka-in-c/", "published_at": "2026-02-04T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e79fa2b26", "title": "Combining the Factory and Strategy Patterns", "url": "https://nodogmablog.bryanhogan.net/2026/01/combining-the-factory-and-strategy-patterns/", "published_at": "2026-01-24T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e7abcdf83", "title": "Simple Network Communications in Docker Without Compose", "url": "https://nodogmablog.bryanhogan.net/2025/12/simple-network-communications-in-docker-without-compose/", "published_at": "2025-12-10T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e7b5dd75d", "title": "Keeping a Docker Container Open in Docker Compose", "url": "https://nodogmablog.bryanhogan.net/2025/12/keeping-a-docker-container-open-in-docker-compose/", "published_at": "2025-12-09T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e7b75fbec", "title": "Running .NET Applications that Communicate Over a Network Using Docker Compose", "url": "https://nodogmablog.bryanhogan.net/2025/10/running-net-applications-that-communicate-over-a-network-using-docker-compose/", "published_at": "2025-10-21T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e7bcb427d", "title": "Using CockroachDB in Secure Mode Locally", "url": "https://nodogmablog.bryanhogan.net/2025/10/using-cockroachdb-in-secure-mode-locally/", "published_at": "2025-10-15T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e7cbe3087", "title": "Blazor Code Behind", "url": "https://nodogmablog.bryanhogan.net/2025/10/blazor-code-behind/", "published_at": "2025-10-06T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e7cea12a9", "title": "Locking in CockroachDB, Part 3 - Killing Sessions and Transactions", "url": "https://nodogmablog.bryanhogan.net/2025/10/locking-in-cockroachdb-part-3-killing-sessions-and-transactions/", "published_at": "2025-10-01T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e7dd0d0ba", "title": "Dockerfile for a .NET 9 Web API Application", "url": "https://nodogmablog.bryanhogan.net/2025/09/dockerfile-for-a-net-9-web-api-application/", "published_at": "2025-09-29T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e7dfd3d21", "title": "Locking in CockroachDB, Part 2 - Finding Locked Rows", "url": "https://nodogmablog.bryanhogan.net/2025/09/locking-in-cockroachdb-part-2-finding-locked-rows/", "published_at": "2025-09-24T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e7e0a968b", "title": "Locking in CockroachDB, Part 1 - Locking Rows and Tables with SELECT FOR UPDATE", "url": "https://nodogmablog.bryanhogan.net/2025/09/locking-in-cockroachdb-part-1-locking-rows-and-tables-with-select-for-update/", "published_at": "2025-09-22T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e7eb8789d", "title": "Morse Code Messages with C#", "url": "https://nodogmablog.bryanhogan.net/2025/09/morse-code-messages-with-c/", "published_at": "2025-09-17T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e7f575a48", "title": "Clear Specific Cookies in Chrome, Edge, Brave, and Other Chromium-Based Browsers", "url": "https://nodogmablog.bryanhogan.net/2025/09/clear-specific-cookies-in-chrome-edge-brave-and-other-chromium-based-browsers/", "published_at": "2025-09-13T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e7f79dea5", "title": "Putting Lazy Tasks in a Cache, and Computing Only Once, When First Requested", "url": "https://nodogmablog.bryanhogan.net/2025/09/putting-lazy-tasks-in-a-cache-and-computing-only-once-when-first-requested/", "published_at": "2025-09-12T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e80213844", "title": "C# Lambdas Part 3, Setting Parameters Up Front, and Mismatching Func and Action Definitions", "url": "https://nodogmablog.bryanhogan.net/2025/09/c-lambdas-part-3-setting-parameters-up-front-and-mismatching-func-and-action-definitions/", "published_at": "2025-09-10T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e8055ad31", "title": "Using a Lock in a Web API Action Method", "url": "https://nodogmablog.bryanhogan.net/2025/09/using-a-lock-in-a-web-api-action-method/", "published_at": "2025-09-04T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e80a216a1", "title": "Statement and Transaction Timeouts in Postgres and CockroachDB", "url": "https://nodogmablog.bryanhogan.net/2025/08/statement-and-transaction-timeouts-in-postgres-and-cockroachdb/", "published_at": "2025-08-13T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e80e04387", "title": "Connecting to a Local CockroachDB from DataGrip or DBeaver", "url": "https://nodogmablog.bryanhogan.net/2025/08/connecting-to-a-local-cockroachdb-from-datagrip-or-dbeaver/", "published_at": "2025-08-12T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e816e14eb", "title": "InfluxDB and C#", "url": "https://nodogmablog.bryanhogan.net/2025/08/influxdb-and-c/", "published_at": "2025-08-04T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e81c13c6d", "title": "Using OBS Studio to Record Podcasts for Free", "url": "https://nodogmablog.bryanhogan.net/2025/07/using-obs-studio-to-record-podcasts-for-free/", "published_at": "2025-07-24T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e82b3ad3e", "title": "Sorting Strings when the Embedded Number has a Variable Number of Digits", "url": "https://nodogmablog.bryanhogan.net/2025/07/sorting-strings-when-the-embedded-number-has-a-variable-number-of-digits/", "published_at": "2025-07-19T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e83813ef5", "title": "Enable Pinch to Zoom in Microsoft Edge on Ubuntu Linux", "url": "https://nodogmablog.bryanhogan.net/2025/07/enable-pinch-to-zoom-in-microsoft-edge-on-ubuntu-linux/", "published_at": "2025-07-10T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e83bb88f8", "title": "Enable Pinch to Zoom in Chrome, Chromium, and Brave on Ubuntu Linux", "url": "https://nodogmablog.bryanhogan.net/2025/07/enable-pinch-to-zoom-in-chrome-chromium-and-brave-on-ubuntu-linux/", "published_at": "2025-07-09T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e846f776f", "title": "Using Oracle with Entity Framework", "url": "https://nodogmablog.bryanhogan.net/2025/05/using-oracle-with-entity-framework/", "published_at": "2025-05-30T00:00:00+00:00" }, { "id": "01a087b1-2bb0-7027-b1c1-408e851f0664", "title": "Using SingleStore with Entity Framework", "url": "https://nodogmablog.bryanhogan.net/2025/05/using-singlestore-with-entity-framework/", "published_at": "2025-05-15T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5d97d6774f", "title": "An Alternative to nuget install-package", "url": "https://nodogmablog.bryanhogan.net/2025/04/an-alternative-to-nuget-install-package/", "published_at": "2025-04-30T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5d97daa9e1", "title": "Batch Consume with Kafka and .NET", "url": "https://nodogmablog.bryanhogan.net/2025/04/batch-consume-with-kafka-and-net/", "published_at": "2025-04-17T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5d988ae474", "title": "Generating the launch.json and tasks.json files for VS Code", "url": "https://nodogmablog.bryanhogan.net/2025/03/generating-the-launch-json-and-tasks-json-files-for-vs-code/", "published_at": "2025-03-29T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5d98c8677e", "title": "Putting Tasks in a Cache, and Computing Only Once, When First Requested", "url": "https://nodogmablog.bryanhogan.net/2025/03/putting-tasks-in-a-cache-and-computing-only-once-when-first-requested/", "published_at": "2025-03-19T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5d9993cd4e", "title": "Create a Task and Start it Later", "url": "https://nodogmablog.bryanhogan.net/2025/03/create-a-task-and-start-it-later/", "published_at": "2025-03-14T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5d9a75b939", "title": "Finding the Command or Entrypoint that Started a Container", "url": "https://nodogmablog.bryanhogan.net/2025/03/finding-the-command-or-entrypoint-that-started-a-container/", "published_at": "2025-03-05T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5d9ae7ce0c", "title": "Using MySQL with Entity Framework", "url": "https://nodogmablog.bryanhogan.net/2025/02/using-mysql-with-entity-framework/", "published_at": "2025-02-28T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5d9bce6b2b", "title": "Doing Some Cleanup in a BackgroundService", "url": "https://nodogmablog.bryanhogan.net/2025/02/doing-some-cleanup-in-a-canceled-background-service/", "published_at": "2025-02-24T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5d9cac9405", "title": "Killing a Worker Application from a BackgroundService", "url": "https://nodogmablog.bryanhogan.net/2025/02/killing-an-worker-application-from-a-backgroundservice/", "published_at": "2025-02-18T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5d9cbe8b82", "title": "Running Apache Kafka in Docker", "url": "https://nodogmablog.bryanhogan.net/2025/02/running-apache-kafka-in-docker/", "published_at": "2025-02-11T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5d9d8e9ae5", "title": "Using .NET on Linux", "url": "https://nodogmablog.bryanhogan.net/2025/02/using-net-on-linux/", "published_at": "2025-02-07T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5d9df8598c", "title": "Mass Transit - Competing Consumers", "url": "https://nodogmablog.bryanhogan.net/2025/02/masstransit-competing-consumers/", "published_at": "2025-02-03T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5d9ed6fa40", "title": "Running bitnami/kafka in Docker", "url": "https://nodogmablog.bryanhogan.net/2025/01/running-bitnami-kafka-in-docker/", "published_at": "2025-01-17T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5d9f977989", "title": "Mixing Raw SQL and Fluent Statements with Entity Framework", "url": "https://nodogmablog.bryanhogan.net/2025/01/mixing-raw-sql-and-fluent-statements-with-entity-framework/", "published_at": "2025-01-15T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5d9fea9dce", "title": "Seeding a Large Database with Entity Framework", "url": "https://nodogmablog.bryanhogan.net/2025/01/seeding-a-large-database-with-entity-framework/", "published_at": "2025-01-05T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5da004766f", "title": "Setting the Typewriter Text Color with FoxIt for Linux", "url": "https://nodogmablog.bryanhogan.net/2024/12/setting-the-typewriter-text-color-with-foxit-for-linux/", "published_at": "2024-12-29T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5da0f9fe06", "title": "Getting Confluent Kafka Working in Linux with Docker Desktop", "url": "https://nodogmablog.bryanhogan.net/2024/12/getting-confluent-kafka-working-in-linux-with-docker-desktop/", "published_at": "2024-12-23T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5da14427ba", "title": "Using HttpClient to Download a File with GetStreamAsync", "url": "https://nodogmablog.bryanhogan.net/2024/12/using-httpclient-to-download-a-file-with-getstreamasync/", "published_at": "2024-12-20T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5da1ecba58", "title": "Microsoft SQL Server - The remote certificate was rejected by the provided RemoteCertificateValidationCallback", "url": "https://nodogmablog.bryanhogan.net/2024/12/microsoft-sql-server-the-remote-certificate-was-rejected-by-the-provided-remotecertificatevalidationcallback/", "published_at": "2024-12-19T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5da2940127", "title": "How to Copy Files to the Output Directory in .NET", "url": "https://nodogmablog.bryanhogan.net/2024/12/how-to-copy-files-to-the-output-directory-in-net/", "published_at": "2024-12-16T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5da2fbbcce", "title": "Mass Transit - Sending a Message to a Single Consumer", "url": "https://nodogmablog.bryanhogan.net/2024/12/masstransit-sending-a-message-to-single-consumer/", "published_at": "2024-12-10T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5da3903733", "title": "Using the Confluent Kafka Consumer in a Non-Blocking Way in .NET and C#", "url": "https://nodogmablog.bryanhogan.net/2024/11/using-the-confluent-kafka-consumer-in-a-non-blocking-way-in-net-and-c/", "published_at": "2024-11-17T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5da41d1f8c", "title": "Building .NET While Offline Using the Local NuGet Cache", "url": "https://nodogmablog.bryanhogan.net/2024/11/building-net-while-offline-using-the-local-nuget-cache/", "published_at": "2024-11-09T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5da4f9cd62", "title": "Making a Non Blocking Synchronous Call Inside a Background Service", "url": "https://nodogmablog.bryanhogan.net/2024/11/making-a-non-blocking-synchronous-call-inside-a-background-service/", "published_at": "2024-11-07T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5da5f3b53e", "title": "Sharing Data Between BackgroundServices", "url": "https://nodogmablog.bryanhogan.net/2024/10/sharing-data-between-backgroundservices/", "published_at": "2024-10-25T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5da68f5640", "title": "Updating Docker Desktop on Ubuntu", "url": "https://nodogmablog.bryanhogan.net/2024/10/updating-docker-desktop-on-ubuntu/", "published_at": "2024-10-18T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5da76fe488", "title": ".NET, Kubernetes, and Minikube - Part 2, A Load Balanced Web API Deployment", "url": "https://nodogmablog.bryanhogan.net/2024/10/net-kubernetes-and-minikube-part-2-a-load-balanced-web-api-deployment/", "published_at": "2024-10-07T00:00:00+00:00" }, { "id": "01a087b1-2bb1-72cb-9bf6-fa5da790fd77", "title": ".NET, Kubernetes, and Minikube - Part 1, A Simple Web API Application", "url": "https://nodogmablog.bryanhogan.net/2024/10/net-kubernetes-and-minikube-part-1-a-simple-web-api-application/", "published_at": "2024-10-02T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc436859a97", "title": "Getting the Running Operating System in C#", "url": "https://nodogmablog.bryanhogan.net/2024/09/getting-the-running-operating-system-in-c/", "published_at": "2024-09-30T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc436aa2ce6", "title": "Building an Application in Docker while Offline", "url": "https://nodogmablog.bryanhogan.net/2024/09/building-an-application-in-docker-while-offline/", "published_at": "2024-09-29T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc4372e4540", "title": "Broadcasting Messages with Apache Kafka and .NET", "url": "https://nodogmablog.bryanhogan.net/2024/08/broadcasting-messages-with-apache-kafka-and-net/", "published_at": "2024-08-30T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc4377bd284", "title": "Running Apache Kafka on Windows", "url": "https://nodogmablog.bryanhogan.net/2024/08/running-apache-kafka-on-windows/", "published_at": "2024-08-26T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc437da2b7b", "title": "Using Kafka with .NET", "url": "https://nodogmablog.bryanhogan.net/2024/08/using-kafka-with-net/", "published_at": "2024-08-21T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc437f4b3a5", "title": "Passing Arguments to VS Code when Debugging in C# and .NET", "url": "https://nodogmablog.bryanhogan.net/2024/08/passing-arguments-to-vs-code-when-debugging-in-c-and-net/", "published_at": "2024-08-12T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc438d757e1", "title": "CockroachDB and Postgres - Releasing Locked Rows with idle_in_transaction_session_timeout", "url": "https://nodogmablog.bryanhogan.net/2024/07/cockroachdb-and-postgres-releasing-locked-rows-with-idle-in-transaction-session-timeout/", "published_at": "2024-07-19T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc438e84e2d", "title": "Finding the command used to start a Docker container", "url": "https://nodogmablog.bryanhogan.net/2024/07/finding-the-command-used-to-start-a-docker-container/", "published_at": "2024-07-05T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc439ac205e", "title": "CockroachDB and Postgres SELECT FOR UPDATE and SKIP LOCKED", "url": "https://nodogmablog.bryanhogan.net/2024/06/cockroach-postgres-select-for-update-and-skip-locked/", "published_at": "2024-06-20T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc43a30bee8", "title": "Using Postgres with C#", "url": "https://nodogmablog.bryanhogan.net/2024/06/using-postgres-with-c/", "published_at": "2024-06-06T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc43a76763a", "title": "Running Postgres in Docker", "url": "https://nodogmablog.bryanhogan.net/2024/06/running-postgres-in-docker/", "published_at": "2024-06-03T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc43abe9674", "title": "Running a Hosted Service in a Console Application", "url": "https://nodogmablog.bryanhogan.net/2024/05/running-a-hosted-service-in-a-console-application/", "published_at": "2024-05-29T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc43b495854", "title": "Doing Background Work with a Hosted Service in Web API", "url": "https://nodogmablog.bryanhogan.net/2024/05/doing-background-work-with-a-hosted-service-in-web-api/", "published_at": "2024-05-23T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc43b6604e3", "title": "Running CockroachDB on Windows, Linux, or Mac with a Single Executable", "url": "https://nodogmablog.bryanhogan.net/2024/05/running-cockroachdb-on-windows-linux-or-mac-with-a-single-executable/", "published_at": "2024-05-21T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc43bd5f3ce", "title": "Getting the Method Name from a Task in C#", "url": "https://nodogmablog.bryanhogan.net/2024/03/getting-the-method-name-from-a-task-in-c/", "published_at": "2024-03-28T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc43c4297a1", "title": "CockroachDb with Entity Framework and Web API", "url": "https://nodogmablog.bryanhogan.net/2024/03/cockroachdb-with-entity-framework-and-web-api/", "published_at": "2024-03-08T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc43c43e9bf", "title": "Starting CockroachDB in Single User Mode with a Dockerfile", "url": "https://nodogmablog.bryanhogan.net/2024/03/starting-cockroachdb-in-single-user-mode-with-a-dockerfile/", "published_at": "2024-03-03T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc43c973837", "title": "Polly Core Rate Limiter", "url": "https://nodogmablog.bryanhogan.net/2024/02/polly-core-rate-limiter/", "published_at": "2024-02-15T00:00:00+00:00" }, { "id": "01a087b1-2bb2-72f2-978f-cdc43cc82ec2", "title": "Repository File Statistics", "url": "https://nodogmablog.bryanhogan.net/2024/02/repository-file-statistics/", "published_at": "2024-02-06T00:00:00+00:00" }, { "id": "01a087b1-2bb3-71a9-8a3c-d4a3829ed758", "title": "CockroachDB in Single User Mode on Docker", "url": "https://nodogmablog.bryanhogan.net/2024/01/cockroachdb-in-single-user-mode-on-docker/", "published_at": "2024-01-15T00:00:00+00:00" }, { "id": "01a087b1-2bb3-71a9-8a3c-d4a383495eae", "title": "Throw ThrowIfCancellationRequested in a Method that Returns a Value when Using a Cancellation Token", "url": "https://nodogmablog.bryanhogan.net/2024/01/throw-throwifcancellationrequested-in-a-method-that-returns-a-value-when-using-a-cancellation-token/", "published_at": "2024-01-03T00:00:00+00:00" }, { "id": "01a087b1-2bb3-71a9-8a3c-d4a383bcc489", "title": "Simple Cancellation Token Example", "url": "https://nodogmablog.bryanhogan.net/2023/12/simple-cancellation-token-example/", "published_at": "2023-12-28T00:00:00+00:00" }, { "id": "01a087b1-2bb3-71a9-8a3c-d4a38453e9d3", "title": "Deserialize a Serialized Nested Type Within a JSON Object", "url": "https://nodogmablog.bryanhogan.net/2023/12/deserialize-a-serialized-nested-type-within-a-json-object/", "published_at": "2023-12-13T00:00:00+00:00" }, { "id": "01a087b1-2bb3-71a9-8a3c-d4a38470c3ee", "title": "Replacing \\u0022 with \\\" in Serialized JSON", "url": "https://nodogmablog.bryanhogan.net/2023/12/replacing-u0022-within-serialized-json/", "published_at": "2023-12-12T00:00:00+00:00" }, { "id": "01a087b1-2bb3-71a9-8a3c-d4a384d9ab4b", "title": "Async Lambda Statements", "url": "https://nodogmablog.bryanhogan.net/2023/11/async-lambda-statements/", "published_at": "2023-11-21T00:00:00+00:00" }, { "id": "01a087b1-2bb3-71a9-8a3c-d4a3855af1ad", "title": "Bash Substitution for a String with an Underscore", "url": "https://nodogmablog.bryanhogan.net/2023/09/bash-substitution-for-a-string-with-an-underscore/", "published_at": "2023-09-25T00:00:00+00:00" }, { "id": "01a087b1-2bb3-71a9-8a3c-d4a385872036", "title": "Sending MediatR Notifications Immediately After Saving an Entity with Entity Framework Core", "url": "https://nodogmablog.bryanhogan.net/2023/05/sending-mediatr-notifications-immediately-after-saving-an-entity-with-entity-framework-core/", "published_at": "2023-05-02T00:00:00+00:00" }, { "id": "01a087b1-2bb3-71a9-8a3c-d4a385a07e0f", "title": "Using Step Functions to Orchestrate a Series of Lambda Functions", "url": "https://nodogmablog.bryanhogan.net/2023/04/using-step-functions-to-orchestrate-a-series-of-lambda-functions/", "published_at": "2023-04-07T00:00:00+00:00" } ] posts Claim your blog
Back to nodogmablog.bryanhogan.net
Blog · corpus.blog/blogs/nodogmablog.bryanhogan.net/posts

nodogmablog.bryanhogan.net

nodogmablog.bryanhogan.net

2026

2025

2024

2023