DEV Community


When programming was no longer fun

Carl Hembrough
・4 min read

I loved programming. I loved being able to create something out of nothing. Solving the puzzle of the program and seeing it come to life. Constantly learning new things while hours flew by, and better yet I was paid for it.

I went to one of the best universities in the country for computer science. I cruised into my first job after a successful summer placement. I loved my work and I did well. I moved from a junior position to senior position and was recognised for my hard work and contributions.

Somewhere along the line it stopped being fun. Suddenly I hated going to work. Every day I battled with a growing anxiety that would not go away.

What happened?

  • I started comparing myself to other people that were better than me.
  • I started to fear doing things wrong and being a failure.
  • I started to fear not knowing enough and constantly tried to learn everything.
  • I started to feel a crushing weight of responsibility for my job, partner, children, mortgage, and bills
  • I started to fear that I would be exposed as a fake.

What I did not realise then is that I was facing a severe case of impostor syndrome.

Instead of enjoying my work I would constantly be worried that I did not know enough, and that I was not doing enough. That I was not providing enough value. I forgot about my accomplishments and emphasised any mistake I made as a complete failure. I started to seek perfection in a world where it's impossible. Not only did I seek perfection but I expected it of everyone else. It was a recipe for stress and unhappiness.

I remember doing demos of my work in the past. I was confident and happy to do them in front of a number of people. Suddenly I dreaded them. I would become so nervous my voice would tremble as I tried to talk. My thinking was clouded by the dread of saying something stupid, and what others would think of me.

The crushing anxiety was preventing me from enjoying my work and doing well. It was taking its toll on my health. I would feel drained of energy and not sleep well. It was putting strain on my family and relationships. It felt like a ticking time bomb.

It has been stated that up to 70% of people experience impostor syndrome. The trouble is you feel like you're the only one, as you're not aware of anyone else going through it. There is a good chance that one of your co-workers is experiencing it right now, but it may not be obvious that something is wrong. It can manifest itself in different ways, and people are good at covering things up especially in a professional environment.

Some points for anyone experiencing it

  • Recognise what you do know. It's more than you think.
  • Recognise what you have accomplished. You earned it.
  • Take a compliment when you get one. You deserve it.
  • Compare yourself only to yourself.
  • Realise that nobody really knows what they are doing. Everyone is on a learning journey.
  • It's OK to not know everything. Software development is too vast and moves too quickly to know everything.
  • Usually you know just as much as others but in different areas.
  • Teach others, it will help you realise how much you do know.
  • It's OK to fail. In fact it's a necessary and important part of life. Learn from it.
  • It's OK to be wrong. Be open to feedback.
  • You will forget things over time. Go back over things you have not used recently.
  • There will be egos in the workplace that talk down others. Ignore them.
  • Not everything you produce needs to be perfect. Software development is (as is life) about incremental improvements. You are not that piece of code that you put together in a few hours and needs improving.

Assume that everyone else has impostor syndrome. Tell someone when they have done something good. Tell them what they are good at. Tell them it's OK if something goes wrong they did a great job. A small comment can go a long way. Having a team of people doing this for each other will foster a healthy environment. We are all human beings and everyone has fears and doubts. Everyone has problems and hardships they are facing outside of work. This idea often gets lost in the veil of professionalism, and we become ever more disconnected. Once we realise and appreciate this we can move towards a more personal and connected workplace.

I am not sure that the feeling of impostor syndrome will ever completely go away. Though it has faded since understanding and recognising it. Knowing that many others experience it, and that it's quite normal also helps. I am happy to say that I am getting back to a place where programming is fun.

Understand that it can hit you at any time. It may be when you're just getting started in programming, or it may be when you have been doing it for 10 years. It may be when you have a newborn baby at home. It may be when you get made redundant and flunk an interview.

What is most important is an awareness of it. Take it seriously. When it does come knocking you can recognise it and work on it instead of letting it consume you. Connect with people and help them to prevent feeling like an impostor. Hopefully you will get the same in return. Lets work to ensure that programming is always enjoyable.

