For example, say you code the same type of C# every day. Or worse, say you've found your way onto a team with developers who don't know the language and certainly don't know how to do anything but write in that very basic C++ style that you learn in programming 101. At that point there's no point for you to improve because it doesn't matter what you know.<p>Another example is how you often times have to spend all day working. After sitting still in a chair being torture forced to figure out someone elses astonishing code for 8 hours I don't want to go home and sit in a chair and code. I want to join the local fight club.<p>Another example is it's incredibly aggravating to me when I know all about a subject for some reason (perhaps learning about it off work or at a previous job). By chance this subject comes up at work and I try to steer the team the right way but quickly discover how little my expertise matters in a room full of ignorant decision makers.<p>Have you ever noticed that being employed as a programmer actually caused you to become a worse programmer? Do you have examples of your own?
Yes in regards to the first two examples. The third seems to confirm that you're really not enjoying where you're working!<p>I've definitely experienced a slowdown in my continued learning of development by working in a company dealing with niche languages & legacy systems. That knowledge is useless to me now. However there was learning & development in other areas, so whilst my coding skills suffered, other skills improved and I became a decision-maker, team lead and useful enough to a client that I was hired by them for a significant pay rise. But I definitely should have left earlier than I did and spent more of my free time practising the coding skills I was neglecting.<p>But as you say, after a full day of coding it can be hard to find the motivation and mental energy for more coding & learning. We do benefit from variety in our lives, so usually there is less time than we'd like for everything in our lives. Now that I almost never code during the workday I really enjoy the times that I do code at work, or on side projects in the evening.<p>Your last point, about being ignored, is a mix of having the soft skills to steer people to your view and working in a company where that's a normal process. If decision-makers don't want to listen then no amount of persuasion will get them there. For other situations, it tends to be about framing or finding a path for people to come to their own conclusion, such as proof of concepts, pair research, etc... Assumptions of expertise and ignorance tend not to be helpful. I've learnt a lot in my time from working to understand why people think a solution isn't right.