How I Learned to Code Well Enough to Get Paid in 6 Months
Not a bootcamp grad story. Not a CS degree story. Just a regular person who wanted to change careers.
Where I Started (Month 0)
Background: Non-technical job, no coding experience, 30+ years old.
Motivation: Saw a friend's salary after switching to tech. Got jealous. Got curious.
Starting point: Zero. Couldn't tell HTML from Python from SQL.
The Plan That Actually Worked
Month 1: The Foundation (2-3 hours/day)
Week 1-2: HTML & CSS
- FreeCodeCamp's Responsive Web Design certification
- Built a personal portfolio page (ugly but mine)
- Key insight: CSS is harder than it looks
Week 3-4: JavaScript Basics
- JavaScript.info (free, excellent)
- Built a to-do app, a calculator, a simple game
- Key insight: Variables, loops, and if-statements are 90% of programming
What I did wrong: Tried to learn too many things at once. Picked up React while still struggling with this keyword.
What worked: One resource at a time. Finish before moving on.
Month 2: Building Things (3-4 hours/day)
The rule: Build something every week. Even if it's small.
| Week | Project | What I Learned |
|---|---|---|
| 1 | Weather app with API | fetch(), async/await, JSON |
| 2 | Pomodoro timer | DOM manipulation, setInterval |
| 3 | Markdown editor | string processing, file handling |
| 4 | Expense tracker | localStorage, CRUD operations |
Key insight: You don't learn by reading. You learn by breaking things and fixing them.
Month 3: The Deep Dive (4+ hours/day)
JavaScript Mastery:
- Closures finally clicked (watched a specific YouTube video ~5 times)
- Promises made sense (drew diagrams on paper)
- Understood the event loop (this changed everything)
Node.js & Express:
- Built my first real backend API
- Deployed to Railway (free tier)
- Felt like a wizard when someone else visited my URL
Git:
- Committed everything locally for weeks before pushing
- Finally learned branches when I needed to work on two features
- Made my first GitHub commit — hands were shaking
Month 4: First "Real" Projects
Project 1: A tool that solved MY problem
- I needed to track prices of products I wanted to buy
- Built a scraper + email notifier
- Used it daily → showed it to friends → they wanted it too
- First realization: Other people have the same problems
Project 2: A freelance website
- Simple site with contact form
- Uploaded to Netlify (free)
- Sent the link to everyone I knew
- Got zero clients. But learned about SEO, marketing, and positioning.
Month 5: First Money ($50)
How it happened:
- Posted on Reddit about my price tracker
- Someone asked if I could build something similar for their use case
- Said yes (terrified)
- Charged $50 because I didn't think I was worth more
- Delivered in 3 days
- They paid. I almost cried.
What I did right:
- Showed what I could build (not just talked about it)
- Started with a small project (low risk for both sides)
- Delivered more than promised (added extra feature)
What I did wrong:
- Charged way too little ($50 for 15 hours = $3.33/hr)
- No contract, no deposit, no scope document
- Lucky it went well
Month 6: Getting Serious
Income this month: $840
Sources:
- 2 small freelance projects ($400 total)
- 1 referral from first client ($250)
- Started writing technical articles ($190 from affiliate links)
What changed:
- Raised rate to $40/hr (still low but improving)
- Created a simple contract template
- Set up proper invoicing
- Built a portfolio site with actual projects
The Resources That Mattered Most
Free (Used Daily)
| Resource | For What | Cost |
|---|---|---|
| FreeCodeCamp | Learning basics | Free |
| JavaScript.info | JS deep dive | Free |
| MDN Web Docs | Reference | Free |
| Stack Overflow | When stuck | Free |
| GitHub | Portfolio + version control | Free |
| Dev.to | Writing + networking | Free |
Paid (Worth Every Penny)
| Resource | For What | Cost |
|---|---|---|
| Domain name ($12/yr) | Professional email | $12/yr |
| VPS ($5/mo) | Hosting projects | $5/mo |
| ChatGPT Plus ($20/mo) | Learning accelerator | $20/mo |
Total investment: ~$37/month
Mistakes That Cost Me Months
1. Tutorial Hell
Spent 3 months watching tutorials without building anything.
Fix: After each tutorial concept, build something using ONLY that concept.
2. Comparison Trap
Constantly comparing myself to people with CS degrees or 10 years experience.
Fix: Compare yourself to yesterday's self, not to others.
3. Imposter Syndrome Hit Hard
Every time I got a new client: "They'll figure out I'm a fraud."
Fix: Keep building. Competence builds confidence. Fake it becomes real.
4. Ignoring Soft Skills
Thought code was all that mattered.
Fix: Communication matters MORE than code quality for freelancing.
5. Not Specializing Early
Tried to be a full-stack + mobile + data science generalist.
Fix: Pick ONE thing to be good at first. Expand later.
My Daily Routine (Month 3-6)
6:00 AM - Wake up, coffee
6:30 AM - Code session 1 (focus: learning new concepts)
9:00 AM - Day job (paid the bills)
7:00 PM - Dinner, family time
9:00 PM - Code session 2 (focus: building projects)
11:30 PM - Read technical articles, plan next day
12:00 AM - Sleep
~3 hours/day on weekdays, 6-8 hours/day on weekends.
If I Could Start Over
- Start with Git on Day 1, not month 3
- Build in public from day 1 — blog, tweet, share progress
- Charge more earlier — imposter syndrome cost me thousands
- Join communities sooner — Discord servers, local meetups, Twitter
- Read other people's code — best way to learn patterns
Where I Am Now (18 Months Later)
- Income: $4,000-$6,000/month (freelance + content)
- Skills: Node.js, TypeScript, React, Python, Docker
- Clients: 5 recurring, 10 one-off
- Confidence: Still grows every month
- Still learning: Always will be
Advice for Wherever You Are
Just starting:
- Pick ONE language. Stick with it for 3 months minimum.
- Build something every week, no matter how small.
- Don't pay for courses yet. Free resources are abundant.
3 months in, feeling stuck:
- This is normal. The "intermediate plateau" is real.
- Build a COMPLETE project (not another tutorial).
- Show it to people. Get feedback. Iterate.
6 months in, ready for money:
- Start with small gigs ($100-500).
- Use your projects as portfolio proof.
- Charge confidently (you're worth more than you think).
1 year+, looking to level up:
- Specialize deeper in your niche.
- Build systems, not just code.
- Teach what you know (articles, videos, mentoring).
Where are you on your coding journey? Drop a comment — let's help each other.
Follow @armorbreak for more honest developer stories.





