Discussion (67)

taggervng profile image
tag hatle

Assume that everyone else has impostor syndrome.

This is great advice and a great reminder to look outside ourselves. Anxiety and imposter syndrome can make us too focused on ourselves, I've definitely experienced that! When I go out of my way to do what you mentioned, complimenting people on their work or encouraging them, I benefit too and feel encouraged myself. We need to connect with the people around us and remembering to do that can be a challenge.

carlhembrough profile image
Carl Hembrough Author

Thanks for your comment. I agree it can be a challenge to think of others when you are struggling yourself.

ben profile image
Ben Halpern

Usually you know just as much as others but in different areas.

Yep. Great point, as are the rest. Nobody is universally skilled or unskilled. We all bring valuable knowledge, background, perspective, and talent.

bigos profile image
Jacek Podkanski

yes, but we do not seem to know what the management wants and thus we are a genuine impostors

carlhembrough profile image
Carl Hembrough Author

Thanks Ben :)

le_newtype profile image
Nicholas ―M―

I've actually been struggling with this a lot myself for almost a year now, but it's only been recently that I've started to identify the problem to try to fix it. I truly hate waking up every day and thinking "Is today the day everyone figures out I'm awful at everything?," even though 99.99999% of the negativity I face professionally is self-generated.

This was a great read and something I definitely needed to see. Thank you!

carlhembrough profile image
Carl Hembrough Author

Thanks for your reply. I am glad you liked it :)

hawicaesar profile image
HawiCaesar • Edited

It's OK to fail. In fact it's a necessary and important part of life. Learn from it.

Very important, as Dev's we have days where we fail but we come back stronger. When you lose don't lose the lesson.

I love this post. I feel you have shared a rather sensitive side a lot of people shy away from. Talking about it does help and we also need to connect with those around us.

codemouse92 profile image
Jason C. McDonald

Excellent article! Although I also write and speak on this topic, this is a constant struggle for me too, especially as I just released a whole bunch of code. I find myself worrying that was I wrote isn't good enough, isn't clever enough (or is too clever?), isn't useful enough, etc. This reminder couldn't have been more timely. Thank you!

rachbreeze profile image
Rachel Breeze

Thank you for this article. Imposter syndrome is something that does hit us all, and working in a great and safe team which reminds you of your knowledge and helps you fill in the gaps is part of combating that. We have a "cheers" slack channel at work where we recognise the value each of us bring to the team.

Also run team meetings as a team building/ brainstorming session that helps stop one upmanship - which can lead to feelings of negativity and impostor syndrome.

This is a top tip in your article too:
"Teach others, it will help you realise how much you do know."

It is always recommend. It doesn't have to be teaching at work - eg helping out at a CoderDojo can remind you why you became a developer in the first place.

jlhcoder profile image
James Hood

Great post! I work with a lot of people suffering from this. I definitely went through a phase of self doubt as well. Ironically it was after a very large success. I put pressure on myself that my next project(s) had to be just as successful and it made me afraid to try anything at all for fear of failure.

It's still a work in progress, but for me, embracing failure was a big part of getting through it, as well as studying mindfulness and self-compassion. I wrote a blog post recently about embracing failure. Still need to post it on, but here's the link from my personal blog:

Thanks again for sharing your experience!

carlhembrough profile image
Carl Hembrough Author

Hi James - I am glad you liked it, and thanks for sharing yours.

pedrootero profile image
Pedro Otero Prada

I think I've been suffering this for a while. But it came from realizing I had not worked hard enough to stay up to date with recent developments in the industry. So I started, as described here, to compare myself with people that were more experienced, some at a younger age than mine. It helped a lot to compare with myself and realize that even though there's a lot to do, I have indeed learned more since I decided it was time to do something about my skills.

carlhembrough profile image
Carl Hembrough Author

Hi Pedro thanks for contributing. It is easy to start comparing yourself to the younger people who have fresh knowledge on a subject when yours is becoming stale. It is tough to find some balance so that you can keep up, but not let it become a problem.

