Why this blog?
In short, Implementing > Writing > Reading.
I am a full-stack software engineer who loves to write code and read books. I call myself "full-stack" because I am writing code in backend, frontend, and data engineering.
I don't think I am a talented programmer. However, I have been interested in learning so many concepts in computer science for the past few years, and I still keep the passion to learn more today.
Learning is a big topic. For techs, the best way to learn a new technology is to get your hands dirty.
- To learn a network protocol? implement it yourself from scratch.
- To understand a database? Write a simplified version yourself.
- ...
While implementing is the best way to learn in-depth, it is not time-efficient. Implementing exposes yourself in the wild and forces you to understand every detail. But sometimes you might get lost in the details and cannot see the whole picture.
In contrast, reading is a fast way to retrieve knowledge in a specific area systematically. Reading is always my first choice for learning new knowledge because:
- Reading helps me focus and enjoy a peaceful time
- A good book is carefully designed and crafted
- It is easier to keep your own pace (faster or slower) in reading
Reading helps you understand something and writing helps you remember it and consume it. Writing is the process of testing yourself on how well you understand the new concept via rephrasing it in your own words.
Even though writing is a good habit to keep, for me it is very difficult to execute. When I was younger, I sat down in front of my laptop and planned to write something on a cozy afternoon, I often ended up opening a video streaming website to watch a movie. Time flies, I am in my thirties, I have a child, and I don't have too much time now. I never have a decent blog ...
It is always not too late to start something, or restart something. And there are so many new areas to explore in this new AI area.
Write something, learn something!