<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Hieu Tran Ngoc Minh</title>
    <description>The latest articles on DEV Community by Hieu Tran Ngoc Minh (@tranngocminhhieu).</description>
    <link>https://dev.to/tranngocminhhieu</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3026490%2F783394b6-a695-4753-b1bb-6f7932e286bf.jpg</url>
      <title>DEV Community: Hieu Tran Ngoc Minh</title>
      <link>https://dev.to/tranngocminhhieu</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/tranngocminhhieu"/>
    <language>en</language>
    <item>
      <title>[Share Data / Python Lib] Thư viện chuẩn hóa &amp; chuyển đổi đơn vị hành chính Việt Nam</title>
      <dc:creator>Hieu Tran Ngoc Minh</dc:creator>
      <pubDate>Sun, 03 Aug 2025 03:53:18 +0000</pubDate>
      <link>https://dev.to/tranngocminhhieu/share-data-python-lib-thu-vien-chuan-hoa-chuyen-doi-don-vi-hanh-chinh-viet-nam-k7b</link>
      <guid>https://dev.to/tranngocminhhieu/share-data-python-lib-thu-vien-chuan-hoa-chuyen-doi-don-vi-hanh-chinh-viet-nam-k7b</guid>
      <description>&lt;p&gt;Chào mọi người,&lt;br&gt;
Mình vừa hoàn thành và public một thư viện Python mã nguồn mở, giúp parse (phân tích) và convert (chuyển đổi) địa chỉ theo đơn vị hành chính Việt Nam - đặc biệt là hỗ trợ chuẩn sáp nhập 34 tỉnh bắt đầu từ tháng 7/2025.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;LINK PROJECT:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;GitHub: &lt;a href="https://github.com/tranngocminhhieu/vietnamadminunits" rel="noopener noreferrer"&gt;https://github.com/tranngocminhhieu/vietnamadminunits&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;PyPI: &lt;a href="https://pypi.org/project/vietnamadminunits" rel="noopener noreferrer"&gt;https://pypi.org/project/vietnamadminunits&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;THƯ VIỆN NÀY CÓ GÌ:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Tải dataset đã được làm sạch và mapping: 63-province dataset, 34-province dataset, convert 63-province-34-province dataset.&lt;/li&gt;
&lt;li&gt;Chuẩn hóa địa chỉ về tỉnh / huyện / xã theo chuẩn 63 hoặc 34 tỉnh.&lt;/li&gt;
&lt;li&gt;Chuyển đổi địa chỉ cũ sang đơn vị hành chính mới.&lt;/li&gt;
&lt;li&gt;Có thể xử lý hàng loạt trong pandas.DataFrame.&lt;/li&gt;
&lt;li&gt;Hỗ trợ lấy tên ngắn, tên đầy đủ, tọa độ của đơn vị hành chính.&lt;/li&gt;
&lt;li&gt;Input địa chỉ không cần chuẩn dấu hay viết hoa.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;SỬ DỤNG ĐƠN GIẢN:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;`# Parse address&lt;br&gt;
from vietnamadminunits import parse_address&lt;br&gt;
parse_address("70 Nguyễn Sỹ Sách, Tan Son, tp.HCM")&lt;/p&gt;

&lt;h1&gt;
  
  
  Convert legacy address to new units
&lt;/h1&gt;

&lt;p&gt;from vietnamadminunits import convert_address&lt;br&gt;
convert_address("70 nguyễn sỹ sách, p.15, Tân Bình, Tp.HCM")`&lt;/p&gt;

&lt;p&gt;Và nhiều function hữu ích khác, mọi người đọc trên repo sẽ dễ hiểu hơn.&lt;/p&gt;

&lt;p&gt;Mọi người tham khảo và cho mình góp ý nhé!&lt;/p&gt;

