Not yet, and not blindly either. Separate hating the work from hating how you are learning it. Change the method for four weeks: build something you care about, in small steps, with feedback. If you still dislike it after a fair test, choosing a different path in or around tech is a sound decision, not a failure.
What people tell me
I have been studying programming for several months, through courses and videos. I push through because it seems like a good career and everyone says tech is the future, but I dread every session. I do not feel any excitement when things work, only relief that it is over. I am scared that quitting means wasting all the time I spent, but continuing feels miserable.
A composite of the messages behind this question, with personal details left out.
Key takeaways
- Hating how you learn is very common and easy to fix. Hating the work itself is different.
- Run a fair four-week test with a different method before deciding.
- Months already spent are not a reason to continue. Judge the next year, not the last few months.
- There are many roles in and around tech that use technical knowledge without full-time coding.
- Leaving a path that does not fit you is a good decision, not a failure.
First, figure out what you actually hate
When people tell me they hate coding, it usually turns out to be one of several quite different things:
| What it feels like | What is often going on | Fixable? |
|---|---|---|
| Endless videos and exercises feel pointless | Learning with no project you care about | Yes, easily |
| I feel stupid every session | Material is too far above your level | Yes |
| I never finish anything | Goals too big, no small wins | Yes |
| I am alone and stuck for hours | No feedback or community | Yes |
| I do not care whether the program works | Genuine lack of interest in the work | Maybe not |
| I only started because of pressure or salary | The motivation was never yours | Needs honest thought |
The first four are problems with the method. The last two are signals about fit. They need very different responses.
Run a fair test before deciding
Do not decide from the middle of a bad month. Change the method for four weeks and see what happens.
- Pick one small project you actually want to exist. A tool for your hobby, something for a family business, a tracker for something you care about. Not a to-do app because a course said so.
- Break it into tiny pieces. Each piece should be finishable in one or two sessions.
- Stop consuming, start building. Use documentation and AI to look things up only when stuck.
- Get feedback. Show it to someone, join a study group, or ask a more experienced friend to look at it.
- Keep a short journal. After each session, write one line: how did it feel, and was there a moment you enjoyed?
At the end, read the journal. If there were moments of real satisfaction, even small ones, the problem was probably how you were learning. If it was dread from start to finish, that is important information.
The sunk cost trap
You mentioned being scared that quitting wastes the months you have already spent. That time is gone whichever choice you make. The only question worth asking is: what do I want the next year to look like? Continuing something you hate for years to justify a few months is a much bigger waste.
Also, very little of what you learned is wasted. Understanding how software works is useful in almost any modern job.
Paths that use tech without full-time coding
If the test shows you dislike writing code but you still like technology, there are good careers nearby:
- Product management: deciding what to build and why.
- Quality assurance and testing: finding how things break, often with light scripting.
- UI and UX design: how products look and feel to users.
- Technical writing: explaining software clearly.
- Data analysis: answering questions with data, often with SQL and spreadsheets more than software engineering.
- IT support, operations, or solutions roles: working with systems and customers.
Many of these value exactly the partial technical knowledge you now have.
Whose decision is this?
Many people who write to me started coding because of family expectations, friends, or headlines about salaries. Those are understandable reasons, but they are not a foundation for a career you will do for decades. It is worth asking yourself honestly: if nobody else had an opinion, what would I choose?
If you decide to leave
Leaving is not failure. Knowing what does not suit you is valuable, and many people take years to find it out. Keep the skills you built, keep your curiosity about technology, and point your energy at something you can sustain.
An example of what the test can reveal
A situation I have seen more than once: someone spends months on generic courses, dreads every session, and is ready to quit. For the four-week test, they build a small tool to track stock for a relative's shop. Suddenly they are staying up late, not because they have to, but because they want to see the report working. The course material was the problem, not programming.
I have also seen the opposite. Someone builds a project they chose themselves, finishes it, and still feels nothing. They realise they enjoyed planning the features and talking to the people who would use it far more than the coding. They move towards product work and are much happier. Both outcomes were good. Both came from testing instead of guessing.
A self-check at the end of four weeks
Answer these honestly:
- Was there at least one session where I lost track of time?
- Did I ever think about my project when I was not working on it?
- When something worked, did I want to show someone?
- Did the dread get smaller, stay the same, or get bigger?
Mostly yes and a shrinking dread: keep going, with the new method. Mostly no and a growing dread: it is time to look seriously at the neighbouring paths.
If you are still stuck
Read What to Do When You Are Stuck Learning to Code and browse other people's questions in the career questions library. If you want to talk your options through with someone, join Sefism and, as a member, book a 1:1 session.
Was this answer helpful?
Read next
- What to Do When You Are Stuck Learning to CodeThere has never been more good material for learning to program and the failure rate has not improved, which tells you the bottleneck is not access to explanation. It is that watching someone else solve a problem feels exactly like learning and is not. Sixteen heuristics for the first year, mostly about what to do at the point where you are stuck.
- How to Start Your Career as a Software EngineerA practical route into the first software engineering job: pick one language and stop shopping, build things too big for a tutorial, learn the five fundamentals you cannot skip, get your code in front of a human, and apply earlier than you feel ready. Includes a twelve month shape to work to and an honest read on what the current entry level market has changed.
Your situation is not quite this one?
Members get written answers to their own questions, a roadmap built for them and feedback on their projects. Early access is open to X and Instagram followers and university students. Prefer to talk? A free call works too.