dhofca profile image
Maciej Owcarz

Story of my life. Thanks for sharing.

mentzel_iudith profile image

Excellent post, and, for sure, only a person who is not an impostor by himself can think so deeply and share it with others.
As a matter of fact, the real impostors do never experience the feeling of not knowing enough, let alone that of admitting it publicly.
For starting to be worried about how much you miss to know, you should really do have to master a lot of knowledge in your own field(s).
Unfortunately, many times in life all that ones misses for knowing more is the chance of doing so. If a person has proven valuable skills in one field, he has no reason of not proving the same in many other fields ... but, usually, not the best ones are those who are given the chance of raising and developing as by what they deserve.
Career fights do matter a lot in one's chances to progress further, and mostly not in a positive and constructive way.

tuxbsd profile image
Josh Stephens

Bookmarked this for reference. I am working on a few of these. Mostly by trying to give more talks at our local python meetup and to start each day by reflecting on where I was yesterday and where I am today. Doesn't always work but it has been a good start.

Wish you the best of luck and please don't give up.

kimpastro profile image
Kim Pastro

Carl, this article warmed my soul. As I'm about to change my job to another one in a different language, I was very concerned about the "fact" that I'm not good enough in that new language and asking myself: what the new team is expecting about my skills? Thanks man.

carlhembrough profile image
Carl Hembrough Author

Hi Katie thanks for your comment. It is a good point to make that often you are comparing yourself to the public image of others. This is usually a warped view where you think they know much more than you. Especially the public face of people on the internet, as they may be well above the average standard of developer. For every one of them there is probably a thousand developers who do not have that public image and are not as good - and that is fine.

qorrect profile image
charles sanders

This hit home for me to - I have tried to start living by not comparing myself to anyone but myself, and if I can just do one litte thing to better myself, then it's a successful day.

Enjoyed the whole article, kudos.

The rest is sort of unrelated. I have fallen out of love with programming after 17years. I was in love with programming right from the start, I would go over my development books as I was taking other classes. And would code into the night breathlessly waiting to see if I could fix that bug or come up with a feature I wanted.

I'm not sure when it happen, slowly over 2 years. But the things that used to excite me, no longer thrill me anymore, so I decided to make a change.

And that change, to move into a data science or machine learning roll, has been one of the greatest times I can remember in a really long time. Now there are awesome new things to learn, a lot of math I'll need to push myself to get through.

So just my story if someone sees it - is that it also might just be time for a change.

hannah_omu profile image
Hannah Olukoye

Said as it is! Thanks for this.

nickwu007 profile image
Nick Wu

This is a great post Carl, it's something I have been struggling with for the past six months. Even though I have done a fair share of coding, over the last six months I constantly feel that I am nowhere as good as I want to be, and I am not trying hard enough. I feel like in this line of work, which bares a solitude inherently, it is crucial for one to be in a supportive community. Thank you very much for reminding me that. :)

carlhembrough profile image
Carl Hembrough Author

Hi Nick thanks for sharing. I am glad you liked the post. It is very common for developers to be introverts, which may well amplify the issue.

jalogut profile image
Juan Alonso

Thank you for sharing your story. This a great post and advice. I will denitively remember that, next time I face it. For me the syndrome gets more present the more experience I have. The more I learn, the more I feel there is still much more to learn and I will never get it. Then you have the feeling of not being good enough 😞. As you said, we need to take a break and remind ourselves all we have accomplished

carlhembrough profile image
Carl Hembrough Author

Hi Juan, and thanks for your comment. I was the same I found the more experienced I became the more I realised I do not know.

nicolasbonnici_17 profile image
Nicolas Bonnici

Remember me my first experience as a consultant in a big tech company. I just want to add an advice: we're all different but the advice is: trust on yourself, yourself as a unique human being. Never compare yourself to others, we're all different.

metalarend profile image
Bart Reunes

Thanks for the open and inspiring way of talking about this. I really think programming has a lot of ways to become dreadful when it doesn't have to be, and it's contributions and statements like this that can help all of us. Thank you!!