</description>
      <category>vietnam</category>
      <category>vietnamadministrativeunits</category>
      <category>datasets</category>
      <category>python</category>
    </item>
    <item>
      <title>Cách cài đặt và tối ưu hóa Obsidian trên Linux</title>
      <dc:creator>Hieu Tran Ngoc Minh</dc:creator>
      <pubDate>Mon, 07 Apr 2025 14:48:28 +0000</pubDate>
      <link>https://dev.to/tranngocminhhieu/cach-cai-dat-va-toi-uu-hoa-obsidian-tren-linux-3p7c</link>
      <guid>https://dev.to/tranngocminhhieu/cach-cai-dat-va-toi-uu-hoa-obsidian-tren-linux-3p7c</guid>
      <description>&lt;p&gt;Obsidian là một ứng dụng ghi chú mạnh mẽ, sử dụng các tệp Markdown để tạo ra một hệ thống quản lý kiến thức tùy biến cao. Việc cài đặt Obsidian trên Linux rất đơn giản, nhưng việc tối ưu hóa nó đòi hỏi một số bước bổ sung. Hướng dẫn này sẽ đề cập đến phương pháp tốt nhất trước, sau đó là những tùy chọn thay thế.&lt;/p&gt;

&lt;h2&gt;
  
  
  Method 1: Cài đặt Obsidian bằng AppImage (Khuyến nghị)
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Bước 1:&lt;/strong&gt; Đầu tiên, hãy tải về phiên bản mới nhất của AppImage Obsidian từ &lt;a href="https://obsidian.md/download" rel="noopener noreferrer"&gt;trang tải xuống chính thức của Obsidian&lt;/a&gt;. Tệp AppImage thường sẽ được lưu vào thư mục Tải về mặc định của bạn.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bước 2:&lt;/strong&gt; Mở terminal và điều hướng đến thư mục chứa tệp AppImage đã tải về. Để làm cho tệp có khả năng thực thi, hãy chạy lệnh:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;chmod +x Obsidian-x.xx.x.AppImage
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Thay thế &lt;code&gt;x.xx.x&lt;/code&gt; bằng số phiên bản thực tế.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bước 3:&lt;/strong&gt; Nếu bạn gặp lỗi liên quan đến FUSE khi chạy AppImage, bạn có thể cần cài đặt gói &lt;code&gt;libfuse2&lt;/code&gt;. Hãy chạy lệnh sau để cài đặt:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo apt install libfuse2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Bước 4:&lt;/strong&gt; Bây giờ bạn có thể khởi động Obsidian bằng cách thực thi tệp AppImage:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;./Obsidian-x.xx.x.AppImage
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Nếu bạn muốn tích hợp Obsidian vào môi trường desktop của mình, bạn có thể sử dụng &lt;a href="https://github.com/TheAssassin/AppImageLauncher" rel="noopener noreferrer"&gt;AppImageLauncher&lt;/a&gt; để tự động xử lý việc tích hợp AppImage.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bước 5:&lt;/strong&gt; Để tiện lợi khởi động Obsidian từ menu ứng dụng của bạn, hãy tạo một tệp mục desktop. Mở một tệp mới trong trình soạn thảo văn bản yêu thích của bạn:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;nano ~/.local/share/applications/obsidian.desktop
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Thêm nội dung sau vào tệp này, điều chỉnh các đường dẫn nếu cần:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[Desktop Entry]
Name=Obsidian
Comment=Cơ sở kiến thức Markdown
Exec=/path/to/your/Obsidian-x.xx.x.AppImage %U
Icon=/path/to/icon/obsidian.png
Terminal=false
Type=Application
Categories=Utility;Office;
MimeType=x-scheme-handler/obsidian;
StartupWMClass=obsidian
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Thay thế &lt;code&gt;/path/to/your/Obsidian-x.xx.x.AppImage&lt;/code&gt; và &lt;code&gt;/path/to/icon/obsidian.png&lt;/code&gt; bằng các đường dẫn thực tế trên hệ thống của bạn. Sau khi lưu lại, Obsidian sẽ xuất hiện trong menu ứng dụng trên Linux của bạn.&lt;/p&gt;




