<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Weiguang He's Blog]]></title><description><![CDATA[Weiguang He's Blog]]></description><link>https://weiguanghe.com</link><generator>RSS for Node</generator><lastBuildDate>Mon, 11 May 2026 00:22:13 GMT</lastBuildDate><atom:link href="https://weiguanghe.com/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><item><title><![CDATA[Setting up Alembic for SQLAlchemy]]></title><description><![CDATA[Alembic is really useful when you need to manage, version, and migrate your database schema within SQLAlchemy projects. In this post, I want to share]]></description><link>https://weiguanghe.com/post/2023-09-05-setting-up-alembic-for-sqlalchemy</link><guid isPermaLink="false">https://weiguanghe.com/post/2023-09-05-setting-up-alembic-for-sqlalchemy</guid><pubDate>Tue, 05 Sep 2023 15:25:10 GMT</pubDate></item><item><title><![CDATA[How to Wait for emit to Finish in Angular]]></title><description><![CDATA[In Angular, we use `EventEmitter` to communicate between components.

For example, we have a simple login form component:

```tsx
// login.component.t...]]></description><link>https://weiguanghe.com/post/2023-07-08-how-to-wait-for-emit-to-finish-in-angular</link><guid isPermaLink="false">https://weiguanghe.com/post/2023-07-08-how-to-wait-for-emit-to-finish-in-angular</guid><pubDate>Sat, 08 Jul 2023 04:34:31 GMT</pubDate></item><item><title><![CDATA[Handling the BOM (<U+FEFF>) in CSV]]></title><description><![CDATA[Recently, one of my colleagues encountered an issue while trying to parse a CSV into a JSON response. They noticed that there was an invisible charact...]]></description><link>https://weiguanghe.com/post/2023-06-29-handling-the-bom-(%3Cu%2Bfeff%3E)-in-csv</link><guid isPermaLink="false">https://weiguanghe.com/post/2023-06-29-handling-the-bom-(%3Cu%2Bfeff%3E)-in-csv</guid><pubDate>Thu, 29 Jun 2023 16:40:28 GMT</pubDate></item><item><title><![CDATA[Setting up MySQL on AL2023]]></title><description><![CDATA[Follow this quick guide to set up MySQL 8 on AL2023 without any hassle.

## Installation

```bash
$ curl -sSLO https://dev.mysql.com/get/mysql80-commu...]]></description><link>https://weiguanghe.com/post/2023-06-25-%23-setting-up-mysql-on-al2023</link><guid isPermaLink="false">https://weiguanghe.com/post/2023-06-25-%23-setting-up-mysql-on-al2023</guid><pubDate>Sun, 25 Jun 2023 15:14:04 GMT</pubDate></item><item><title><![CDATA[The Three Types of Jobs]]></title><description><![CDATA[Generally, jobs can be categorized into three types.

The first type consists of jobs that you excel at, the second includes jobs that you love, and t...]]></description><link>https://weiguanghe.com/post/2023-06-16-the-three-types-of-jobs</link><guid isPermaLink="false">https://weiguanghe.com/post/2023-06-16-the-three-types-of-jobs</guid><pubDate>Fri, 16 Jun 2023 15:15:18 GMT</pubDate></item><item><title><![CDATA[ Setting Environment Variables on Amazon Linux]]></title><description><![CDATA[Maintaining the security of your sensitive data, like the AWS S3 secret key and secret ID, is a critical part of good practice. Rather than including]]></description><link>https://weiguanghe.com/post/2023-06-13-set-environment-variables-on-amazon-linux</link><guid isPermaLink="false">https://weiguanghe.com/post/2023-06-13-set-environment-variables-on-amazon-linux</guid><pubDate>Tue, 13 Jun 2023 16:18:06 GMT</pubDate></item><item><title><![CDATA[Installing Certbot on Amazon Linux 2023]]></title><description><![CDATA[While hosting my website on Amazon Linux 2023, I intended to use Certbot for generating free HTTPS certificates. However, I encountered issues during]]></description><link>https://weiguanghe.com/post/2023-06-09-installing-certbot-on-amazon-linux-2023</link><guid isPermaLink="false">https://weiguanghe.com/post/2023-06-09-installing-certbot-on-amazon-linux-2023</guid><pubDate>Fri, 09 Jun 2023 16:08:05 GMT</pubDate></item><item><title><![CDATA[Blogging myths]]></title><description><![CDATA[I don’t know if you have the habit of blogging. I used to have and I built website to host my blog on Ali Cloud. But I didn't renew that server for a]]></description><link>https://weiguanghe.com/post/2023-06-08-blog-myths</link><guid isPermaLink="false">https://weiguanghe.com/post/2023-06-08-blog-myths</guid><pubDate>Thu, 08 Jun 2023 13:49:05 GMT</pubDate></item><item><title><![CDATA[Hey there!]]></title><description><![CDATA[Welcome to my personal website! Join me on a journey through web development and beyond, where I'll share technical articles and thoughts on various t...]]></description><link>https://weiguanghe.com/post/2023-06-05-hey-there!</link><guid isPermaLink="false">https://weiguanghe.com/post/2023-06-05-hey-there!</guid><pubDate>Mon, 05 Jun 2023 14:53:26 GMT</pubDate></item></channel></rss>