Web DevelopmentBeginnersPractical Tips

Mistakes I Made as a Beginner (And Still See in Others)

Filip Geratović · 2026-03-25 · Request a quote

When I started learning web development, I thought the problem was just not knowing enough syntax. Years later I realize: syntax is the easy part. Knowing what not to do is harder.

Greške koje sam i ja pravio na početku (i koje i dalje vidim kod drugih)

This isn't a generic "top 10 mistakes" list. These are specific things I did, where I got stuck, and what I'd tell my past self.

1. Tutorial hell

I spent months watching courses. React, Next.js, Tailwind. Felt productive because I was "learning."

Problem: I wasn't building anything real. Every tutorial covers a perfect scenario. Real clients say: "I need a form that sends data to email AND Google Sheets AND notifies my phone." Tutorials don't prepare you for that.

What changed: I stopped taking new courses until I finished one small but complete project - design to deploy.

2. Copying code without understanding

I have an old project with a useEffect that works - but I don't know exactly why. Every time I need to change it, I'm afraid to touch it.

My rule now: If I copy something, I must be able to explain what it does. If I can't - it doesn't stay in production.

3. "I'll build everything from scratch" syndrome

I refused ready-made components because I thought a "real programmer" writes everything alone. Spent two days on a custom dropdown that works worse than a free Radix UI component.

4. Ignoring mobile until the last day

"Desktop first, mobile later." Mobile was never "later" - it was a panicked Friday at 11 PM before delivery.

5. Not asking enough questions upfront

Client says "I need a website" - I start working, and after two weeks it turns out they wanted a blog, English version, and invoice system integration.

I didn't ask. I assumed. And paid with time.

Greške koje sam i ja pravio na početku (i koje i dalje vidim kod drugih)

6. Promising deadlines from enthusiasm

"I'll be done by the weekend!" I wasn't. Not even close.

Now I impress with realism: "For this scope, I need 10-14 working days." And deliver in 12.

7. Not using Git properly

Commits named "final", "final2", "final really". Branching I don't understand.

Git isn't optional. Git is insurance.

8. Perfectionism over delivery

I can polish a button animation for an hour. The client doesn't see the difference. They paid for a site that works and brings inquiries.

9. Not saving energy for communication

Half of project problems come from poor communication. A short message "Here's where we are, tomorrow I work on X, done Friday" changes everything.

10. Comparing myself to developers with 10 years of experience

Everyone started with bad code. The difference is they kept going.

Contact me for a free consultation →