&lt;h2&gt;
  
  
  Method 2: Cài đặt Obsidian bằng Flatpak
&lt;/h2&gt;

&lt;p&gt;Nếu bạn thích Flatpak, phương pháp này cung cấp một quy trình cài đặt đơn giản.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bước 1:&lt;/strong&gt; Đảm bảo rằng Flatpak đã được cài đặt trên hệ thống của bạn. Nếu chưa, hãy cài đặt nó bằng lệnh:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo apt install flatpak
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Bước 2:&lt;/strong&gt; Thêm kho lưu trữ Flathub vào hệ thống của bạn:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Bước 3:&lt;/strong&gt; Cài đặt Obsidian qua Flatpak:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flatpak install flathub md.obsidian.Obsidian
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Bước 4:&lt;/strong&gt; Khởi động Obsidian bằng lệnh:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flatpak run md.obsidian.Obsidian
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Các cài đặt Flatpak được sandbox theo mặc định, có thể hạn chế quyền truy cập vào một số thư mục nhất định. Nếu bạn lưu trữ ghi chú bên ngoài thư mục chính của mình, bạn sẽ cần cấp quyền truy cập bằng cách sử dụng một công cụ như &lt;a href="https://flathub.org/apps/details/com.github.tchx84.Flatseal" rel="noopener noreferrer"&gt;Flatseal&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tối ưu hóa Obsidian trên Linux
&lt;/h2&gt;

&lt;p&gt;Sau khi đã cài đặt Obsidian, việc tối ưu hóa môi trường làm việc của bạn sẽ giúp nâng cao quy trình ghi chú.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bước 1:&lt;/strong&gt; Obsidian sử dụng “Vaults” để tổ chức ghi chú của bạn. Hãy tạo ra một cấu trúc hợp lý trong các vault này bằng cách sử dụng thư mục, thẻ, hoặc phương pháp Zettelkasten, phương pháp này phụ thuộc vào thẻ và bộ lọc thay vì thư mục. Lựa chọn phương pháp tổ chức phù hợp nhất với quy trình làm việc của bạn.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bước 2:&lt;/strong&gt; Bật các plugin cộng đồng để mở rộng chức năng của Obsidian. Mở cài đặt của Obsidian bằng cách nhấp vào biểu tượng bánh răng, điều hướng đến “Community Plugins” và bật “Enable Community Plugins.”&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bước 3:&lt;/strong&gt; Duyệt qua và cài đặt các plugin phù hợp với nhu cầu của bạn. Một số plugin phổ biến bao gồm Iconize, Calendar, và Dataview. Sau khi cài đặt plugin, hãy nhớ bật nó lên và cấu hình theo sở thích của bạn.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bước 4:&lt;/strong&gt; Để tối ưu hóa hơn nữa Obsidian, hãy xem xét việc thiết lập phím tắt và tùy chỉnh giao diện thông qua các chủ đề. Bạn có thể tìm thấy các tùy chọn này trong menu cài đặt dưới “Hotkeys” và “Appearance.”&lt;/p&gt;

&lt;h2&gt;
  
  
  Lời kết
&lt;/h2&gt;

&lt;p&gt;Với Obsidian đã được cài đặt và tối ưu hóa thành công, bạn đã sẵn sàng để xây dựng hệ thống quản lý kiến thức cá nhân của mình trên Linux. Khám phá các plugin và tài nguyên cộng đồng khác nhau để tùy chỉnh Obsidian theo chính nhu cầu của bạn. Nếu bạn có bất kỳ câu hỏi nào hoặc có trải nghiệm riêng, hãy để lại bình luận bên dưới và chia sẻ bài viết này để những người khác cũng có thể tham khảo!&lt;br&gt;
&lt;em&gt;Hướng dẫn bởi &lt;a href="https://lucidgen.com/" rel="noopener noreferrer"&gt;lucidgen.com&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

</description>
      <category>obsidian</category>
      <category>linux</category>
    </item>
  </channel>
</rss>
