Why I Started Writing Everything Down
A personal space to think, learn, and slowly figure things out through writing.
- Published
- Oct 30, 2025
- Read Time
- 8 min read
- Words
- 1,736
Why I Write Things Down#
I’ve noticed something simple: if I don’t write things down, I forget them.
This space exists so I can capture ideas, organize what I learn, and more importantly — figure out what I actually understand (and what I don’t).
I don't write because I understand — I write to understand.
How I Try to Learn#
- Learn on purpose — not just consume randomly
- Use writing to think, not just to record
- Keep things organized so future me doesn’t suffer
For me, “intentional learning” just means this:
I come back to things on purpose — not because I forgot, but because I want them to stick. 1
What I Actually Write About#
Mostly things I don’t want to forget:
- Concepts that made something finally “click”
- Practical notes from building or debugging things
- Tools, patterns, and mental models I keep coming back to
Topics (for now)#
- Programming
- Systems thinking
- Productivity & habits
- Personal growth (still figuring this one out)
A Playground for How Things Render#
This section is mostly me testing how things look.
If something feels oddly specific… it probably is.
Sidenotes#
Sidenotes are things I want to say… but not important enough to interrupt the main flow. 1
Text Styles#
- Bold for emphasis
- Italics for subtle attention
Things I no longer believeinline code
Writing makes knowledge stick a little longer.
Tabs#
console.log("Hello, World!");
function sum(a, b) {
return a + b;
}
console.log("Sum =", sum(5, 7));#include <iostream>
int main() {
std::cout << "Hello, World!" << std::endl;
int a = 5;
int b = 7;
std::cout << "Sum = " << a + b << std::endl;
return 0;
}print("Hello, World!")
a = 5
b = 7
print("Sum =", a + b)Steps / Stepper#
- 01
Step 1: Start somewhere
Don’t overthink it. Just scaffold a project and get something running. - 02
Step 2: Add structure
Set up your styling, configs, and anything you’ll need later. It doesn’t have to be perfect — just usable. - 03
Step 3: Ship it
Push the code, deploy it, and see what breaks. Fix things as you go — that’s the real process anyway.
File Structure#
Tasks (Things I Say I’ll Do)#
- Set this up
- Actually write consistently
- Go back and refine old notes
Links#
Table Example#
(This is mostly here to test layout and styling — if you’re reading this, you’re probably curious like me 😄)
| Topic | Learning Objectives | Current Status | ||||
|---|---|---|---|---|---|---|
| Plan | Timeline | Level | Progress | |||
| Start | End | Progress (%) | Completed Items | |||
| Technical Skills | ||||||
| Programming (Algorithms) | Reach Intermediate level | 01/10 | 15/12 | Intermediate | 85% | Completed Algorithms section |
| System Design | Understand basic architecture | 20/11 | — | Beginner | 30% | Learning High-level Design |
| Mindset & Modeling | ||||||
| Systems Thinking | Master foundational models | 05/10 | — | Beginner Intermediate | 60% | Wrote about Complexity |
| Apply models to practice | 15/11 | 31/12 | Intermediate | 20% | ||
| Productivity | Apply Atomic Habits | No fixed deadline | Advanced | 95% | Established stable habits | |
| Personal Growth | ||||||
| Personal Growth | Write 5 analytical articles | 01/11 | 15/12 | New Beginner | 40% | Wrote 2 articles |
| Review after 1 month | Developing | — | N/A | |||
| Average Progress | Around 60–70% | |||||
| Remarks | On the right track and maintaining stability | |||||
Math#
Some inline formulas like , , .
The Standard Model Lagrangian
Nested Calculus & Matrices: This combination is used to check if radicals, nested fractions, and matrices break the layout.
Einstein Field Equations: Used to test the rendering of superscripts/subscripts (indices).
Code Blocks#
Testing different languages, formats, and edge cases.
Test highlights key-value strings, nested arrays, and null/boolean values.
{
"app_name": "MDX_Renderer",
"version": 1.0,
"features": ["syntax-highlighter", "math-jax"],
"config": {
"dark_mode": true,
"deprecated_field": null,
"max_retries": 5
}
}Test indentation and list visibility without brackets.
server:
host: "0.0.0.0"
port: 8080
routes:
- path: /api/v1
handler: main_handler
- path: /health
check: trueTest the color of keywords (SELECT, WHERE) against table names and strings.
SELECT u.id, u.username, o.total
FROM users u
JOIN orders o ON u.id = o.user_id
WHERE o.status = 'completed'
AND o.created_at > '2023-01-01'
ORDER BY o.total DESC;Test special characters like ::, &, 'a (lifetime) and macro println!.
struct User<'a> {
username: &'a str,
active: bool,
}
fn main() {
let user = User { username: "Dev", active: true };
println!("User: {}", user.username);
}Test background/text color of added line (+) and deleted line (-).
function calculateTotal(price, tax) {
- return price + price * tax;
+ return price * (1 + tax);
}Test hex color code #0f172a
.button-primary {
background-color: #0f172a;
color: rgba(255, 255, 255, 0.9);
}
.button-primary:hover {
transform: translateY(-2px);
}Custom Components#
Modern MDX lets you embed interactive stuff directly into posts — which is honestly pretty fun to play with.
Chart Demo#
Learning Experiments#
Most things only make sense after you actually try them.
This is a small log from one of those experiments — nothing fancy, just progress over time.
Small, consistent improvements add up more than we expect.
Epoch 1/5
166/166 ━━━━━━━━━━━━━━━━━━━━ 84s 415ms/step - loss: 0.1110 - val_loss: 0.0959
Epoch 2/5
166/166 ━━━━━━━━━━━━━━━━━━━━ 79s 472ms/step - loss: 0.0874 - val_loss: 0.0802
Epoch 3/5
166/166 ━━━━━━━━━━━━━━━━━━━━ 78s 463ms/step - loss: 0.0789 - val_loss: 0.0765
Epoch 4/5
166/166 ━━━━━━━━━━━━━━━━━━━━ 78s 467ms/step - loss: 0.0769 - val_loss: 0.0731
Epoch 5/5
166/166 ━━━━━━━━━━━━━━━━━━━━ 77s 464ms/step - loss: 0.0753 - val_loss: 0.0712Callouts#
Performance Notes Rendering too many components on the client can reduce FCP (First Contentful Paint).
Consider using Server Components when possible.
Deprecated The
getStaticPropsfunction will be deprecated in v15. Switch to thefetchAPI.
Important Never commit
.envfiles to GitHub.Seriously.
Closing#
This space will probably change a lot.
Hopefully, I’ll change with it.
views
— views
Nguyen Xuan Hoa
nguyenxuanhoakhtn@gmail.com