<?xml version="1.0" encoding="UTF-8"?>
<!-- This sitemap was dynamically generated on April 4, 2026 at 04:45 by All in One SEO v4.9.5.1 - the original SEO plugin for WordPress. -->

<?xml-stylesheet type="text/xsl" href="https://duongnt.com/default-sitemap.xsl"?>

<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Duong&#039;s Blog</title>
		<link><![CDATA[https://duongnt.com]]></link>
		<description><![CDATA[Duong&#039;s Blog]]></description>
		<lastBuildDate><![CDATA[Thu, 20 Jul 2023 10:03:24 +0000]]></lastBuildDate>
		<docs>https://validator.w3.org/feed/docs/rss2.html</docs>
		<atom:link href="https://duongnt.com/sitemap.rss" rel="self" type="application/rss+xml" />
		<ttl><![CDATA[60]]></ttl>

		<item>
			<guid><![CDATA[https://duongnt.com/elasticsearch-async-search-kotlin-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/elasticsearch-async-search-kotlin-vie/]]></link>
			<title>Async search với Elasticsearch và Kotlin</title>
			<pubDate><![CDATA[Thu, 20 Jul 2023 10:03:24 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/elasticsearch-async-search-kotlin/]]></guid>
			<link><![CDATA[https://duongnt.com/elasticsearch-async-search-kotlin/]]></link>
			<title>Async search with Elasticsearch and Kotlin</title>
			<pubDate><![CDATA[Thu, 20 Jul 2023 10:03:13 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/fastandfaster-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/fastandfaster-vie/]]></link>
			<title>FastAndFaster và dynamic code generation</title>
			<pubDate><![CDATA[Thu, 09 Oct 2025 11:09:19 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/amp-custom-command/]]></guid>
			<link><![CDATA[https://duongnt.com/amp-custom-command/]]></link>
			<title>How to create custom command for Amp</title>
			<pubDate><![CDATA[Thu, 09 Oct 2025 11:03:20 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/amp-custom-command-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/amp-custom-command-vie/]]></link>
			<title>Cách viết custom command cho Amp</title>
			<pubDate><![CDATA[Thu, 09 Oct 2025 11:03:04 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/redis-raw-bytes-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/redis-raw-bytes-vie/]]></link>
			<title>Dùng RedisTemplate để gửi byte tới Redis</title>
			<pubDate><![CDATA[Sun, 15 Sep 2024 09:08:50 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/redis-raw-bytes/]]></guid>
			<link><![CDATA[https://duongnt.com/redis-raw-bytes/]]></link>
			<title>Send raw bytes to Redis with RedisTemplate</title>
			<pubDate><![CDATA[Sun, 15 Sep 2024 09:08:39 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/elasticsearch-dsl-kotlin-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/elasticsearch-dsl-kotlin-vie/]]></link>
			<title>Tạo DSL với Kotlin để đọc dữ liệu từ Elasticsearch</title>
			<pubDate><![CDATA[Sun, 06 Aug 2023 13:58:38 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/elasticsearch-dsl-kotlin/]]></guid>
			<link><![CDATA[https://duongnt.com/elasticsearch-dsl-kotlin/]]></link>
			<title>Kotlin DSL example with Elasticsearch</title>
			<pubDate><![CDATA[Sun, 06 Aug 2023 13:58:06 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/fire-and-forget-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/fire-and-forget-vie/]]></link>
			<title>Fire and forget với coroutine trong Kotlin</title>
			<pubDate><![CDATA[Sat, 24 Aug 2024 14:59:48 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/fire-and-forget/]]></guid>
			<link><![CDATA[https://duongnt.com/fire-and-forget/]]></link>
			<title>Fire and forget using coroutine in Kotlin</title>
			<pubDate><![CDATA[Sat, 24 Aug 2024 14:58:41 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/elasticsearch-api-client-kotlin-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/elasticsearch-api-client-kotlin-vie/]]></link>
			<title>Đọc dữ liệu với Kotlin và Elasticsearch API Client</title>
			<pubDate><![CDATA[Wed, 28 Jun 2023 14:50:59 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/elasticsearch-api-client-kotlin/]]></guid>
			<link><![CDATA[https://duongnt.com/elasticsearch-api-client-kotlin/]]></link>
			<title>Query data with Kotlin and Elasticsearch API Client</title>
			<pubDate><![CDATA[Wed, 28 Jun 2023 14:50:43 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/type-erasure-reified-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/type-erasure-reified-vie/]]></link>
			<title>Type erasure và reified trong Kotlin</title>
			<pubDate><![CDATA[Wed, 28 Dec 2022 13:26:31 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/voice-to-code/]]></guid>
			<link><![CDATA[https://duongnt.com/voice-to-code/]]></link>
			<title>Voice-to-code, control your AI Agents like a boss</title>
			<pubDate><![CDATA[Wed, 17 Dec 2025 11:00:54 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/voice-to-code-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/voice-to-code-vie/]]></link>
			<title>Voice-to-code, điều khiển AI bằng giọng nói</title>
			<pubDate><![CDATA[Wed, 17 Dec 2025 11:00:49 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/meterfilter-datadog-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/meterfilter-datadog-vie/]]></link>
			<title>Dùng MeterFilter để thay đổi metric của Resilience4j</title>
			<pubDate><![CDATA[Wed, 05 Apr 2023 13:54:21 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/meterfilter-datadog/]]></guid>
			<link><![CDATA[https://duongnt.com/meterfilter-datadog/]]></link>
			<title>Use MeterFilter to change Resilience4j metrics</title>
			<pubDate><![CDATA[Wed, 05 Apr 2023 13:54:10 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/launch-exception-handling-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/launch-exception-handling-vie/]]></link>
			<title>Xử lý lỗi trong launch builder của Kotlin</title>
			<pubDate><![CDATA[Tue, 24 Jan 2023 15:00:33 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/launch-exception-handling/]]></guid>
			<link><![CDATA[https://duongnt.com/launch-exception-handling/]]></link>
			<title>The Kotlin launch builder and exception handling</title>
			<pubDate><![CDATA[Tue, 24 Jan 2023 15:00:22 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/time-dependent-unit-testing/]]></guid>
			<link><![CDATA[https://duongnt.com/time-dependent-unit-testing/]]></link>
			<title>Time dependent unit testing in C#</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 14:01:24 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/query-boosting-elasticsearch-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/query-boosting-elasticsearch-vie/]]></link>
			<title>Query boosting trong Elasticsearch</title>
			<pubDate><![CDATA[Thu, 25 May 2023 14:25:37 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/kotlin-delegation-limit/]]></guid>
			<link><![CDATA[https://duongnt.com/kotlin-delegation-limit/]]></link>
			<title>Delegation in Kotlin and its limitations</title>
			<pubDate><![CDATA[Thu, 23 Mar 2023 09:08:41 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/time-dependent-unit-testing-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/time-dependent-unit-testing-vie/]]></link>
			<title>Điều khiển thời gian trong unit test C#</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 14:01:54 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/structured-log/]]></guid>
			<link><![CDATA[https://duongnt.com/structured-log/]]></link>
			<title>Structured logging in C#</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 13:58:12 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/string-interning/]]></guid>
			<link><![CDATA[https://duongnt.com/string-interning/]]></link>
			<title>Overview of string interning in C#</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 13:56:44 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/string-interning-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/string-interning-vie/]]></link>
			<title>Khái quát về string interning trong C#</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 13:56:24 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/stub-idp-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/stub-idp-vie/]]></link>
			<title>Thiết lập stub identity provider để chạy test</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 13:54:56 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/query-boosting-elasticsearch/]]></guid>
			<link><![CDATA[https://duongnt.com/query-boosting-elasticsearch/]]></link>
			<title>Query boosting in Elasticsearch</title>
			<pubDate><![CDATA[Thu, 25 May 2023 14:25:28 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/stub-idp/]]></guid>
			<link><![CDATA[https://duongnt.com/stub-idp/]]></link>
			<title>Set up a stub identity provider for testing</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 13:54:33 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/stackexchangeredis-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/stackexchangeredis-vie/]]></link>
			<title>Dùng StackExchangeRedis để tích hợp Redis với ứng dụng C# .NET</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 13:52:28 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/stackexchangeredis/]]></guid>
			<link><![CDATA[https://duongnt.com/stackexchangeredis/]]></link>
			<title>Using StackExchangeRedis to integrate Redis with a C# .NET app</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 13:52:01 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/sliding-expiration-stackexchangeredis/]]></guid>
			<link><![CDATA[https://duongnt.com/sliding-expiration-stackexchangeredis/]]></link>
			<title>Sliding expiration in StackExchangeRedis</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 13:50:14 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/sliding-expiration-stackexchangeredis-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/sliding-expiration-stackexchangeredis-vie/]]></link>
			<title>Sliding expiration trong StackExchangeRedis</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 13:50:01 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/kotlin-delegation-limit-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/kotlin-delegation-limit-vie/]]></link>
			<title>Delegation trong Kotlin và các hạn chế</title>
			<pubDate><![CDATA[Thu, 23 Mar 2023 09:08:57 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/read-numpy-files-in-csharp/]]></guid>
			<link><![CDATA[https://duongnt.com/read-numpy-files-in-csharp/]]></link>
			<title>How to read Numpy files in C# with NumSharp</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 13:47:46 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/read-numpy-files-in-csharp-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/read-numpy-files-in-csharp-vie/]]></link>
			<title>Đọc file Numpy bằng C# và NumSharp</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 13:47:44 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/linq-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/linq-vie/]]></link>
			<title>LINQ to Objects và một số sai sót thường gặp</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 13:46:22 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/linq/]]></guid>
			<link><![CDATA[https://duongnt.com/linq/]]></link>
			<title>LINQ to Objects and some common mistakes</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 13:46:08 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/fastmember-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/fastmember-vie/]]></link>
			<title>Dùng FastMember để đọc và ghi các trường public tại runtime</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 13:45:04 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/kotlin-null-safety-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/kotlin-null-safety-vie/]]></link>
			<title>Tìm hiểu về null safety trong Kotlin</title>
			<pubDate><![CDATA[Mon, 06 Feb 2023 14:08:16 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/fastmember/]]></guid>
			<link><![CDATA[https://duongnt.com/fastmember/]]></link>
			<title>Use FastMember to access public members at runtime</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 13:44:40 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/dynamic-code-generation-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/dynamic-code-generation-vie/]]></link>
			<title>Dynamic code generation với C#</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 12:50:24 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/kotlin-null-safety/]]></guid>
			<link><![CDATA[https://duongnt.com/kotlin-null-safety/]]></link>
			<title>Kotlin null safety deep dive</title>
			<pubDate><![CDATA[Mon, 06 Feb 2023 14:07:56 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/dynamic-code-generation/]]></guid>
			<link><![CDATA[https://duongnt.com/dynamic-code-generation/]]></link>
			<title>Dynamic code generation in C#</title>
			<pubDate><![CDATA[Tue, 06 Dec 2022 12:49:48 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/type-erasure-reified/]]></guid>
			<link><![CDATA[https://duongnt.com/type-erasure-reified/]]></link>
			<title>Type erasure and reified in Kotlin</title>
			<pubDate><![CDATA[Thu, 29 Dec 2022 00:01:27 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/kluent-vie/]]></guid>
			<link><![CDATA[https://duongnt.com/kluent-vie/]]></link>
			<title>Kluent &#8211; FluentAssertions cho Kotlin</title>
			<pubDate><![CDATA[Thu, 17 Nov 2022 14:09:12 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/kluent/]]></guid>
			<link><![CDATA[https://duongnt.com/kluent/]]></link>
			<title>Kluent &#8211; FluentAssertions for Kotlin</title>
			<pubDate><![CDATA[Thu, 17 Nov 2022 14:02:54 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/about-me/]]></guid>
			<link><![CDATA[https://duongnt.com/about-me/]]></link>
			<title>About me</title>
			<pubDate><![CDATA[Sun, 13 Nov 2022 13:51:20 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://duongnt.com/fastandfaster/]]></guid>
			<link><![CDATA[https://duongnt.com/fastandfaster/]]></link>
			<title>FastAndFaster and dynamic code generation</title>
			<pubDate><![CDATA[Fri, 02 Dec 2022 04:29:36 +0000]]></pubDate>
		</item>
				</channel>
</rss>
