<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:mobile="http://www.google.com/schemas/sitemap-mobile/1.0" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://2coffee.dev/bai-viet/moi-thu-deu-mien-phi-ky-i-game-phan-mem-va-doc-mien-phi</loc><lastmod>2024-07-01T02:16:30.273Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/moi-thu-deu-mien-phi-ky-i-game-phan-mem-va-doc-mien-phi"/></url><url><loc>https://2coffee.dev/bai-viet/dap-di-xay-lai</loc><lastmod>2024-06-27T02:56:11.753Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/dap-di-xay-lai"/></url><url><loc>https://2coffee.dev/bai-viet/them-mot-cong-cu-tunnel-locally-dua-may-chu-cuc-bo-len-internet</loc><lastmod>2024-06-14T16:45:37.816Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/them-mot-cong-cu-tunnel-locally-dua-may-chu-cuc-bo-len-internet"/></url><url><loc>https://2coffee.dev/bai-viet/su-dung-mien-phi-mo-hinh-ngon-ngu-lon-llm-tuong-thich-chatgpt-api</loc><lastmod>2024-06-10T04:33:02.378Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/su-dung-mien-phi-mo-hinh-ngon-ngu-lon-llm-tuong-thich-chatgpt-api"/></url><url><loc>https://2coffee.dev/bai-viet/mot-thang-hoc-rust-xu-ly-loi</loc><lastmod>2024-06-07T06:22:38.933Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mot-thang-hoc-rust-xu-ly-loi"/></url><url><loc>https://2coffee.dev/bai-viet/mot-thang-hoc-rust-collections</loc><lastmod>2023-10-26T17:27:17.466Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mot-thang-hoc-rust-collections"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/one-month-learning-rust-collections"/></url><url><loc>https://2coffee.dev/bai-viet/nhat-ky-lam-notas-san-sang-launching</loc><lastmod>2024-05-08T02:07:32.492Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/nhat-ky-lam-notas-san-sang-launching"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/diary-of-working-on-notas-ready-for-launch"/></url><url><loc>https://2coffee.dev/bai-viet/tat-tan-tat-ve-opennotas-no-la-gi</loc><lastmod>2024-05-19T08:52:30.792Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tat-tan-tat-ve-opennotas-no-la-gi"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/all-about-opennotas-what-is-it"/></url><url><loc>https://2coffee.dev/bai-viet/mot-tach-ca-phe-moi-ngay-developer-choi-espresso-nhu-the-nao</loc><lastmod>2024-05-17T17:29:50.496Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mot-tach-ca-phe-moi-ngay-developer-choi-espresso-nhu-the-nao"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/a-cup-of-coffee-a-day-how-does-a-developer-play-with-espresso"/></url><url><loc>https://2coffee.dev/bai-viet/nhat-ky-lam-notas-van-de-voi-bo-nho</loc><lastmod>2024-04-23T02:06:43.673Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/nhat-ky-lam-notas-van-de-voi-bo-nho"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/diary-of-working-on-notas-the-issue-with-memory"/></url><url><loc>https://2coffee.dev/bai-viet/nhat-ky-lam-notas-ky-iii</loc><lastmod>2024-04-15T16:24:31.145Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/nhat-ky-lam-notas-ky-iii"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/diary-of-working-on-notas-part-iii"/></url><url><loc>https://2coffee.dev/bai-viet/nhat-ky-lam-notas-ky-ii</loc><lastmod>2024-04-08T16:36:15.946Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/nhat-ky-lam-notas-ky-ii"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/diary-of-working-on-notas-part-ii"/></url><url><loc>https://2coffee.dev/bai-viet/nhat-ky-lam-notas-ky-dau</loc><lastmod>2024-04-01T02:03:37.630Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/nhat-ky-lam-notas-ky-dau"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/diary-of-making-notas-first-week"/></url><url><loc>https://2coffee.dev/bai-viet/lam-ung-dung-ghi-chu-notas</loc><lastmod>2024-03-25T03:27:17.087Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/lam-ung-dung-ghi-chu-notas"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/note-taking-app-notas"/></url><url><loc>https://2coffee.dev/bai-viet/ung-dung-cua-message-queue-trong-xu-ly-du-lieu-phan-tan-tang-tai</loc><lastmod>2024-03-17T17:17:16.624Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/ung-dung-cua-message-queue-trong-xu-ly-du-lieu-phan-tan-tang-tai"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/application-of-message-queue-in-distributed-data-processing-load-balancing"/></url><url><loc>https://2coffee.dev/bai-viet/lam-the-nao-de-di-vao-giac-ngu</loc><lastmod>2024-03-14T05:38:28.963Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/lam-the-nao-de-di-vao-giac-ngu"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/how-to-fall-asleep"/></url><url><loc>https://2coffee.dev/bai-viet/dam-dao-ve-git-suy-nghi-ve-git-cho-nguoi-moi-bat-dau</loc><lastmod>2024-03-11T02:20:52.343Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/dam-dao-ve-git-suy-nghi-ve-git-cho-nguoi-moi-bat-dau"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/conversations-about-git-thoughts-on-git-for-beginners"/></url><url><loc>https://2coffee.dev/bai-viet/angular-react-vue-svelte-roi-tiep-theo-se-la-gi</loc><lastmod>2024-03-03T14:13:09.894Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/angular-react-vue-svelte-roi-tiep-theo-se-la-gi"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/angular-react-vue-svelte-what-next"/></url><url><loc>https://2coffee.dev/bai-viet/mot-so-phuong-phap-bao-mat-danh-cho-webhook</loc><lastmod>2024-02-29T16:18:33.976Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mot-so-phuong-phap-bao-mat-danh-cho-webhook"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/some-security-methods-for-webhooks"/></url><url><loc>https://2coffee.dev/bai-viet/toi-moi-sam-mot-chiec-may-doc-sach</loc><lastmod>2024-02-22T13:09:34.173Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/toi-moi-sam-mot-chiec-may-doc-sach"/></url><url><loc>https://2coffee.dev/bai-viet/su-dung-mien-phi-gpt-4-voi-github-copilot</loc><lastmod>2024-02-07T10:29:12.214Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/su-dung-mien-phi-gpt-4-voi-github-copilot"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/using-gpt-4-for-free-with-github-copilot"/></url><url><loc>https://2coffee.dev/bai-viet/cach-bien-chatgpt-thanh-mot-chuyen-gia</loc><lastmod>2024-02-01T16:10:59.611Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/cach-bien-chatgpt-thanh-mot-chuyen-gia"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/transforming-chatgpt-into-an-expert"/></url><url><loc>https://2coffee.dev/bai-viet/tinh-nang-loc-bai-viet-theo-the-va-quay-lai-vi-tri-truoc-do</loc><lastmod>2024-01-28T17:05:47.356Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tinh-nang-loc-bai-viet-theo-the-va-quay-lai-vi-tri-truoc-do"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/filtering-articles-by-tags-and-returning-to-previous-position"/></url><url><loc>https://2coffee.dev/bai-viet/tan-man-ve-cau-chuyen-chay-bo</loc><lastmod>2024-01-21T16:07:49.463Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tan-man-ve-cau-chuyen-chay-bo"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/musings-on-the-story-of-running"/></url><url><loc>https://2coffee.dev/bai-viet/ban-ve-tinh-bat-bien-trong-javascript</loc><lastmod>2024-01-18T15:43:18.085Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/ban-ve-tinh-bat-bien-trong-javascript"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/the-concept-of-immutability-in-javascript"/></url><url><loc>https://2coffee.dev/bai-viet/hai-cach-che-nuoc-de-cho-ra-ly-ca-phe-pour-over-v60-chat-luong</loc><lastmod>2024-01-16T14:35:13.869Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/hai-cach-che-nuoc-de-cho-ra-ly-ca-phe-pour-over-v60-chat-luong"/></url><url><loc>https://2coffee.dev/bai-viet/ung-dung-cli-de-tang-hieu-suat-trong-cong-viec</loc><lastmod>2024-01-14T09:35:12.220Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/ung-dung-cli-de-tang-hieu-suat-trong-cong-viec"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/using-cli-applications-to-increase-efficiency-in-work"/></url><url><loc>https://2coffee.dev/bai-viet/toi-uu-hoa-hien-thi-hinh-anh-bang-blur-placeholder-va-lazyload</loc><lastmod>2024-01-10T03:03:46.525Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/toi-uu-hoa-hien-thi-hinh-anh-bang-blur-placeholder-va-lazyload"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/optimize-image-display-with-blur-placeholder-and-lazyload"/></url><url><loc>https://2coffee.dev/bai-viet/tim-hieu-ve-require-trong-nodejs-10</loc><lastmod>2020-09-02T15:44:51.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tim-hieu-ve-require-trong-nodejs-10"/></url><url><loc>https://2coffee.dev/bai-viet/tin-duoc-khong-javascript-sap-co-type</loc><lastmod>2023-02-10T08:04:22.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tin-duoc-khong-javascript-sap-co-type"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/guess-what-javascript-is-getting-types"/></url><url><loc>https://2coffee.dev/bai-viet/tuong-tac-voi-trang-web-bang-console-cua-trinh-duyet-qua-mot-vi-du-don-gian</loc><lastmod>2023-02-16T08:25:24.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tuong-tac-voi-trang-web-bang-console-cua-trinh-duyet-qua-mot-vi-du-don-gian"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/interacting-with-web-page-using-browser-console-simple-example"/></url><url><loc>https://2coffee.dev/bai-viet/toi-da-tang-diem-lighthouse-cho-blog-bang-cach-tang-diem-cls-nhu-the-nao</loc><lastmod>2023-02-17T16:13:30.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/toi-da-tang-diem-lighthouse-cho-blog-bang-cach-tang-diem-cls-nhu-the-nao"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/how-i-improved-lighthouse-score-for-my-blog-by-increasing-cls-score"/></url><url><loc>https://2coffee.dev/bai-viet/higher-order-functions-la-gi-loi-ich-ma-no-mang-lai-khi-su-dung-trong-du-an-cua-ban</loc><lastmod>2023-02-19T08:53:38.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/higher-order-functions-la-gi-loi-ich-ma-no-mang-lai-khi-su-dung-trong-du-an-cua-ban"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-are-higher-order-functions-hof-the-benefits-of-using-them-in-your-projects"/></url><url><loc>https://2coffee.dev/bai-viet/chu-nghia-ca-nhan-tuong-lai-khong-ton-tai</loc><lastmod>2023-02-24T06:19:49.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/chu-nghia-ca-nhan-tuong-lai-khong-ton-tai"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/individualism-the-nonexistent-future"/></url><url><loc>https://2coffee.dev/bai-viet/dinh-dang-markdown-va-nhung-dieu-ban-can-biet-commonmark-spec</loc><lastmod>2023-02-25T15:54:08.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/dinh-dang-markdown-va-nhung-dieu-ban-can-biet-commonmark-spec"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/markdown-formatting-and-what-you-need-to-know-commonmark-spec"/></url><url><loc>https://2coffee.dev/bai-viet/debounce-throttle-va-once-ba-ham-them-cach-giai-quyet-logic-nguoi-dung</loc><lastmod>2023-03-03T13:35:22.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/debounce-throttle-va-once-ba-ham-them-cach-giai-quyet-logic-nguoi-dung"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/debounce-throttle-and-once-three-functions-to-enhance-user-logic"/></url><url><loc>https://2coffee.dev/bai-viet/phuc-hoi-suc-manh-y-chi-bang-phuong-phap-power-nap</loc><lastmod>2023-03-03T17:36:03.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/phuc-hoi-suc-manh-y-chi-bang-phuong-phap-power-nap"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/restoring-willpower-with-the-power-nap-method"/></url><url><loc>https://2coffee.dev/bai-viet/child-process-trong-nodejs-la-gi-khi-nao-can-su-dung-fork-va-spawn</loc><lastmod>2023-03-04T14:21:57.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/child-process-trong-nodejs-la-gi-khi-nao-can-su-dung-fork-va-spawn"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-is-child-process-in-nodejs-when-to-use-fork-and-spawn"/></url><url><loc>https://2coffee.dev/bai-viet/lap-trinh-bat-dong-bo-la-gi-tai-sao-javascript-la-ngon-ngu-lap-trinh-bat-dong-bo</loc><lastmod>2023-03-13T17:19:35.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/lap-trinh-bat-dong-bo-la-gi-tai-sao-javascript-la-ngon-ngu-lap-trinh-bat-dong-bo"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-is-asynchronous-programming-why-is-javascript-a-language-for-asynchronous-programming"/></url><url><loc>https://2coffee.dev/bai-viet/chu-nghia-ca-nhan-moi-phien-muon-deu-bat-nguon-tu-moi-quan-he-giua-nguoi-voi-nguoi</loc><lastmod>2023-03-16T16:58:20.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/chu-nghia-ca-nhan-moi-phien-muon-deu-bat-nguon-tu-moi-quan-he-giua-nguoi-voi-nguoi"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/individualism-all-troubles-originates-from-human-relationships"/></url><url><loc>https://2coffee.dev/bai-viet/circuit-breaker-pattern-bo-ngat-mach-trong-cac-cuoc-goi-phan-tan</loc><lastmod>2023-03-18T17:20:09.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/circuit-breaker-pattern-bo-ngat-mach-trong-cac-cuoc-goi-phan-tan"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/circuit-breaker-pattern-the-breaker-in-distributed-calls"/></url><url><loc>https://2coffee.dev/bai-viet/google-sap-loai-bo-api-xac-thuc-cu-va-toi-phai-sua-lai-mot-loi-dang-nhap-bang-tai-khoan-github-tren-blog</loc><lastmod>2023-03-25T17:51:26.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/google-sap-loai-bo-api-xac-thuc-cu-va-toi-phai-sua-lai-mot-loi-dang-nhap-bang-tai-khoan-github-tren-blog"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/google-will-remove-old-authentication-apis-and-i-have-to-fix-a-github-login-issue-on-my-blog"/></url><url><loc>https://2coffee.dev/bai-viet/cau-chuyen-ve-hanh-trinh-tu-window-sang-linux-unix-la-do-zsh-va-oh-my-zsh</loc><lastmod>2023-03-29T14:09:36.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/cau-chuyen-ve-hanh-trinh-tu-window-sang-linux-unix-la-do-zsh-va-oh-my-zsh"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/the-story-of-transitioning-from-windows-to-linux-unix-thanks-to-zsh-and-oh-my-zsh"/></url><url><loc>https://2coffee.dev/bai-viet/toi-da-trien-khai-tinh-nang-rate-limit-cho-binh-luan-nhu-the-nao</loc><lastmod>2023-04-02T07:46:44.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/toi-da-trien-khai-tinh-nang-rate-limit-cho-binh-luan-nhu-the-nao"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/how-did-I-implement-rate-limit-for-comments"/></url><url><loc>https://2coffee.dev/bai-viet/buffers-trong-nodejs-buffers-duoc-su-dung-nhu-the-nao-12</loc><lastmod>2020-09-06T15:54:44.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/buffers-trong-nodejs-buffers-duoc-su-dung-nhu-the-nao-12"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/buffers-in-nodejs-how-to-use-buffers"/></url><url><loc>https://2coffee.dev/bai-viet/ban-ve-hai-phuong-phap-khoa-du-lieu-pho-bien-la-record-locking-va-optimistic-locking</loc><lastmod>2023-04-04T16:51:55.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/ban-ve-hai-phuong-phap-khoa-du-lieu-pho-bien-la-record-locking-va-optimistic-locking"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/discussion-on-two-popular-data-locking-methods-record-locking-and-optimistic-locking"/></url><url><loc>https://2coffee.dev/bai-viet/prototypes-trong-javascript-la-gi-tai-sao-no-lai-quan-trong</loc><lastmod>2023-04-07T08:15:40.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/prototypes-trong-javascript-la-gi-tai-sao-no-lai-quan-trong"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-are-prototypes-in-javascript-why-are-they-important"/></url><url><loc>https://2coffee.dev/bai-viet/docker-hoa-ung-dung-viet-bang-nodejs</loc><lastmod>2023-04-12T16:48:57.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/docker-hoa-ung-dung-viet-bang-nodejs"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/dockerize-node-js-application"/></url><url><loc>https://2coffee.dev/bai-viet/tong-hop-bai-viet-ve-nodejs</loc><lastmod>2023-04-14T17:39:12.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tong-hop-bai-viet-ve-nodejs"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/compilation-of-articles-about-nodejs"/></url><url><loc>https://2coffee.dev/bai-viet/hotfix-bang-git-cherry-pick</loc><lastmod>2023-04-20T16:53:33.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/hotfix-bang-git-cherry-pick"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/hotfix-with-git-cherry-pick"/></url><url><loc>https://2coffee.dev/bai-viet/nhac-den-ninja-coder-ho-la-ai-ma-khien-cho-nhieu-nguoi-phai-khiep-so</loc><lastmod>2023-04-25T17:05:46.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/nhac-den-ninja-coder-ho-la-ai-ma-khien-cho-nhieu-nguoi-phai-khiep-so"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/mention-ninja-code-who-are-they-that-make-many-people-fearful"/></url><url><loc>https://2coffee.dev/bai-viet/dev-va-viec-hoc-lich-su</loc><lastmod>2023-05-13T16:52:45.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/dev-va-viec-hoc-lich-su"/></url><url><loc>https://2coffee.dev/bai-viet/git-submodules-va-ung-dung-trong-viec-chia-se-tai-nguyen-dung-chung</loc><lastmod>2023-05-18T01:56:29.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/git-submodules-va-ung-dung-trong-viec-chia-se-tai-nguyen-dung-chung"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/git-submodules-and-their-applications-in-sharing-shared-resources"/></url><url><loc>https://2coffee.dev/bai-viet/corepack-la-gi-va-tac-dung-cua-no-trong-nodejs</loc><lastmod>2023-05-18T17:09:19.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/corepack-la-gi-va-tac-dung-cua-no-trong-nodejs"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-is-corepack-and-its-functionality-in-nodejs"/></url><url><loc>https://2coffee.dev/bai-viet/review-mot-so-phuong-phap-pha-che-ca-phe-ma-toi-da-thuong-thuc</loc><lastmod>2023-05-24T06:31:11.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/review-mot-so-phuong-phap-pha-che-ca-phe-ma-toi-da-thuong-thuc"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/review-of-some-coffee-brewing-methods-ive-tried"/></url><url><loc>https://2coffee.dev/bai-viet/dung-chan-vong-lap-su-kien-dont-block-the-event-loop-13</loc><lastmod>2020-11-18T15:18:37.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/dung-chan-vong-lap-su-kien-dont-block-the-event-loop-13"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/never-block-the-event-loop"/></url><url><loc>https://2coffee.dev/bai-viet/framework-library-loi-va-hai</loc><lastmod>2023-05-24T16:53:56.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/framework-library-loi-va-hai"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/framework-library-benefits-and-drawbacks"/></url><url><loc>https://2coffee.dev/bai-viet/tu-callback-promise-den-async-await-trong-xu-ly-bat-dong-bo-cua-javascript-nodejs</loc><lastmod>2023-05-27T09:49:18.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tu-callback-promise-den-async-await-trong-xu-ly-bat-dong-bo-cua-javascript-nodejs"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/from-callbacks-promise-to-async-await-in-javascript-nodejs-asynchronous-processing"/></url><url><loc>https://2coffee.dev/bai-viet/lai-noi-ve-cach-lam-the-nao-de-goi-duoc-api-cac-dich-vu-cua-google</loc><lastmod>2023-06-01T15:58:47.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/lai-noi-ve-cach-lam-the-nao-de-goi-duoc-api-cac-dich-vu-cua-google"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/talking-about-how-to-call-google-services-apis"/></url><url><loc>https://2coffee.dev/bai-viet/su-dung-vscode-de-viet-ma-tu-xa</loc><lastmod>2023-06-07T02:10:49.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/su-dung-vscode-de-viet-ma-tu-xa"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/using-vscode-for-remote-coding"/></url><url><loc>https://2coffee.dev/bai-viet/chung-ta-vua-co-gi-nao-quang-cao-va-cua-hang-sach</loc><lastmod>2023-06-16T17:51:09.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/chung-ta-vua-co-gi-nao-quang-cao-va-cua-hang-sach"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-do-we-have-now-advertisement-and-bookstore"/></url><url><loc>https://2coffee.dev/bai-viet/mot-bai-viet-chi-tiet-hon-ve-esm-va-commonjs-modules-trong-nodejs</loc><lastmod>2023-06-17T17:52:10.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mot-bai-viet-chi-tiet-hon-ve-esm-va-commonjs-modules-trong-nodejs"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/a-more-detailed-article-on-esm-and-commonjs-modules-in-nodejs"/></url><url><loc>https://2coffee.dev/bai-viet/lam-the-nao-de-xoa-commit-da-push</loc><lastmod>2023-06-20T02:01:29.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/lam-the-nao-de-xoa-commit-da-push"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/how-to-delete-a-pushed-commit"/></url><url><loc>https://2coffee.dev/bai-viet/chuyen-nha-tu-digitalocean-sang-cloudflare-pages</loc><lastmod>2023-06-28T01:57:34.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/chuyen-nha-tu-digitalocean-sang-cloudflare-pages"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/moving-from-digitalocean-to-cloudflare-pages"/></url><url><loc>https://2coffee.dev/bai-viet/chuyen-phong-van-em-dang-o-level-nao</loc><lastmod>2023-07-01T09:32:07.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/chuyen-phong-van-em-dang-o-level-nao"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/interview-story-what-level-are-you-at"/></url><url><loc>https://2coffee.dev/bai-viet/vai-chia-se-cho-nhung-ban-tre-moi-ra-truong-ve-noi-lo-so-phong-van</loc><lastmod>2023-07-02T17:07:55.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/vai-chia-se-cho-nhung-ban-tre-moi-ra-truong-ve-noi-lo-so-phong-van"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/some-advice-for-young-graduates-about-the-fear-of-job-interviews"/></url><url><loc>https://2coffee.dev/bai-viet/tim-hieu-ve-modules-trong-nodejs-tai-sao-lai-co-nhieu-loai-modules-nhu-vay-14</loc><lastmod>2020-11-23T16:14:20.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tim-hieu-ve-modules-trong-nodejs-tai-sao-lai-co-nhieu-loai-modules-nhu-vay-14"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/understanding-modules-in-nodejs-why-are-there-so-many-types-of-modules"/></url><url><loc>https://2coffee.dev/bai-viet/su-dung-mien-phi-docker-registry-cua-gitlab</loc><lastmod>2023-07-06T01:59:45.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/su-dung-mien-phi-docker-registry-cua-gitlab"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/using-gitlabs-free-docker-registry"/></url><url><loc>https://2coffee.dev/bai-viet/env-va-nhung-he-luy-khi-su-dung</loc><lastmod>2023-07-07T16:45:55.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/env-va-nhung-he-luy-khi-su-dung"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/env-and-the-consequences-of-its-usage"/></url><url><loc>https://2coffee.dev/bai-viet/toi-dang-bi-ddos</loc><lastmod>2023-07-22T17:51:09.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/toi-dang-bi-ddos"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/im-under-ddos-attack"/></url><url><loc>https://2coffee.dev/bai-viet/gioi-thieu-cong-cu-fig-io-chuyen-gia-nhac-lenh-cho-ban</loc><lastmod>2023-07-26T16:25:23.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/gioi-thieu-cong-cu-fig-io-chuyen-gia-nhac-lenh-cho-ban"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/transforming-the-blog-into-web-is-on-the-edge"/></url><url><loc>https://2coffee.dev/bai-viet/hoan-tat-chuyen-doi-blog-thanh-web-is-on-the-edge</loc><lastmod>2023-08-07T17:03:24.212Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/hoan-tat-chuyen-doi-blog-thanh-web-is-on-the-edge"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/completing-the-blog-conversion-to-web-is-on-the-edge"/></url><url><loc>https://2coffee.dev/bai-viet/gioi-thieu-codemirror-khung-soan-thao-code-va-markdown-hieu-qua</loc><lastmod>2023-08-10T03:40:03.313Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/gioi-thieu-codemirror-khung-soan-thao-code-va-markdown-hieu-qua"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/introduction-to-codemirror-effective-code-and-markdown-editor"/></url><url><loc>https://2coffee.dev/bai-viet/cach-su-dung-va-thu-thuat-doi-voi-nvm-node-version-manager</loc><lastmod>2023-08-16T16:46:03.170Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/cach-su-dung-va-thu-thuat-doi-voi-nvm-node-version-manager"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/how-to-use-and-tips-for-nvm-node-version-manager"/></url><url><loc>https://2coffee.dev/bai-viet/ben-canh-xu-ly-loi-tao-ra-loi-bang-doi-tuong-error-cung-khong-kem-phan-quan-trong</loc><lastmod>2023-08-23T16:54:35.586Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/ben-canh-xu-ly-loi-tao-ra-loi-bang-doi-tuong-error-cung-khong-kem-phan-quan-trong"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/beside-error-handling-creating-errors-with-error-objects-is-equally-important"/></url><url><loc>https://2coffee.dev/bai-viet/ban-ve-van-de-co-nen-sua-loi-cua-nguoi-khac</loc><lastmod>2023-08-31T06:55:19.654Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/ban-ve-van-de-co-nen-sua-loi-cua-nguoi-khac"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/discussing-the-issue-of-should-you-fix-other-peoples-bugs"/></url><url><loc>https://2coffee.dev/bai-viet/mot-so-cach-de-viet-ma-de-doc-hon-trong-javascript-nodejs</loc><lastmod>2023-09-03T17:18:28.094Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mot-so-cach-de-viet-ma-de-doc-hon-trong-javascript-nodejs"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/some-ways-to-write-more-readable-code-in-javascript-nodejs"/></url><url><loc>https://2coffee.dev/bai-viet/pure-function-trong-javascript-tai-sao-chung-ta-nen-biet-cang-som-cang-tot-15</loc><lastmod>2021-04-04T10:32:42.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/pure-function-trong-javascript-tai-sao-chung-ta-nen-biet-cang-som-cang-tot-15"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/pure-functions-in-javascript-why-should-we-know-about-them-as-early-as-possible"/></url><url><loc>https://2coffee.dev/bai-viet/phong-cach-point-free-trong-javascript</loc><lastmod>2023-09-07T16:45:27.685Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/phong-cach-point-free-trong-javascript"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/point-free-style-in-javascript"/></url><url><loc>https://2coffee.dev/bai-viet/sach-va-cuoc-hanh-trinh-di-tim-cach-viet</loc><lastmod>2023-09-15T07:16:05.179Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/sach-va-cuoc-hanh-trinh-di-tim-cach-viet"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/books-and-the-journey-to-find-how-to-write"/></url><url><loc>https://2coffee.dev/bai-viet/mot-thang-hoc-rust-muc-tieu-va-lo-trinh</loc><lastmod>2023-09-22T01:50:19.403Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mot-thang-hoc-rust-muc-tieu-va-lo-trinh"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/one-month-learning-rust-goals-and-roadmap"/></url><url><loc>https://2coffee.dev/bai-viet/1-thang-hoc-rust-nhung-dieu-co-ban-cua-ngon-ngu-lap-trinh-rust</loc><lastmod>2023-09-25T15:28:48.664Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/1-thang-hoc-rust-nhung-dieu-co-ban-cua-ngon-ngu-lap-trinh-rust"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/one-month-learning-rust-the-basics-of-rust-programming-language"/></url><url><loc>https://2coffee.dev/bai-viet/mot-thang-hoc-rust-quyen-so-huu</loc><lastmod>2023-09-28T02:11:47.408Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mot-thang-hoc-rust-quyen-so-huu"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/one-month-learning-rust-ownership"/></url><url><loc>https://2coffee.dev/bai-viet/mot-thang-hoc-rust-dot-bien-du-lieu-va-vay-muon-quyen-so-huu</loc><lastmod>2023-10-02T16:22:05.597Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mot-thang-hoc-rust-dot-bien-du-lieu-va-vay-muon-quyen-so-huu"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/one-month-learning-rust-data-mutability-and-borrowing-ownership"/></url><url><loc>https://2coffee.dev/bai-viet/blog-gio-day-da-co-song-ngu</loc><lastmod>2023-10-07T12:02:57.210Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/blog-gio-day-da-co-song-ngu"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/blog-is-now-bilingual"/></url><url><loc>https://2coffee.dev/bai-viet/mot-thang-hoc-rust-packages-crates-va-modules</loc><lastmod>2023-10-11T02:29:00.836Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mot-thang-hoc-rust-packages-crates-va-modules"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/one-month-learning-rust-packages-crates-modules"/></url><url><loc>https://2coffee.dev/bai-viet/tich-hop-chatgpt-vao-dich-bai-viet-trong-admincp</loc><lastmod>2023-10-15T15:19:26.255Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tich-hop-chatgpt-vao-dich-bai-viet-trong-admincp"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/integrating-chatgpt-into-article-translation-in-admincp"/></url><url><loc>https://2coffee.dev/bai-viet/mot-thang-hoc-rust-enums-va-pattern-matching</loc><lastmod>2023-10-17T17:09:03.891Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mot-thang-hoc-rust-enums-va-pattern-matching"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/one-month-learning-rust-enums-and-pattern-matching"/></url><url><loc>https://2coffee.dev/bai-viet/doi-dieu-ve-object-reference-trong-javascript-nhieu-luc-quen-that-phien-toai-16</loc><lastmod>2021-04-04T16:06:31.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/doi-dieu-ve-object-reference-trong-javascript-nhieu-luc-quen-that-phien-toai-16"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/notes-on-object-reference-in-javascript-it-can-be-quite-troublesome-sometimes"/></url><url><loc>https://2coffee.dev/bai-viet/tinh-nang-khao-sat-lop-giap-sat-chong-lai-cam-bay-xay-dung</loc><lastmod>2023-10-31T15:50:03.119Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tinh-nang-khao-sat-lop-giap-sat-chong-lai-cam-bay-xay-dung"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/surveys-feature-the-iron-armor-against-blogging-traps"/></url><url><loc>https://2coffee.dev/bai-viet/series-quan-tri-server-co-ban-khai-niem-co-ban</loc><lastmod>2023-11-05T13:24:55.709Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/series-quan-tri-server-co-ban-khai-niem-co-ban"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/server-administration-basics-series-basic-concepts"/></url><url><loc>https://2coffee.dev/bai-viet/promise-cach-su-dung-va-mot-vai-luu-y</loc><lastmod>2023-11-08T04:48:21.527Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/promise-cach-su-dung-va-mot-vai-luu-y"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/promise-how-to-use-and-some-notes"/></url><url><loc>https://2coffee.dev/bai-viet/mot-so-quy-tac-desgin-api</loc><lastmod>2023-11-10T03:41:15.306Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mot-so-quy-tac-desgin-api"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/api-design-principles"/></url><url><loc>https://2coffee.dev/bai-viet/chatgpt-api-cung-nhung-van-de-moi-trong-cuoc-chien-voi-dich-thuat</loc><lastmod>2023-11-15T16:11:06.098Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/chatgpt-api-cung-nhung-van-de-moi-trong-cuoc-chien-voi-dich-thuat"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/chatgpt-api-and-new-challenges-in-the-translation-battle"/></url><url><loc>https://2coffee.dev/bai-viet/mot-bai-viet-chi-tiet-hon-ve-serverless</loc><lastmod>2023-11-19T15:03:06.854Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mot-bai-viet-chi-tiet-hon-ve-serverless"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/a-more-in-depth-article-on-serverless"/></url><url><loc>https://2coffee.dev/bai-viet/tan-man-ve-hai-mo-hinh-phat-trien-phan-mem-la-waterfall-va-agile</loc><lastmod>2023-12-07T16:30:31.751Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tan-man-ve-hai-mo-hinh-phat-trien-phan-mem-la-waterfall-va-agile"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/reflections-on-waterfall-and-agile-software-development-models"/></url><url><loc>https://2coffee.dev/bai-viet/su-dung-casbin-de-phan-quyen-cho-nguoi-dung-trong-he-thong</loc><lastmod>2023-12-14T16:27:25.904Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/su-dung-casbin-de-phan-quyen-cho-nguoi-dung-trong-he-thong"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/using-casbin-for-user-authorization-in-a-system"/></url><url><loc>https://2coffee.dev/bai-viet/dong-luc-noi-tai-va-bai-hoc-ve-chu-ngua-ben-dong-song</loc><lastmod>2023-12-21T17:11:51.085Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/dong-luc-noi-tai-va-bai-hoc-ve-chu-ngua-ben-dong-song"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/inner-motivation-and-lessons-from-the-horse-by-the-river"/></url><url><loc>https://2coffee.dev/bai-viet/series-ve-docker-trong-thuc-hanh-san-xuat-docker-la-gi-ma-hot-the</loc><lastmod>2021-04-12T01:18:15.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/series-ve-docker-trong-thuc-hanh-san-xuat-docker-la-gi-ma-hot-the"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/series-on-docker-in-practice-and-production-what-makes-docker-so-popular"/></url><url><loc>https://2coffee.dev/bai-viet/so-sanh-5-cong-cu-phan-tich-so-lieu-cho-trang-blog-2coffee-dev</loc><lastmod>2023-12-24T08:52:48.928Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/so-sanh-5-cong-cu-phan-tich-so-lieu-cho-trang-blog-2coffee-dev"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/comparing-5-analytics-tools-for-the-2coffee-dev-blog"/></url><url><loc>https://2coffee.dev/bai-viet/developer-choi-am-pha-ca-phe-moka-pot-nhu-the-nao</loc><lastmod>2023-12-28T02:27:45.529Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/developer-choi-am-pha-ca-phe-moka-pot-nhu-the-nao"/></url><url><loc>https://2coffee.dev/bai-viet/chao-ngay-cuoi-cua-2023-hay-xem-nam-vua-qua-chung-ta-lam-duoc-gi-nao</loc><lastmod>2023-12-31T16:38:20.731Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/chao-ngay-cuoi-cua-2023-hay-xem-nam-vua-qua-chung-ta-lam-duoc-gi-nao"/></url><url><loc>https://2coffee.dev/bai-viet/curry-function-la-gi-mot-mon-ca-ri-ngon-va-lam-sao-de-thuong-thuc-no</loc><lastmod>2021-04-12T08:17:47.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/curry-function-la-gi-mot-mon-ca-ri-ngon-va-lam-sao-de-thuong-thuc-no"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-is-a-curry-function-a-delicious-curry-dish-and-how-to-enjoy-it"/></url><url><loc>https://2coffee.dev/bai-viet/series-ve-docker-trong-thuc-hanh-va-san-xuat-thanh-phan-co-ban-cua-docker-va-mot-so-khai-niem-thuong-gap</loc><lastmod>2021-04-14T04:06:05.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/series-ve-docker-trong-thuc-hanh-va-san-xuat-thanh-phan-co-ban-cua-docker-va-mot-so-khai-niem-thuong-gap"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/series-on-docker-in-practice-and-production-basic-components-of-docker-and-common-concepts"/></url><url><loc>https://2coffee.dev/bai-viet/cai-dat-nodejs-chay-ung-dung-nodejs-dau-tien-2</loc><lastmod>2020-08-09T15:54:59.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/cai-dat-nodejs-chay-ung-dung-nodejs-dau-tien-2"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/installing-nodejs-and-running-your-first-nodejs-application"/></url><url><loc>https://2coffee.dev/bai-viet/trien-khai-ma-hieu-qua-hon-voi-compose-va-pipe-function-trong-javascript</loc><lastmod>2021-04-15T15:07:55.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/trien-khai-ma-hieu-qua-hon-voi-compose-va-pipe-function-trong-javascript"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/implementing-more-efficient-code-with-compose-and-pipe-functions-in-javascript"/></url><url><loc>https://2coffee.dev/bai-viet/series-ve-docker-trong-thuc-hanh-va-san-xuat-dockerfile-de-tao-mot-image</loc><lastmod>2021-04-21T07:51:59.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/series-ve-docker-trong-thuc-hanh-va-san-xuat-dockerfile-de-tao-mot-image"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/series-on-docker-in-practice-and-production-dockerfile-to-create-an-image"/></url><url><loc>https://2coffee.dev/bai-viet/npm-dai-cuong-toi-da-day-package-len-npm-nhu-the-nao</loc><lastmod>2021-06-17T04:57:27.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/npm-dai-cuong-toi-da-day-package-len-npm-nhu-the-nao"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/overview-of-npm-how-did-i-publish-a-package-on-npm"/></url><url><loc>https://2coffee.dev/bai-viet/toi-vua-lo-commit-sai-lam-sao-de-sua-lai-ngay-lap-tuc</loc><lastmod>2021-06-20T10:37:48.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/toi-vua-lo-commit-sai-lam-sao-de-sua-lai-ngay-lap-tuc"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/how-to-fix-a-mistaken-commit-immediately"/></url><url><loc>https://2coffee.dev/bai-viet/series-ve-docker-trong-thuc-hanh-va-san-xuat-docker-compose-de-khoi-dong-nhieu-services</loc><lastmod>2021-06-24T14:38:29.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/series-ve-docker-trong-thuc-hanh-va-san-xuat-docker-compose-de-khoi-dong-nhieu-services"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/series-on-docker-in-practice-and-production-using-docker-compose-to-start-multiple-services"/></url><url><loc>https://2coffee.dev/bai-viet/closure-la-gi-tai-sao-toi-can-dung-closure</loc><lastmod>2021-06-26T18:31:01.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/closure-la-gi-tai-sao-toi-can-dung-closure"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-is-a-closure-why-do-i-need-to-use-closure"/></url><url><loc>https://2coffee.dev/bai-viet/npm-dai-cuong-xay-dung-va-day-package-len-npm</loc><lastmod>2021-06-27T06:45:55.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/npm-dai-cuong-xay-dung-va-day-package-len-npm"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/introduction-to-npm-building-and-publishing-package-to-npm"/></url><url><loc>https://2coffee.dev/bai-viet/functor-la-gi-toi-co-can-biet-den-functor</loc><lastmod>2021-07-20T02:24:49.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/functor-la-gi-toi-co-can-biet-den-functor"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-is-a-functor-do-i-need-to-know-about-functors"/></url><url><loc>https://2coffee.dev/bai-viet/series-ve-docker-trong-thuc-hanh-va-san-xuat-network-trong-docker</loc><lastmod>2021-07-26T01:35:51.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/series-ve-docker-trong-thuc-hanh-va-san-xuat-network-trong-docker"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/series-on-docker-in-practice-and-production-network-in-docker"/></url><url><loc>https://2coffee.dev/bai-viet/npm-la-gi-3</loc><lastmod>2020-08-09T15:52:47.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/npm-la-gi-3"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-is-npm-why-does-npm-come-with-nodejs"/></url><url><loc>https://2coffee.dev/bai-viet/series-lap-trinh-voi-du-lieu-array-va-object-trong-javascript-xu-ly-du-lieu-don-thuan</loc><lastmod>2021-08-03T07:01:08.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/series-lap-trinh-voi-du-lieu-array-va-object-trong-javascript-xu-ly-du-lieu-don-thuan"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/series-programming-with-array-and-object-data-in-javascript-handling-plain-data"/></url><url><loc>https://2coffee.dev/bai-viet/series-lap-trinh-voi-du-lieu-array-va-object-trong-javascript-xu-ly-du-lieu-the-nao-cho-tot</loc><lastmod>2021-08-27T13:09:26.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/series-lap-trinh-voi-du-lieu-array-va-object-trong-javascript-xu-ly-du-lieu-the-nao-cho-tot"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/programming-series-with-array-and-object-data-in-javascript-how-to-handle-data-effectively"/></url><url><loc>https://2coffee.dev/bai-viet/redisearch-la-gi-estacks-dang-su-dung-redisearch-lam-co-so-du-lieu</loc><lastmod>2021-08-30T08:19:55.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/redisearch-la-gi-estacks-dang-su-dung-redisearch-lam-co-so-du-lieu"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-is-redisearch-2coffee-dev-is-using-redisearch-as-the-database"/></url><url><loc>https://2coffee.dev/bai-viet/worker-threads-la-gi-ban-da-biet-khi-nao-thi-su-dung-worker-threads-trong-nodejs-chua</loc><lastmod>2023-09-10T07:33:06.021Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/worker-threads-la-gi-ban-da-biet-khi-nao-thi-su-dung-worker-threads-trong-nodejs-chua"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-are-worker-threads-do-you-know-when-to-use-them-in-nodejs"/></url><url><loc>https://2coffee.dev/bai-viet/tai-sao-can-refresh-token-ban-da-biet-cach-luu-tru-refresh-token-va-access-token-an-toan-trong-trinh-duyet-chua</loc><lastmod>2021-09-12T14:13:50.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tai-sao-can-refresh-token-ban-da-biet-cach-luu-tru-refresh-token-va-access-token-an-toan-trong-trinh-duyet-chua"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/why-do-we-need-refresh-tokens-do-you-know-how-to-securely-store-refresh-tokens-and-access-tokens-in-the-browser"/></url><url><loc>https://2coffee.dev/bai-viet/tim-kiem-fulltext-trong-redisearch</loc><lastmod>2021-11-27T05:55:54.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tim-kiem-fulltext-trong-redisearch"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/searching-fulltext-in-redisearch"/></url><url><loc>https://2coffee.dev/bai-viet/loi-ich-va-nhung-han-che-khi-su-dung-ssh-tunneling-cach-su-dung-ssh-tunneling</loc><lastmod>2022-01-25T03:29:53.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/loi-ich-va-nhung-han-che-khi-su-dung-ssh-tunneling-cach-su-dung-ssh-tunneling"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/benefits-and-limitations-of-using-ssh-tunneling-how-to-use-ssh-tunneling"/></url><url><loc>https://2coffee.dev/bai-viet/lam-the-nao-de-viet-duoc-mot-file-readme-tot</loc><lastmod>2022-01-29T16:03:30.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/lam-the-nao-de-viet-duoc-mot-file-readme-tot"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/how-to-write-a-good-readme-file"/></url><url><loc>https://2coffee.dev/bai-viet/lai-ban-ve-cach-commit-code-trong-du-an</loc><lastmod>2022-03-26T14:50:02.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/lai-ban-ve-cach-commit-code-trong-du-an"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/discussing-code-commit-in-projects"/></url><url><loc>https://2coffee.dev/bai-viet/gioi-thieu-thu-vien-lap-trinh-ham-ramda</loc><lastmod>2022-04-28T02:48:30.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/gioi-thieu-thu-vien-lap-trinh-ham-ramda"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/introduction-to-the-ramda-functional-programming-library"/></url><url><loc>https://2coffee.dev/bai-viet/kien-truc-nodejs-4</loc><lastmod>2020-08-18T16:19:42.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/kien-truc-nodejs-4"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/nodejs-architecture-introduction-to-nodejs"/></url><url><loc>https://2coffee.dev/bai-viet/cach-su-dung-nginx-lam-reverse-proxy-cho-server</loc><lastmod>2022-05-07T08:00:24.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/cach-su-dung-nginx-lam-reverse-proxy-cho-server"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/using-nginx-as-reverse-proxy-server"/></url><url><loc>https://2coffee.dev/bai-viet/trinh-duyet-da-chay-duoc-ma-c-c-go-javascript-da-het-thoi</loc><lastmod>2022-05-15T07:41:28.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/trinh-duyet-da-chay-duoc-ma-c-c-go-javascript-da-het-thoi"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/can-browsers-run-c-c-go-javascript-outdated"/></url><url><loc>https://2coffee.dev/bai-viet/dynamic-rendering-la-gi-huong-dan-thiet-lap-dynamic-rendering-cho-cac-trang-csr-bang-nginx</loc><lastmod>2022-05-21T08:16:07.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/dynamic-rendering-la-gi-huong-dan-thiet-lap-dynamic-rendering-cho-cac-trang-csr-bang-nginx"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-is-dynamic-rendering-guide-to-setting-up-dynamic-rendering-for-csr-pages-with-nginx"/></url><url><loc>https://2coffee.dev/bai-viet/dan-choi-specialty-specialty-la-gi</loc><lastmod>2022-05-23T15:59:12.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/dan-choi-specialty-specialty-la-gi"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/specialty-coffee-connoisseur-what-is-specialty-coffee"/></url><url><loc>https://2coffee.dev/bai-viet/giai-ngo-mozilla-5-0-la-gi-tai-sao-trinh-duyet-nao-cung-co-chuoi-nay-trong-user-agent</loc><lastmod>2022-05-28T13:53:10.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/giai-ngo-mozilla-5-0-la-gi-tai-sao-trinh-duyet-nao-cung-co-chuoi-nay-trong-user-agent"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/puzzle-what-is-mozilla-5-0-why-is-it-present-in-all-user-agents"/></url><url><loc>https://2coffee.dev/bai-viet/webhook-la-gi-su-dung-webhook-trong-nhung-truong-hop-nao</loc><lastmod>2022-06-05T08:55:25.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/webhook-la-gi-su-dung-webhook-trong-nhung-truong-hop-nao"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-is-a-webhook-when-to-use-webhooks"/></url><url><loc>https://2coffee.dev/bai-viet/diem-lai-nhung-tinh-nang-sap-co-cua-javascript-trong-ecmascript-2022-es13</loc><lastmod>2022-06-08T14:12:34.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/diem-lai-nhung-tinh-nang-sap-co-cua-javascript-trong-ecmascript-2022-es13"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/a-recap-of-upcomming-features-in-ecmascript-2022-es13"/></url><url><loc>https://2coffee.dev/bai-viet/su-dung-mien-phi-shared-runners-ci-cd-cua-gitlab</loc><lastmod>2022-06-28T16:36:47.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/su-dung-mien-phi-shared-runners-ci-cd-cua-gitlab"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/using-gitlab-free-shared-runners-ci-cd"/></url><url><loc>https://2coffee.dev/bai-viet/dam-dao-ve-orm-va-query-builder-sequelize-vs-knex</loc><lastmod>2022-07-04T15:09:54.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/dam-dao-ve-orm-va-query-builder-sequelize-vs-knex"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/discussion-on-orm-and-query-builder-sequelize-vs-knex"/></url><url><loc>https://2coffee.dev/bai-viet/giai-phap-nao-de-vo-hieu-hoa-ma-thong-bao-jwt-khi-nguoi-dung-dang-xuat</loc><lastmod>2022-07-06T15:34:36.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/giai-phap-nao-de-vo-hieu-hoa-ma-thong-bao-jwt-khi-nguoi-dung-dang-xuat"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-solutions-are-there-to-invalidate-jwt-tokens-when-a-user-logs-out"/></url><url><loc>https://2coffee.dev/bai-viet/kien-truc-nodejs-5</loc><lastmod>2020-08-23T16:11:16.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/kien-truc-nodejs-5"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/nodejs-architecture-single-thread-call-stack-synchronous-and-asynchronous-io-in-nodejs"/></url><url><loc>https://2coffee.dev/bai-viet/logging-ung-dung-viet-bang-nodejs-qua-3-cap-do</loc><lastmod>2022-07-08T02:11:35.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/logging-ung-dung-viet-bang-nodejs-qua-3-cap-do"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/logging-nodejs-applications-in-3-levels"/></url><url><loc>https://2coffee.dev/bai-viet/hai-ki-thua-nham-ngan-vong-lap-su-kien-event-loop-bi-chan-khi-xu-ly-tac-vu-nang-cpu-intensive-task</loc><lastmod>2022-07-09T07:27:22.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/hai-ki-thua-nham-ngan-vong-lap-su-kien-event-loop-bi-chan-khi-xu-ly-tac-vu-nang-cpu-intensive-task"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/two-techniques-to-prevent-blocking-the-event-loop-when-handling-cpu-intensive-tasks"/></url><url><loc>https://2coffee.dev/bai-viet/5-dieu-ryan-dahl-chia-se-rang-anh-cam-thay-hoi-han-vi-da-lam-voi-node-js</loc><lastmod>2022-07-09T13:34:00.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/5-dieu-ryan-dahl-chia-se-rang-anh-cam-thay-hoi-han-vi-da-lam-voi-node-js"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/5-things-ryan-dahl-regrets-about-node-js"/></url><url><loc>https://2coffee.dev/bai-viet/phan-biet-tac-vu-io-va-tac-vu-chuyen-sau-cpu</loc><lastmod>2022-07-12T16:09:04.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/phan-biet-tac-vu-io-va-tac-vu-chuyen-sau-cpu"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/the-difference-between-io-tasks-and-cpu-intensive-tasks"/></url><url><loc>https://2coffee.dev/bai-viet/ngan-chan-tan-cong-xss-bang-content-security-policy-csp</loc><lastmod>2022-07-15T16:38:04.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/ngan-chan-tan-cong-xss-bang-content-security-policy-csp"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/preventing-xss-attacks-with-content-security-policy-csp"/></url><url><loc>https://2coffee.dev/bai-viet/pattern-adapter-lam-the-nao-de-giup-cac-doi-tuong-lam-viec-voi-nhau</loc><lastmod>2022-08-06T13:46:29.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/pattern-adapter-lam-the-nao-de-giup-cac-doi-tuong-lam-viec-voi-nhau"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/pattern-adapter-how-to-make-objects-work-together"/></url><url><loc>https://2coffee.dev/bai-viet/gitflow-la-gi-va-ban-co-can-biet-den-no</loc><lastmod>2022-08-08T16:22:54.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/gitflow-la-gi-va-ban-co-can-biet-den-no"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-is-gitflow-and-why-should-you-know-about-it"/></url><url><loc>https://2coffee.dev/bai-viet/githooks-la-gi-tim-hieu-cach-su-dung-githook-de-ngan-chan-commit-au</loc><lastmod>2022-08-14T06:51:38.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/githooks-la-gi-tim-hieu-cach-su-dung-githook-de-ngan-chan-commit-au"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-are-githooks-learn-how-to-use-githooks-to-prevent-careless-commits"/></url><url><loc>https://2coffee.dev/bai-viet/gioi-thieu-thu-vien-tro-giup-dinh-danh-nguoi-dung-fingerprintjs</loc><lastmod>2022-08-20T16:48:04.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/gioi-thieu-thu-vien-tro-giup-dinh-danh-nguoi-dung-fingerprintjs"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/introducing-the-user-identification-library-fingerprintjs"/></url><url><loc>https://2coffee.dev/bai-viet/viet-blog-co-kho-vai-chia-se-cua-toi-cho-nguoi-moi-bat-dau-viet-blog</loc><lastmod>2022-08-25T16:47:29.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/viet-blog-co-kho-vai-chia-se-cua-toi-cho-nguoi-moi-bat-dau-viet-blog"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/is-blogging-difficult-my-advice-for-beginners"/></url><url><loc>https://2coffee.dev/bai-viet/kien-truc-nodejs-6</loc><lastmod>2020-08-25T15:42:44.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/kien-truc-nodejs-6"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/nodejs-architecture-how-does-nodejs-handle-asynchronous-tasks"/></url><url><loc>https://2coffee.dev/bai-viet/tim-hieu-ve-cac-loai-khoa-explicit-locking-trong-postgresql</loc><lastmod>2022-08-27T16:04:27.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tim-hieu-ve-cac-loai-khoa-explicit-locking-trong-postgresql"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/understanding-explicit-locking-types-in-postgresql"/></url><url><loc>https://2coffee.dev/bai-viet/eslint-la-gi-va-cach-dung-eslint-de-phat-hien-sua-chua-ma-cho-du-an-javascript</loc><lastmod>2022-08-28T13:42:20.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/eslint-la-gi-va-cach-dung-eslint-de-phat-hien-sua-chua-ma-cho-du-an-javascript"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-is-eslint-and-how-to-use-eslint-to-detect-fix-code-for-javascript-projects"/></url><url><loc>https://2coffee.dev/bai-viet/la-mot-developer-co-can-biet-cach-lam-san-pham</loc><lastmod>2022-09-17T16:40:55.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/la-mot-developer-co-can-biet-cach-lam-san-pham"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/should-a-developer-know-how-to-make-a-product"/></url><url><loc>https://2coffee.dev/bai-viet/mot-so-phuong-phap-xu-ly-loi-error-handling-trong-nodejs</loc><lastmod>2022-09-22T14:56:17.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mot-so-phuong-phap-xu-ly-loi-error-handling-trong-nodejs"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/some-error-handling-techniques-in-nodejs"/></url><url><loc>https://2coffee.dev/bai-viet/gioi-thieu-ve-redisjson-manh-ghep-hoan-hao-cho-redisearch</loc><lastmod>2022-10-05T15:52:19.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/gioi-thieu-ve-redisjson-manh-ghep-hoan-hao-cho-redisearch"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/introducing-redisjson-the-perfect-combination-for-redisearch"/></url><url><loc>https://2coffee.dev/bai-viet/tu-hoc-nodejs-thi-bat-dau-tu-dau-hoc-nodejs-co-kho-khong</loc><lastmod>2022-10-07T14:39:29.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tu-hoc-nodejs-thi-bat-dau-tu-dau-hoc-nodejs-co-kho-khong"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/where-to-start-learning-nodejs-is-learning-nodejs-difficult"/></url><url><loc>https://2coffee.dev/bai-viet/dieu-gi-khien-bun-sh-tro-nen-dang-gom-so-voi-nodejs</loc><lastmod>2022-10-19T14:12:56.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/dieu-gi-khien-bun-sh-tro-nen-dang-gom-so-voi-nodejs"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-makes-bun-sh-formidable-with-node-js"/></url><url><loc>https://2coffee.dev/bai-viet/5-dieu-gay-ro-ri-bo-nho-memory-leak-trong-nodejs-va-cach-khac-phuc</loc><lastmod>2022-10-20T16:52:09.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/5-dieu-gay-ro-ri-bo-nho-memory-leak-trong-nodejs-va-cach-khac-phuc"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/5-causes-of-memory-leaks-in-nodejs-and-how-to-fix-them"/></url><url><loc>https://2coffee.dev/bai-viet/code-thi-cu-code-nhung-da-bao-gio-ban-danh-thoi-gian-khai-pha-tu-duy-lap-trinh-cua-minh-chua</loc><lastmod>2022-10-23T05:42:33.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/code-thi-cu-code-nhung-da-bao-gio-ban-danh-thoi-gian-khai-pha-tu-duy-lap-trinh-cua-minh-chua"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/code-code-code-but-have-you-ever-spent-time-exploring-your-programming-mindset"/></url><url><loc>https://2coffee.dev/bai-viet/mutex-va-ky-thuat-giai-quyet-van-de-tranh-chap-tai-nguyen-do-race-condition-gay-ra</loc><lastmod>2022-10-26T03:52:57.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mutex-va-ky-thuat-giai-quyet-van-de-tranh-chap-tai-nguyen-do-race-condition-gay-ra"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/mutex-and-techniques-for-resolving-resource-contentions-caused-by-race-condition"/></url><url><loc>https://2coffee.dev/bai-viet/kien-truc-nodejs-7</loc><lastmod>2020-08-27T16:51:45.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/kien-truc-nodejs-7"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/nodejs-architecture-part-3"/></url><url><loc>https://2coffee.dev/bai-viet/bat-dau-moi-thu-voi-tai-lieu-ky-thuat-ban-da-hinh-thanh-thoi-quen-nay-chua</loc><lastmod>2022-10-30T05:46:13.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/bat-dau-moi-thu-voi-tai-lieu-ky-thuat-ban-da-hinh-thanh-thoi-quen-nay-chua"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/start-everything-with-technical-documentation-do-you-have-this-habit"/></url><url><loc>https://2coffee.dev/bai-viet/thiet-lap-goi-y-tim-kiem-auto-complete-bang-redisearch</loc><lastmod>2022-11-01T16:29:55.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/thiet-lap-goi-y-tim-kiem-auto-complete-bang-redisearch"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/setting-up-auto-complete-with-redisearch"/></url><url><loc>https://2coffee.dev/bai-viet/hsts-va-cach-bao-ve-website-khoi-cuoc-tan-cong-man-in-the-middle</loc><lastmod>2022-11-07T16:45:10.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/hsts-va-cach-bao-ve-website-khoi-cuoc-tan-cong-man-in-the-middle"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/hsts-and-protecting-websites-from-man-in-the-middle-attacks"/></url><url><loc>https://2coffee.dev/bai-viet/tai-sao-nen-biet-cau-truc-du-lieu-va-giai-thuat-mot-dieu-ma-nhieu-nam-qua-chua-ai-noi-voi-ban</loc><lastmod>2022-11-08T04:52:40.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tai-sao-nen-biet-cau-truc-du-lieu-va-giai-thuat-mot-dieu-ma-nhieu-nam-qua-chua-ai-noi-voi-ban"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/why-should-you-know-about-data-structures-and-algorithms-something-that-no-one-has-told-you-for-many-years"/></url><url><loc>https://2coffee.dev/bai-viet/cluster-trong-nodejs-la-gi-su-dung-cluster-de-tang-kha-nang-chiu-tai-ung-dung-viet-bang-nodejs</loc><lastmod>2022-11-14T17:31:17.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/cluster-trong-nodejs-la-gi-su-dung-cluster-de-tang-kha-nang-chiu-tai-ung-dung-viet-bang-nodejs"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/cluster-in-node-js-what-is-it-use-cluster-to-increase-scalability-of-node-js-applications"/></url><url><loc>https://2coffee.dev/bai-viet/figma-va-nhung-loi-ich-doi-voi-lap-trinh-vien-backend</loc><lastmod>2022-11-17T14:55:19.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/figma-va-nhung-loi-ich-doi-voi-lap-trinh-vien-backend"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/figma-and-its-benefits-for-backend-developers"/></url><url><loc>https://2coffee.dev/bai-viet/ban-co-suy-nghi-nhu-the-nao-khi-toi-noi-rang-nodejs-rat-nhanh</loc><lastmod>2022-11-20T06:26:54.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/ban-co-suy-nghi-nhu-the-nao-khi-toi-noi-rang-nodejs-rat-nhanh"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-do-you-think-when-i-say-nodejs-is-fast"/></url><url><loc>https://2coffee.dev/bai-viet/telegram-va-kenh-gui-nhan-thong-bao-tuc-thi</loc><lastmod>2022-11-22T16:27:43.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/telegram-va-kenh-gui-nhan-thong-bao-tuc-thi"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/telegram-and-realtime-notification-channels"/></url><url><loc>https://2coffee.dev/bai-viet/nghe-thuat-lang-nghe-khong-phai-ai-cung-dang-san-sang-de-lang-nghe-nguoi-khac-noi</loc><lastmod>2022-11-25T03:20:28.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/nghe-thuat-lang-nghe-khong-phai-ai-cung-dang-san-sang-de-lang-nghe-nguoi-khac-noi"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/the-art-of-listening-not-everyone-is-ready-to-listen-to-others"/></url><url><loc>https://2coffee.dev/bai-viet/tai-sao-ban-nen-su-dung-thanh-thao-bo-ba-map-filter-va-reduce-trong-javascript</loc><lastmod>2022-11-28T16:28:41.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tai-sao-ban-nen-su-dung-thanh-thao-bo-ba-map-filter-va-reduce-trong-javascript"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/why-should-you-master-the-trio-of-map-filter-and-reduce-in-javascript"/></url><url><loc>https://2coffee.dev/bai-viet/tim-hieu-ve-vong-lap-su-kien-event-loop-trong-nodejs-8</loc><lastmod>2020-09-07T16:05:45.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tim-hieu-ve-vong-lap-su-kien-event-loop-trong-nodejs-8"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/understanding-the-event-loop-in-nodejs"/></url><url><loc>https://2coffee.dev/bai-viet/mime-sniffing-la-gi-cach-de-bao-ve-website-khoi-cuoc-tan-cong-do-tim-mime</loc><lastmod>2022-11-30T13:32:02.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mime-sniffing-la-gi-cach-de-bao-ve-website-khoi-cuoc-tan-cong-do-tim-mime"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-is-mime-sniffing-and-how-to-protect-your-website-from-mime-guessing-attacks"/></url><url><loc>https://2coffee.dev/bai-viet/tai-sao-can-refresh-token-ban-da-biet-cach-luu-tru-refresh-token-va-access-token-an-toan-trong-trinh-duyet-chua-phan-2</loc><lastmod>2022-12-01T17:12:39.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tai-sao-can-refresh-token-ban-da-biet-cach-luu-tru-refresh-token-va-access-token-an-toan-trong-trinh-duyet-chua-phan-2"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/why-do-we-need-refresh-token-do-you-know-how-to-securely-store-refresh-token-and-access-token-in-the-browser-part-2"/></url><url><loc>https://2coffee.dev/bai-viet/gioi-thieu-cong-cu-posthog-thu-thap-du-lieu-nguoi-dung-danh-cho-cac-ki-su</loc><lastmod>2022-12-11T03:54:24.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/gioi-thieu-cong-cu-posthog-thu-thap-du-lieu-nguoi-dung-danh-cho-cac-ki-su"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/introduction-to-posthog-collecting-user-data-for-engineers"/></url><url><loc>https://2coffee.dev/bai-viet/hai-phuong-phap-trien-khai-phan-trang-pho-bien-hien-nay-ban-dang-dung-cach-nao</loc><lastmod>2022-12-11T14:47:03.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/hai-phuong-phap-trien-khai-phan-trang-pho-bien-hien-nay-ban-dang-dung-cach-nao"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/what-method-of-pagination-are-you-currently-using"/></url><url><loc>https://2coffee.dev/bai-viet/tu-sql-sang-redisearch-anh-xa-lenh-sql-sang-redisearch</loc><lastmod>2022-12-16T04:45:08.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/tu-sql-sang-redisearch-anh-xa-lenh-sql-sang-redisearch"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/from-sql-to-redisearch-mapping-sql-commands-to-redisearch"/></url><url><loc>https://2coffee.dev/bai-viet/toi-dang-giam-sat-may-chu-nhu-the-nao</loc><lastmod>2022-12-21T08:14:01.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/toi-dang-giam-sat-may-chu-nhu-the-nao"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/how-do-i-monitor-a-server"/></url><url><loc>https://2coffee.dev/bai-viet/ky-thuat-debug-ung-dung-viet-bang-nodejs</loc><lastmod>2022-12-23T02:35:58.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/ky-thuat-debug-ung-dung-viet-bang-nodejs"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/debugging-nodejs-applications"/></url><url><loc>https://2coffee.dev/bai-viet/toi-vua-phai-dua-mot-service-markdown-ra-khoi-api-cua-minh</loc><lastmod>2022-12-29T15:15:30.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/toi-vua-phai-dua-mot-service-markdown-ra-khoi-api-cua-minh"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/i-just-had-to-take-a-markdown-service-out-of-my-api"/></url><url><loc>https://2coffee.dev/bai-viet/don-gian-hoa-git-merge-va-git-rebase-su-dung-the-nao-cho-hop-ly</loc><lastmod>2022-12-30T04:17:27.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/don-gian-hoa-git-merge-va-git-rebase-su-dung-the-nao-cho-hop-ly"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/simplify-how-to-use-git-merge-and-git-rebase-appropriately"/></url><url><loc>https://2coffee.dev/bai-viet/chao-ngay-cuoi-cua-2022-hay-xem-nam-vua-qua-chung-ta-lam-duoc-gi-nao</loc><lastmod>2022-12-31T06:28:25.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/chao-ngay-cuoi-cua-2022-hay-xem-nam-vua-qua-chung-ta-lam-duoc-gi-nao"/></url><url><loc>https://2coffee.dev/bai-viet/dung-chan-vong-lap-su-kien-dont-block-the-event-loop-9</loc><lastmod>2020-09-10T15:03:21.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/dung-chan-vong-lap-su-kien-dont-block-the-event-loop-9"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/dont-block-the-event-loop-part-1"/></url><url><loc>https://2coffee.dev/bai-viet/ban-ve-cau-lenh-npm-run-build-tai-sao-can-phai-build</loc><lastmod>2023-01-01T14:21:57.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/ban-ve-cau-lenh-npm-run-build-tai-sao-can-phai-build"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/discussing-the-npm-run-build-command-why-is-it-necessary-to-build"/></url><url><loc>https://2coffee.dev/bai-viet/developer-choi-ca-phe-nhu-the-nao</loc><lastmod>2023-01-02T15:49:37.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/developer-choi-ca-phe-nhu-the-nao"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/how-do-developers-play-with-coffee"/></url><url><loc>https://2coffee.dev/bai-viet/archimedes-cung-loi-suy-nghi-dau-vao-dau-ra-trong-lap-trinh</loc><lastmod>2023-01-03T15:23:08.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/archimedes-cung-loi-suy-nghi-dau-vao-dau-ra-trong-lap-trinh"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/archimedes-and-input-output-thinking-in-programming"/></url><url><loc>https://2coffee.dev/bai-viet/mot-vai-luu-y-voi-package-json-va-package-lock-json-de-su-dung-npm-hieu-qua-hon</loc><lastmod>2023-01-09T17:00:55.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/mot-vai-luu-y-voi-package-json-va-package-lock-json-de-su-dung-npm-hieu-qua-hon"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/some-tips-on-package-json-and-package-lock-json-for-more-effective-use-of-npm"/></url><url><loc>https://2coffee.dev/bai-viet/suc-manh-y-chi-nghe-thuat-tap-trung-danh-cho-cac-developer</loc><lastmod>2023-01-16T03:41:58.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/suc-manh-y-chi-nghe-thuat-tap-trung-danh-cho-cac-developer"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/the-power-of-willpower-the-art-of-focus-for-developers"/></url><url><loc>https://2coffee.dev/bai-viet/giu-cho-minh-mot-cai-dau-lanh-khi-doc-blog</loc><lastmod>2023-01-23T17:21:07.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/giu-cho-minh-mot-cai-dau-lanh-khi-doc-blog"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/keep-a-cool-head-when-reading-blogs"/></url><url><loc>https://2coffee.dev/bai-viet/backdoor-trong-ung-dung-viet-bang-javascript-cuc-ki-tinh-vi-thong-qua-hai-hinh-thuc-invisible-character-attacks-va-homoglyph-attacks</loc><lastmod>2023-02-01T14:47:08.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/backdoor-trong-ung-dung-viet-bang-javascript-cuc-ki-tinh-vi-thong-qua-hai-hinh-thuc-invisible-character-attacks-va-homoglyph-attacks"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/backdoor-in-javascript-applications-through-invisible-character-attacks-and-homoglyph-attacks"/></url><url><loc>https://2coffee.dev/bai-viet/do-luong-thoi-gian-thuc-hien-ham-trong-javascript-mot-cach-thanh-lich</loc><lastmod>2023-02-02T16:04:32.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/do-luong-thoi-gian-thuc-hien-ham-trong-javascript-mot-cach-thanh-lich"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/measuring-execution-time-of-functions-in-javascript-in-a-graceful-way"/></url><url><loc>https://2coffee.dev/bai-viet/sao-luu-co-so-du-lieu-redis-len-telegram-mot-cach-tu-dong-bang-thiet-lap-cronjob</loc><lastmod>2023-02-05T14:10:57.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/sao-luu-co-so-du-lieu-redis-len-telegram-mot-cach-tu-dong-bang-thiet-lap-cronjob"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/backup-redis-database-to-telegram-automatically-with-cronjob-setup"/></url><url><loc>https://2coffee.dev/bai-viet/hieu-co-che-layer-caching-khi-build-docker-image-de-viet-dockerfile-tot-hon</loc><lastmod>2023-02-07T17:17:52.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/hieu-co-che-layer-caching-khi-build-docker-image-de-viet-dockerfile-tot-hon"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/articles/understanding-layer-caching-when-building-docker-image-for-better-dockerfile-writing"/></url><url><loc>https://2coffee.dev/bai-viet/nghien-cuu-tech-stack-cua-cac-cong-ty-cong-nghe</loc><lastmod>2023-04-01T07:19:18.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/nghien-cuu-tech-stack-cua-cac-cong-ty-cong-nghe"/></url><url><loc>https://2coffee.dev/bai-viet/giam-dung-luong-file-aof-de-sao-luu-co-so-du-lieu-redis</loc><lastmod>2023-03-19T07:07:56.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/giam-dung-luong-file-aof-de-sao-luu-co-so-du-lieu-redis"/></url><url><loc>https://2coffee.dev/bai-viet/trang-web-tong-hop-cac-luat-trong-thiet-ke-ui-ux-cho-website</loc><lastmod>2023-03-16T17:11:12.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/trang-web-tong-hop-cac-luat-trong-thiet-ke-ui-ux-cho-website"/></url><url><loc>https://2coffee.dev/bai-viet/trang-web-tao-hieu-ung-animation-cho-trang-web</loc><lastmod>2023-03-14T15:41:26.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/trang-web-tao-hieu-ung-animation-cho-trang-web"/></url><url><loc>https://2coffee.dev/bai-viet/gioi-thieu-muc-bai-viet-ngan</loc><lastmod>2023-03-13T16:47:16.000Z</lastmod><priority>0.8</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/bai-viet/gioi-thieu-muc-bai-viet-ngan"/></url><url><loc>https://2coffee.dev/</loc><lastmod>2024-07-01T02:16:30.273Z</lastmod><priority>1.0</priority><xhtml:link rel="alternate" hreflang="vi" href="https://2coffee.dev/"/><xhtml:link rel="alternate" hreflang="en" href="https://2coffee.dev/en"/></url></urlset>