My First Blog: The Beginning of My Journey
Why I Started This Blog
For quite a long time, I have wanted a place to record my growth.
As a PhD student, every day brings something new to learn—reading papers, exploring unfamiliar ideas, understanding source code, debugging strange issues, and occasionally feeling completely lost.
Some days are exciting. Others are frustrating.
Most of these moments seem insignificant at the time, but together they shape who I am becoming.
I don’t want those experiences to simply disappear.
Instead, I hope this blog will become a place where I can record not only what I learn, but also how I learn, what I think, the mistakes I make, and the lessons I gain along the way.
Perhaps years from now, I will return to this first post and remember how everything began.
Why GitHub Pages?
This is not actually my first attempt at building a personal website.
Before this, I tried using an AI-powered website builder called Manus.
However, the design felt a little too flashy for my taste, and maintaining the website required a paid subscription.
For a personal academic website that I hope to maintain for many years, it simply didn’t feel like the right choice.
So I started searching for alternatives.
Again and again, I found people recommending GitHub Pages, especially developers and researchers.
It is free, flexible, and gives you complete control over your own website.
That sounded exactly like what I wanted.
Since I had little experience with GitHub Pages, Jekyll, and Chirpy, I decided to ask ChatGPT to guide me through the entire process.
Looking back, I’m glad I did.
Instead of using a tool that generated everything automatically, I learned how my own website actually works.
Building This Website
Although the final result looks simple, getting here was not completely smooth.
The journey looked something like this:
- Search for a suitable blogging platform.
- Decide to build the website with GitHub Pages.
- Ask ChatGPT to guide me through the process.
- Choose the Chirpy theme.
- Create the GitHub repository.
- Rename the repository to satisfy GitHub Pages requirements.
- Configure GitHub Pages.
- Wait for the first deployment.
- Read GitHub Actions logs after encountering deployment issues.
- Fix the configuration.
- Successfully publish the website.
- Write this very first blog post.
Along the way, I encountered many concepts that were completely new to me—GitHub Pages, GitHub Actions, deployments, workflows, Jekyll, Markdown, and configuration files.
Every error message felt confusing at first.
Fortunately, every problem had a solution.
Little by little, the website finally came together.
Seeing the green check mark in GitHub Actions was surprisingly satisfying.
A Deployment Pitfall Worth Remembering
One issue took me longer than expected to figure out.
After pushing my first blog post, GitHub Actions kept failing at the Test site step. The error message looked like this:
1
'a' tag is missing a reference
At first, I assumed the problem was in the Markdown file itself. The log even pointed to _site/posts/building-this-website-from-scratch/index.html, which made it feel like my post content was broken.
But the post was fine.
The real issue was in _config.yml. In the Chirpy theme, if you do not specify an author in a post, the theme uses social.name as the default author and wraps it in a link using the first item in social.links. I had left all the social links commented out, so the generated HTML looked something like:
1
<a href="">Yijuan Liang</a>
That empty href is exactly what HTML-Proofer flags during deployment.
The fix was simple: add at least one valid link under social.links, for example:
1
2
3
4
social:
name: Yijuan Liang
links:
- https://github.com/Universe-ustc
After that, the build passed.
This was a good reminder: deployment errors do not always point to the file that looks suspicious in the log. Sometimes the problem comes from site-wide configuration, not the post content itself.
What This Website Will Become
Today, this website is just a blog.
But I don’t think it will stay that way forever.
Over the next several years, I hope it gradually grows into my personal academic website.
Besides blog posts, I plan to share
- research notes,
- paper reading summaries,
- source code analysis,
- interesting ideas,
- personal projects,
- and perhaps even the story of my PhD itself.
Rather than sharing only polished results, I also want to document the process behind them.
Research is full of uncertainty.
Sometimes the most valuable lessons come from the mistakes, the failed attempts, and the long hours spent understanding something that once seemed impossible.
Those are the moments I hope to preserve here.
The First Step
Every journey begins somewhere.
This website begins with a single blog post.
I have no idea how many posts I will eventually write.
I don’t know whether anyone else will ever read them.
But that isn’t the most important thing.
What matters is that I finally started.
If one day, years from now, I come back and read this post again, I hope it reminds me of the excitement, curiosity, and courage I had at the beginning of my PhD journey.
Here’s to the first step.
See you in the next post.
