I Over-Engineered My Blog and All I Got Was This Lesson
Why I’m finally writing 10 years later using GitHub Pages instead of Django
The 2015 Plan: “I’ll Build My Own Blog!”
Me in 2015: “I’m going to build the PERFECT blog system!”
My grand vision:
- Custom Django backend ✨
- Beautiful frontend design ✨
- User authentication system ✨
- Comment management ✨
- Tag system ✨
- Search functionality ✨
- Admin dashboard ✨
- RSS feed generator ✨
- SEO optimization ✨
- Image upload system ✨
Time allocated for building: 6 months
Time allocated for writing: “After it’s done!”
What Actually Happened
Month 1-2: Database Design
class Article(models.Model):
title = models.CharField(max_length=200)
content = models.TextField()
author = models.ForeignKey(User, on_delete=models.CASCADE)
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
tags = models.ManyToManyField(Tag)
category = models.ForeignKey(Category)
# ... 50 more lines of "perfect" schema
Articles written: 0
Month 3: Authentication Hell
# Spent weeks on:
- User registration
- Email verification
- Password reset
- Social login (never finished)
- Session management
- CSRF protection
Articles written: Still 0
Month 4: Frontend Struggles
// Learning:
- jQuery (it was 2015!)
- Bootstrap customization
- Responsive design
- Cross-browser compatibility
- Image optimization
Articles written: You guessed it, 0
Month 5-6: “Almost Done!”
# Still working on:
- Comment spam prevention
- Markdown rendering
- Syntax highlighting
- SEO meta tags
- Sitemap generation
- Cache optimization
Articles written: ZERO 😭
The Final Result
After 6 months:
- ✅ Learned Django
- ✅ Learned web development
- ✅ Learned frontend basics
- ✅ Learned deployment
- ❌ Wrote ZERO articles
- ❌ Had ZERO readers
- ❌ Achieved ZERO of original goal
Fast Forward to 2025
My colleague last week: “You’re starting a blog? Why don’t you use Django?”
Me: “ABSOLUTELY NOT.”
Colleague: “But you know Django!”
Me: “EXACTLY WHY I’M NOT USING IT.”
The 2025 Plan: Keep It Stupid Simple
My new tech stack:
Platform: GitHub Pages
Generator: Jekyll
Theme: Minima (default)
Customization: None (yet)
Time to setup: 1 hour
Time to first post: Same day
What I Learned After 10 Years
Lesson 1: The Best Blog System is The One You Actually Write On
2015 me: “I need the perfect system before I can write!”
2025 me: “I need to write. The system doesn’t matter.”
Lesson 2: Building ≠ Blogging
Building a blog system:
- Feels productive
- Is actually procrastination
- Teaches tech skills
- Produces zero content
Actually blogging:
- Feels scary
- Is actually productive
- Teaches writing skills
- Produces real value
Lesson 3: “I’ll Write After I Build” is a Lie
The truth: Building becomes the goal. Writing becomes “later.” Later never comes.
What actually works: Write first. Build if needed. (Spoiler: It’s never needed.)
Lesson 4: Your Readers Don’t Care About Your Stack
What readers want:
- Good content
- Clear writing
- Useful insights
What readers don’t care about:
- Whether you built it yourself
- What framework you used
- How “custom” your design is
- Your deployment pipeline
Lesson 5: Done > Perfect
2015: “I can’t publish until everything is perfect!”
2025: “I’ll publish and fix typos later.”
Result:
- 2015: 0 articles, perfect system
- 2025: 5 articles in one week, default theme
Which one is more valuable? 🤔
The Comparison
| 2015 Custom Blog | 2025 GitHub Pages |
|---|---|
| 6 months to build | 1 hour to setup |
| 0 articles written | 5 articles in one week |
| Perfect custom design | Default Minima theme |
| Complex deployment | git push |
| Database to maintain | Static files, zero db |
| Server costs | $0 (free) |
| SSL certificate hassle | Automatic HTTPS |
| “I’ll write soon!” | Actually writing |
| Felt like accomplishment | Actually accomplished |
What I Would Tell 2015 Me
Dear Past Me,
Stop.
Just stop building.
Use WordPress. Use Medium. Use Blogger. Use literally anything that lets you write TODAY.
The blog system is NOT the product. The writing is the product.
You’re going to spend 6 months building, write zero articles, and abandon the whole thing.
Then 10 years later you’ll use Jekyll and wish you had just done that from the start.
Love, 2025 Me
P.S. - You were right about one thing though: Building the blog DID teach you web development. So it wasn’t completely wasted. Just… 99% wasted.
The Happy Ending
2025:
- Set up blog: 1 hour ✅
- Write first post: Same day ✅
- Publish second post: Next day ✅
- Five posts: One week ✅
- Custom features: Zero ✅
- Regrets: None ✅
Turns out: The simplest solution was the best solution all along.
For Everyone Building “The Perfect Blog System” Right Now
Stop.
Just:
- Pick any platform (Jekyll, Hugo, Ghost, Medium, WordPress, anything)
- Use the default theme
- Write ONE post
- Publish it
- Repeat
Customize later. Build features later. Obsess over design later.
But WRITE NOW.
Because in 10 years, you won’t remember what framework you used.
You WILL remember whether you actually created something.
P.S. - Was It Really Wasted?
Honestly?
Those 6 months taught me:
- Django framework
- Frontend basics
- Deployment
- Web architecture
That knowledge shaped my technology insight.
So no, it wasn’t wasted.
But: I could have learned Django by building something people actually used. Instead of building something nobody ever saw.
The lesson: Learn by building things that SHIP. Not things that stay in “almost done” forever.
The End (Finally)
2015: Built a blog, wrote nothing
2025: Used GitHub Pages, actually writing
Moral of the story: Sometimes the best technology choice is the boring one.
Now excuse me while I go write my 6th article this week.
(On a site I set up in an hour using default Jekyll.)
🎉 THE END 🎉