(Tiny sidenote, and I feel like an a-hole now, but may I ask to check the use of "your" where it should be "you're"? There's a few of them.)

carlhembrough profile image
Carl Hembrough Author

Hi Bart. Thanks for your comment. Do not feel bad I appreciate your feedback (should be fixed now!). There is always a place for constructive feedback. I certainly was not expecting my writing to be perfect. :)

sandneyfarias profile image
Sandney Farias da Cunha

The best advice to me was compare yourself only to yourself. It's the best way to remember that every day we learn something new and became better.
If there is someone in our team who knows a lot about one tecnology, we can learn with this person and share our experiences.

speedstream profile image
Aaron Santos

When I started my trainee program (6 months ago) I felt the same. Now, I'm more confident about my developments and stuff I do.
I think asking myself why I choose this carreer, what I love to do and recognizing I'm not perfect (and no one would achieve that) helped me to overcome this situation.
Also, in some moments telling myself "If he can do, I can do it too" gives me the courage to stop thinking and concentrate. It's more like auto motivating me to do the stuff.

rafhsilv profile image
Rafael Silva

I was facing this syndrome a few months ago.
I went to therapy and it helped me realize that i'm working in the wrong area.
Maybe this problem happens because you become frustrated with the IT business.

ardennl profile image
Arden de Raaij

Great read, and I think recognisable for the most of us. It's articles like this that make sure that others recognise what's happening sooner and don't get themselves in a depression or even choose another career over something we, apparently, all experience. I also think that one of the problems we face, is that it's in 'our' as developers to always look at the best available.

So we follow the best blogs on development, follow the top 1% of developers on twitter, etc.. and it always seems like these people are flawless and way more skilled.

The owner of the previous company I worked (who has a proper developing background) used to tell me that I should realise that the people I surround myself with on the internet are indeed the cream of the crop, but that doesn't take anything away from my own skills. "Stop staring so hard!" in other words..

matpk profile image
Matheus Adorni Dardenne

I still find it fun, but my boss have unrealistic expectations of me... I only work with programming for one year and a half, and yet he expects me to be able to do everything alone; develop, design, engineer, configure, deploy, create an app for Android and iOS and everything is "due tomorrow"... Hence I'm working up to 3am everyday (even at this January 1st) when I have to get up at 6am to go to work...

And when I can't figure something out (for example I simply can't figure out how to compile a React Native app for iOS, because the steps in the documentation gives errors, Google is of no help and I never used a Mac in my life, yet I had two days to make the app, which is now due), he makes sure to let me know how much I am disappointing and how much I cost...

Being the only developer of the company is not helping either, since they "can't afford" to let me take my vacation.

A few more weeks of this and I'm loosing it...

jprime81 profile image

Thank you for this article. This is very enlightening. I can relate to what you've gone through -- those days when you just don't like going to work because of anxiety is a tough one. Again, thank you!

themoah profile image

wow. This is gold. You just took my thought and wrote them down. Thank you !

ronnieliew profile image
Ronnie Liew

Thanks for sharing this — I think it's a topic/area that is important but yet the community rarely talks about.

mariorez profile image
Mario Rezende

Great article, thank you 👍

wajeehu profile image
Wajeeh Ullah

This was a great read and i have faced this problem for so long. I have worked as a software engineer/developer for 12 years now but there are a few things that i have noticed that i would want to share. I have figured out in this time that i am not a genius or a super human but then there are people who are born with that ability which is so unfair considering the amount of effort i put daily to write solutions for problems/issues i face. there are people/devs out there who work on niche topics like AI, machine learning systems that help in self driving autonomous vehicles. Dont you think we should compare our selves to them and try to out smart them by putting in more effort? then we are restricted by human factors such as relationships, family and getting tired.

joeymink profile image
Joey Mink

I've done this to myself, had no idea it was a common thing (or even had a name). Thanks for this post!

alexroan profile image
Alex Roan

Reading the first few paragraphs was like reading my own mind, you're not alone in feeling this way!